Opened 9 years ago

Closed 9 years ago

#970 closed defect (fixed)

select query while inserting data bug

Reported by: Dimitar Misev Owned by: Dimitar Misev
Priority: major Milestone: 9.1.x
Component: reladminif Version: development
Keywords: Cc: Peter Baumann
Complexity: Medium

Description

If a select query is executed while ingesting data, the ingestion fails with a database error (SQLite backend).

Change History (5)

comment:1 by Dimitar Misev, 9 years ago

This happens because the SQLite database is locked by another process, and unfortunately it doesn't queue concurrent queries from multiple processes (this only works for threads).

I submit a patch that sets a timeout of 60 seconds, internally SQLite retries the query with exponential backoff until it's either unlocked from other processes or 60 seconds pass.

comment:2 by Dimitar Misev, 9 years ago

Cc: Peter Baumann added

comment:3 by Peter Baumann, 9 years ago

so after timeout the requesting rasserver will get informed and throw an exception? I am not familiar enough to understand how an application would get feedback on a failed db update.

comment:4 by Dimitar Misev, 9 years ago

Yes exactly, it will just return after the timeout saying "database is locked".

comment:5 by Dimitar Misev, 9 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.