Hi all, sorry but I'm new with SQLite. I have tried to find an answer to the following question but unfortunatelly I did't yet found it within the previous discussions. In details my question is the following:
Scenario: - platform: Linux ARM machine; - application development language: C++; - three different applications (A, B, C) try to write some data on an SQLite database in sequence (almost contemporaneously); - the sqlite_busy_timeout API has been invoked and has been set a timeout equals to 5 seconds; - if the write operations are quick (require less than 5 seconds to be completed), at the beginning the application A will start to write data into the database, while the applications B and C will wait; - as soon as the application A will finish, the application B should start and then at the end the application C should start to write on the database. This is the expected behaviour. But instead by doing some tests it seems to me that the requests order is not always respected. Is it possible to have more details about the requests queue management? Which is the algorithmn adopted? Please could you confirm me if the only way to be sure that the requests order is always respected is to implement a queue and a scheduler right? Thanks a lot in advance. Best regards, Simona