android - sirve - tesis sobre youtube pdf
El grupo de conexiones no ha podido otorgar una conexión al hilo (4)
Estoy usando GreenDAO para el manejo de bases de datos en Android. Al realizar muchos cambios en la base de datos (> 15.000) recibo este mensaje de error:
La agrupación de conexiones para la base de datos ''/ data / data / ...'' no pudo otorgar una conexión al hilo 312 (Thread-312) con indicadores 0x1 durante 30.000002 segundos.
Todo se atasca. ¿Por qué ocurre este error?
Me sucedió mientras ejecutaba la siguiente consulta en Android 4
select T.Col1
from Table1 as T
where T.id= (
select ifnull(max(x.id),0)
from Table1 as x
where x.col2=T.col2
);
No tengo ni idea de por qué sucedió eso. Sin embargo, pruebo la consulta con el navegador SQL y funciona.
No puedo decir con certeza sobre esta implementación en particular, pero generalmente hay un grupo de conexiones que respalda un ORM. El grupo de conexiones abre un número establecido de conexiones a la base de datos y las recicla a medida que las cierra y abre nuevas conexiones. Lo que te dice ese error es que probablemente alcanzó un límite. Esto puede suceder por una gran variedad de razones, una es que posiblemente haya un punto muerto en la base de datos porque está actualizando dos tablas y dos transacciones diferentes están sosteniendo diferentes tablas en espera de que se libere la otra. O simplemente que hay demasiadas conexiones abiertas y la base de datos o el conjunto de conexiones simplemente se confunde.
Lo siento, no es realmente una respuesta, pero tendrá que consultar los documentos de GreenDAO para ver cómo puede suceder esto.
Recibí este mensaje al crear demasiadas conexiones a SQLite a través de DBFlow FlowQueryList. Mi solución fue asegurarse de que una vez que haya terminado con la lista de consultas para llamar a endTransactionAndNotify()
y luego close()
en la lista de consultas.
Llamar a endTransactionAndNotify()
solo no funcionó. Espero que esto ayude, este hilo sin duda me ayudó.
Recibí este mensaje cuando quiero seleccionar una consulta en una tabla que se usa antes en una transacción sin transacción finalizada. Problema resuelto después de ejecutar endTransaction()
en finalmente el bloque de transacción.