[SERVER-38361] Disable BSON obj validation while creating exhaust dummy request on sync source/server. Created: 03/Dec/18  Updated: 06/Dec/22  Resolved: 03/Jun/19

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: 4.1.3
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Suganthi Mani Assignee: Backlog - Replication Team
Resolution: Duplicate Votes: 0
Labels: InitialSyncPerformance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-41481 Return dbResponse object stored with ... Closed
depends on SERVER-41482 makeExhaustMessage should no longer c... Closed
Related
Assigned Teams:
Replication
Participants:

 Description   

Currently, when we create exhaust dummy request, we parse the response data over here which validates BSON obj  if serverGlobalParams.objcheck (i.e.) net.wireObjectCheck is set. And, by default serverGlobalParams.objcheck is enabled.  Validating BSON obj on the initial sync sync source is just an extra overhead. So, we should add a way to avoid BSON validation when we parse a previous response to create a synthetic exhaust request.



 Comments   
Comment by Jason Chan [ 03/Jun/19 ]

Closing this ticket in favor of SERVER-41481 and SERVER-41482

Comment by Eric Milkie [ 11/Mar/19 ]

I tried clarifying the description.

Comment by Eric Milkie [ 11/Mar/19 ]

I understand now. (The code itself refers to "synthentic requests" instead of dummy requests.)

Comment by Tess Avitabile (Inactive) [ 11/Mar/19 ]

No, validation of the previous response should never be performed when constructing the next dummy request for exhaust. We perform validation as part of parsing, in order to get the ok and cursor values. Instead, we will get the ok and cursor values from the previous response without performing validation.

Comment by Eric Milkie [ 08/Mar/19 ]

Ah, so this ticket is to optionally allow the validation to be turned off, per request?

Comment by Tess Avitabile (Inactive) [ 08/Mar/19 ]

They are in use for any exhaust cursor.

Comment by Eric Milkie [ 08/Mar/19 ]

Are "exhaust dummy requests" only generated for initial sync, or are they in use for any exhaust cursor?

Generated at Thu Feb 08 04:48:44 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.