mirror of
https://github.com/GothenburgBitFactory/taskchampion-sync-server.git
synced 2026-04-06 09:40:43 +00:00
Make storage transactions specific to a client_id (#67)
Transactions for different client_ids cannot interfere with one another, so this provides an opportunity for the sort of concurrency that a mult-client hosting solution might need. For example, a postgres backend could lock the client row in each transaction.
This commit is contained in:
committed by
GitHub
parent
4029c03479
commit
1828a31a24
@ -70,9 +70,9 @@ mod test {
|
||||
|
||||
// set up the storage contents..
|
||||
{
|
||||
let mut txn = storage.txn().unwrap();
|
||||
txn.new_client(client_id, version_id).unwrap();
|
||||
txn.add_version(client_id, version_id, NIL_VERSION_ID, vec![])?;
|
||||
let mut txn = storage.txn(client_id).unwrap();
|
||||
txn.new_client(version_id).unwrap();
|
||||
txn.add_version(version_id, NIL_VERSION_ID, vec![])?;
|
||||
txn.commit()?;
|
||||
}
|
||||
|
||||
@ -114,8 +114,8 @@ mod test {
|
||||
|
||||
// set up the storage contents..
|
||||
{
|
||||
let mut txn = storage.txn().unwrap();
|
||||
txn.new_client(client_id, NIL_VERSION_ID).unwrap();
|
||||
let mut txn = storage.txn(client_id).unwrap();
|
||||
txn.new_client(NIL_VERSION_ID).unwrap();
|
||||
txn.commit().unwrap();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user