In one of the customer issues, it was observed that TCP closed the connection on Memcached but projector did not receive any notification. Because of this, connection of projector was kept open and projector was waiting for data while memcached stopped sending the data.
While the actual issue is external to couchbase product, it is good to have a read-deadline on memcached to projector data paths to safeguard from extreme scenarios like missing TCP notifications
|For Gerrit Dashboard: MB-40917|
|141047,2||MB-40917: Introduce timeout in all indexing to memcached receive paths||alice||indexing||Status: MERGED||+2||+1|
|141049,2||MB-40917: Introduce timeout in memcached Transmit codepaths||alice||indexing||Status: MERGED||+2||+1|
|141050,1||MB-40917 Set ReadDeadline in projector doReceive()||alice||indexing||Status: MERGED||+2||+1|