Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

traceback with sqlite under load

Abierto
#16 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
python, sqlalchemy, sqlite

Línea de trabajo

Start by reproducing the SQLite lock under load and trace the path through resallocserver/manager.py, especially _loop() and _assign_tickets() around the qticket.new() query shown in the traceback. Inspect the related SQLAlchemy execution path and confirm that the manager no longer raises a database-is-locked traceback during sustained load.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Jun 05 03:02:04 copr-be.cloud.fedoraproject.org resalloc-server[19997]: 127.0.0.1 - - [05/Jun/2019 03:02:03] "POST /RPC2 HTTP/1.1" 200 -
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]: Traceback (most recent call last):
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/engine/base.py", line 1236, in _execute_context
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     cursor, statement, parameters, context
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/engine/default.py", line 536, in do_execute
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     cursor.execute(statement, parameters)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]: sqlite3.OperationalError: database is locked
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]: The above exception was the direct cause of the following exception:
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]: Traceback (most recent call last):
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/bin/resalloc-server", line 136, in <module>
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     Manager(sync).run()
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib/python3.6/site-packages/resallocserver/manager.py", line 483, in run
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     self._loop()
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib/python3.6/site-packages/resallocserver/manager.py", line 464, in _loop
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     self._assign_tickets()
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib/python3.6/site-packages/resallocserver/manager.py", line 440, in _assign_tickets
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     tickets = [x.id for x in qticket.new().order_by(models.Ticket.id).all()]
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/query.py", line 2925, in all
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     return list(self)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/query.py", line 3081, in __iter__
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     return self._execute_and_instances(context)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/orm/query.py", line 3106, in _execute_and_instances
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     result = conn.execute(querycontext.statement, self._params)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/engine/base.py", line 980, in execute
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     return meth(self, multiparams, params)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/sql/elements.py", line 273, in _execute_on_connection
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     return connection._execute_clauseelement(self, multiparams, params)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/engine/base.py", line 1099, in _execute_clauseelement
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     distilled_params,
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/engine/base.py", line 1240, in _execute_context
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     e, statement, parameters, cursor, context
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/engine/base.py", line 1458, in _handle_dbapi_exception
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     util.raise_from_cause(sqlalchemy_exception, exc_info)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/util/compat.py", line 296, in raise_from_cause
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     reraise(type(exception), exception, tb=exc_tb, cause=cause)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/util/compat.py", line 276, in reraise
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     raise value.with_traceback(tb)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/engine/base.py", line 1236, in _execute_context
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     cursor, statement, parameters, context
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:   File "/usr/lib64/python3.6/site-packages/sqlalchemy/engine/default.py", line 536, in do_execute
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]:     cursor.execute(statement, parameters)
Jun 05 03:02:14 copr-be.cloud.fedoraproject.org resalloc-server[19997]: sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT tickets.id AS tickets_id, tickets.resource_id AS tickets_resource_id, t>
Lenguaje dominante
Python
Estrellas
11
Forks
8
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de praiskup/resalloc

Todos los issues de praiskup/resalloc

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.