codenotary / immudb

immudb - immutable database based on zero trust, SQL/Key-Value/Document model, tamperproof, data change history
https://immudb.io
Other
8.54k stars 341 forks source link

chore(embedded/store): lock-free WaitForTx and WaitForIndexingUpto implementation #1916

Open arturmelanchyk opened 6 months ago

arturmelanchyk commented 6 months ago

Using atomic is lock-free and in this specific case roughly ~50% faster than using mutex

arturmelanchyk commented 6 months ago

Hi @tomekkolo @SimoneLazzaris could you guys please take a look into this?

SimoneLazzaris commented 6 months ago

Looks good to me

arturmelanchyk commented 6 months ago

Hi @SimoneLazzaris I have updated the code to be able to compile with golang 1.17, workflow now should be able to run

arturmelanchyk commented 6 months ago

Hi guys, unfortunately build fails to some coveralls error, not related to the code

bad response status from coveralls: 422
{"message":"Couldn't find a repository matching this job.","error":true}

@tomekkolo @SimoneLazzaris

tomekkolo commented 5 months ago

@arturmelanchyk , please sign commits with GPG

arturmelanchyk commented 5 months ago

Ok, reabased onto latest master and signed commits with GPG. However, coveralls step still fails 🤔

arturmelanchyk commented 5 months ago

Just a kind reminder @tomekkolo @SimoneLazzaris , branch has been rebased onto latest master and all commits signed with GPG

tomekkolo commented 5 months ago

looked once more, can you provide a benchmark showing the improvement and also using 64 bit is not needed here.