Solución Confirmada / locking-funciones-acceso-deadlock
Deadlock debido a locking en funciones de acceso concurrente
Diagnóstico del error
Si tienes funciones que acceden a datos en paralelo y no controlan adecuadamente los bloqueos, puede generarse un deadlock abierto donde ambas funciones intentan acceder a claves primarias que se bloquean entre sí.
Fix Sugerido
Utilizar recomendaciones de `READPAST` para ignorar filas bloqueadas durante lecturas o reestructurar el acceso a datos:
```sql
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
BEGIN TRANSACTION;
SELECT * FROM Ordenes WITH (READPAST);
UPDATE Ordenes SET estado = 'procesado' WHERE id = @OrderId;
COMMIT;
```