-
Type:
New Feature
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: PALite
-
None
-
Storage Engines - Foundations
-
None
-
None
Problem:
In order to test leader-follower switch mode, two processes of test/format need to run concurrently against the same storage directory.
PALite does not currently support multiple processes accessing the same database files. While SQLite supports this use case, it allows only one writer at a time. In absence of a proper locking mechanism between multiple processes at PALite level, multiple writers will conflict and fail with SQLITE_BUSY error.
TO DO:
Implement synchronisation mechanism between instances of PALite running in separate processes. Only one writer at a time should be allowed for given storage location.
When there is writing in progress, other processes should block and wait for the access instead of failing with SQLITE_BUSY error.