[SERVER-595] restarting replication - making finding first object fast Created: 02/Feb/10  Updated: 12/Jul/16  Resolved: 02/Feb/10

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

Type: Improvement Priority: Critical - P2
Reporter: Eliot Horowitz (Inactive) Assignee: Aaron Staple
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Participants:

 Description   

Scanning backwards can be really slow if replication was paused for significant time.

Theory: scanning backwards is horribly slow because every 4k have to seek

Solution:

  • scan bacwards as we do now for 5 seconds.
  • if the starting point is not found, find the extent which the object should be in by looking at first object in each extent
  • then scan forwards in that extent - which should be very fast

If we can do this simply - might be worth backporting to 1.2.x



 Comments   
Comment by auto [ 06/Feb/10 ]

Author:

{'login': 'astaple', 'name': 'Aaron', 'email': 'aaron@10gen.com'}

Message: SERVER-595 be sure to release mutex in corner case when scan from beginning
http://github.com/mongodb/mongo/commit/1d562aeb9b3c19ff2d062627927313ce455a2ee7

Comment by Aaron Staple [ 02/Feb/10 ]

I can't do the backport w/o some instructions. Let me know if you want me to work on that. Might want to test new code in your production environment first though.

Comment by auto [ 02/Feb/10 ]

Author:

{'login': 'astaple', 'name': 'Aaron', 'email': 'aaron@10gen.com'}

Message: SERVER-595 forgot to update matcher test for forward scan
http://github.com/mongodb/mongo/commit/ccf1d618f50f3e6cda67e8adfb2e0e1fd920d568

Comment by auto [ 02/Feb/10 ]

Author:

{'login': 'astaple', 'name': 'Aaron', 'email': 'aaron@10gen.com'}

Message: SERVER-595 add test
http://github.com/mongodb/mongo/commit/1b251ab297b1d9d8b938cda09648f73b5cac8880

Comment by auto [ 02/Feb/10 ]

Author:

{'login': 'astaple', 'name': 'Aaron', 'email': 'aaron@10gen.com'}

Message: SERVER-595 extent hopping implementation for findingStart mode
http://github.com/mongodb/mongo/commit/7f24acaf6d9b40fba1c685f1e22cc76291821952

Comment by Eliot Horowitz (Inactive) [ 02/Feb/10 ]

yes - we should still release the mutex like we do now

Comment by Aaron Staple [ 02/Feb/10 ]

Do we still want to release the mutex while doing this or not?

Generated at Thu Feb 08 02:54:37 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.