1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-12-15 12:09:09 +03:00

Untangled cache flushing behavior s.t. it should no longer deadlock.

Now, something that grabs the sync or cache locks should never block
while holding the lock.  Need to review the code to make sure of that.

Also made the recursive mutexes non-recursive again.
This commit is contained in:
Patrick LeBlanc
2019-05-24 13:02:09 -05:00
parent b7b9ce9f93
commit 0cad8308f1
7 changed files with 110 additions and 64 deletions

View File

@@ -56,7 +56,7 @@ class Synchronizer : public boost::noncopyable
int waiters;
bool finished;
boost::condition condvar;
void wait(boost::recursive_mutex *);
void wait(boost::mutex *);
void notify();
};
@@ -94,7 +94,7 @@ class Synchronizer : public boost::noncopyable
boost::filesystem::path cachePath;
boost::filesystem::path journalPath;
boost::recursive_mutex mutex;
boost::mutex mutex;
};
}