[pyar] Problema con sqlite3 y concurrencia
Ing. Alfonso Palomares
alfpalomares en gmail.com
Vie Ago 25 11:32:54 ART 2017
Hola!
por un lado, sqlite no maneja bien los niveles de bloqueo (db, tabla,
registro, etc) por lo que la primer solución y definitiva sería cambiar de
motor de BDD. Ejemplo usar postgresql.
Luego, siempre deberías abrir y cerrar las conexiones, para liberar
recursos, no dejarlas abiertas.
El problema que te ocurre con muchos registros es que al bloquear la tabla,
sqlite, tarda más tiempo que cuando son pocos, por ende empieza a trabar la
concurrencia.
saludos!
<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
Libre
de virus. www.avg.com
<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
El 25 de agosto de 2017, 11:20, German Jimenez <germanjimenez84 en gmail.com>
escribió:
> Buenas gente, tengo una aplicación tipo crud de escritorio *python3.4*
> con *pyqt4 *y *sqlite3*. La app funciona bien pero luego de una cierta
> cantidad de registros a la db (mas de 200 en cada tabla mas o menos) me
> lanza el error *sqlite operational database is locked.*
>
> Ahora bien, se que este error es porque tengo varios procesos que tratan
> de modificar la db, conexiones QtSql por un lado ya que es útil modificar
> registros desde las tableviews y un orm por otro.
>
> El error lo solucioné medio "harcodeadamente" cerrando las conexiones
> QtSql antes de usar usar mi modelo y luego abriendo las mismas después.
>
> Ahora bien, ¿alguien tendrá alguna pista de porqué ocurre este error con
> muchos registros y con pocos no?.
>
> _______________________________________________
> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
> Sitio web: http://www.python.org.ar/
>
> Para administrar la lista (o desuscribirse) entrar a
> http://listas.python.org.ar/listinfo/pyar
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20170825/b106352b/attachment.html>
Más información sobre la lista de distribución pyar