Ensure async rehash completes before we start a new time. Degrad to sync hash if necessary to ensure this
Former-commit-id: 0f830facc7c6bc6668af9bb2e10b6e13a13227aa
This commit is contained in:
parent
9955ecd94a
commit
3b788bac1e
@ -2112,12 +2112,11 @@ void databasesCron(bool fMainThread) {
|
|||||||
if (g_pserver->activerehashing) {
|
if (g_pserver->activerehashing) {
|
||||||
for (j = 0; j < dbs_per_call; j++) {
|
for (j = 0; j < dbs_per_call; j++) {
|
||||||
if (serverTL->rehashCtl != nullptr) {
|
if (serverTL->rehashCtl != nullptr) {
|
||||||
if (dictRehashSomeAsync(serverTL->rehashCtl, 5)) {
|
if (dictRehashSomeAsync(serverTL->rehashCtl, rehashes_per_ms)) {
|
||||||
break;
|
break;
|
||||||
} else {
|
}
|
||||||
dictCompleteRehashAsync(serverTL->rehashCtl, true /*fFree*/);
|
dictCompleteRehashAsync(serverTL->rehashCtl, true /*fFree*/);
|
||||||
serverTL->rehashCtl = nullptr;
|
serverTL->rehashCtl = nullptr;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
serverAssert(serverTL->rehashCtl == nullptr);
|
serverAssert(serverTL->rehashCtl == nullptr);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user