[SERVER-36815] Remove the references of hash field of oplog entry Created: 23/Aug/18  Updated: 29/Oct/23  Resolved: 17/Jan/19

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

Type: Bug Priority: Major - P3
Reporter: Siyuan Zhou Assignee: Samyukta Lanka
Resolution: Fixed Votes: 0
Labels: neweng
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-36334 Disallow setting "h" field in oplog e... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Repl 2019-01-28
Participants:

 Description   

In PV1, hash is a random number and unnecessary, so we can remove its all references, including OpTimeWithHash used by OplogFetcher and OplogSlot.



 Comments   
Comment by Siyuan Zhou [ 14/Feb/19 ]

Alternatively, we can make OplogEntryBase not strict about unknown fields in 4.4.

Comment by Siyuan Zhou [ 12/Feb/19 ]

Shall we gate writing hash with FCV 4.0 then? If 4.2 still write it, 4.4 will see it and have to accept it for FCV 4.2 so that we cannot remove the optional field, right?

Comment by Samyukta Lanka [ 12/Feb/19 ]

siyuan.zhou, yes this was because without writing the hash in the oplog it was failing multiversion tests. For now it is optional though, I'm not sure we can remove it altogether yet because of multiversion compatibility. I think we agree that we'd remove it as a part of SERVER-36334.

Comment by Siyuan Zhou [ 12/Feb/19 ]

samy.lanka, it seems we still write hash in oplog, is there any particular reason we left it alone? To be able to remove hash from the IDL in 4.4, we should stop writing hash into oplog in 4.2.

Comment by Githook User [ 17/Jan/19 ]

Author:

{'username': 'lankas', 'email': 'samy.lanka@mongodb.com', 'name': 'Samy Lanka'}

Message: SERVER-36815 Remove references to oplog entry's hash field
Branch: master
https://github.com/mongodb/mongo/commit/d764e1b6346726fc2e9259ba294d029d531ff38e

Comment by Judah Schvimer [ 08/Oct/18 ]

This should include making the "h" field optional in the IDL.

Comment by Siyuan Zhou [ 23/Aug/18 ]

I think they are different, SERVER-36334 is about oplog entry format, which takes longer to remove due to backward compatibility, this one is about internal code clean-up.

Comment by Judah Schvimer [ 23/Aug/18 ]

siyuan.zhou, is this a duplicate of SERVER-36334?

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