nickva commented on issue #3939:
URL: https://github.com/apache/couchdb/issues/3939#issuecomment-1049135699


   That's a good test. If we run with `n=1` only mode for integration tests, 
there could be a separate issue revealed where we drop the connection and never 
close it properly when attachments are ignored. I guess with `n>1` it would 
happen as well, if all the nodes have the revision already because we would 
never pull the data bytes off the socket. We had tried before to force-close 
such connections to prevent them from being recycled [1]. Whether the client 
notices the close quickly enough is another issue...
   
   In the case where n>1 and some nodes, do need the attachment and would read 
the data, perhaps for `replicated_changes` we'd want to inspect the doc for any 
attachment, and if they are any parser processes, explicitly notify them in the 
case the update is dropped:
   
https://github.com/apache/couchdb/blob/e4b8a4624fc7ae09b4649aac9a8d68226208cd8b/src/couch/src/couch_db.erl#L1240-L1241
   
   [1] 
https://github.com/apache/couchdb/blob/2c23d8e0fc8e44fa3f91228aa93002a9977e7221/src/couch/src/couch_httpd.erl#L988-L999
 (I am afraid this never actually made it to the chttpd side!)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to