Make processClients reentrant

This commit is contained in:
John Sully committed 2021-05-29 01:08:14 +00:00
1 parent 83c8977033
commit e39bdb58ec
1 file changed
+3 -1
+3 -1
View File
@@ -2573,7 +2573,9 @@ void processClients()
{
serverAssert(GlobalLocksAcquired());
for (client *c : serverTL->vecclientsProcess) {
while (!serverTL->vecclientsProcess.empty()) {
client *c = serverTL->vecclientsProcess.front();
serverTL->vecclientsProcess.erase(serverTL->vecclientsProcess.begin());
/* There is more data in the client input buffer, continue parsing it
* in case to check if there is a full command to execute. */
std::unique_lock<fastlock> ul(c->lock);