[SERVER-21363] mongobridge's rejectConnectionsFrom command doesn't handle pending requests Created: 09/Nov/15  Updated: 17/Nov/15  Resolved: 10/Nov/15

Status: Closed
Project: Core Server
Component/s: Testing Infrastructure
Affects Version/s: None
Fix Version/s: 3.2.0-rc3

Type: Bug Priority: Major - P3
Reporter: Max Hirschhorn Assignee: Max Hirschhorn
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Backwards Compatibility: Fully Compatible
Operating System: ALL
Steps To Reproduce:

python buildscripts/resmoke.py --executor=replica_sets jstests/replsets/no_chaining.js --storageEngine=mmapv1 --repeat=10

Sprint: QuInt C (11/23/15)
Participants:
Linked BF Score: 0

 Description   

The kHangUp state is checked only when a request is received on the source connection by the bridge. A request with the await data flag set would block until the destination has something to reply with. During that time, if the bridge has been reconfigured to close connections from the host of the source connection, then it shouldn't forward the response. Proposal is to check for the kHangUp state after receiving a response on the dest connection and close the source connection.

The following sequence of events would trigger spurious failures in no_chaining.js:

  1. Node 2 sends a getMore request to node 0.
  2. The bridge corresponding to node 0 is configured to close connections when it receives a request from node 2.
  3. The client performs the insert.
  4. Node 0 sends a response to node 2's getMore request.
  5. The bridge corresponding to node 0 forwards the response to node 2. (Node 2 is now synced.)
  6. Node 2 sends another getMore request to node 0.
  7. The bridge corresponding to node 0 closes the connection to node 2.


 Comments   
Comment by Githook User [ 10/Nov/15 ]

Author:

{u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}

Message: SERVER-21363 Check whether to close connection after receiving response.
Branch: master
https://github.com/mongodb/mongo/commit/4d3ea62da9ce2d08607f297bb8ce0f162937f865

Generated at Thu Feb 08 03:57:08 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.