IntelLabs / pmgd

Persistent Memory Graph Database
MIT License
43 stars 9 forks source link

Concurrency with msync #5

Closed vishakha041 closed 6 years ago

vishakha041 commented 6 years ago

I noticed a lot of merge-commit errors when rebasing concurrency on the persistence branch. So I did the rebase already and this branch is a result. However, this has a bug with multi-threading. The data structure used to maintain page list for msync is not thread safe. So while all commits compile and single threaded tests pass, the multi-threaded ones don't. Fix will have to be either making that data structure thread safe or moving it into a per-TX basis which could lead to duplicate page flushes, as the first commit in the concurrency part. However, I won't be able to get to it now. I will email with more info.

vishakha041 commented 6 years ago

Since this branch was failing for multi-threaded tests, and Philip didn't like the name, I am going to create a new pull request with both fixed!