[SERVER-28455] Implement LogicalClockFixture Created: 23/Mar/17 Updated: 06/Dec/17 Resolved: 01/May/17 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | 3.5.7 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Misha Tyulenev | Assignee: | Jack Mulrow |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Backwards Compatibility: | Fully Compatible |
| Sprint: | Sharding 2017-05-08 |
| Participants: |
| Description |
|
Set up a mocked-up objects for testing replica-set causal consistent reads.
Implementation:
|
| Comments |
| Comment by Githook User [ 01/May/17 ] |
|
Author: {u'username': u'jsmulrow', u'name': u'Jack Mulrow', u'email': u'jack.mulrow@mongodb.com'}Message: |
| Comment by Misha Tyulenev [ 27/Apr/17 ] |
|
renctan write/read to/from secondary and primary nodes here I mean the mocked up primary/secondary from the replication_coordinator_mock point will fail. |
| Comment by Randolph Tan [ 26/Apr/17 ] |
Can you clarify what this means? Are the primary and secondary nodes remote in this context? Can they be just endpoints for NetworkTestEnv?
Can you clarify what constitutes a skew and skew relative to what?
Is this enabling the feature in the server or just enabling in the request? |
| Comment by Misha Tyulenev [ 25/Apr/17 ] |
|
renctan For the test the value returned with getLastAppliedOpTime will suffice. The ClockSourceMock is what is needed for this fixture, thanks! |
| Comment by Randolph Tan [ 25/Apr/17 ] |
|
Do you actually need to be able to write to a real oplog or just need a ReplCoordinator with a configurable opTime that it returns? Won't the existing clock source mock fit your needs? |
| Comment by Misha Tyulenev [ 25/Apr/17 ] |
|
renctan wdyt? |
| Comment by Esha Maharishi (Inactive) [ 25/Apr/17 ] |
|
extending from the ShardingMongodTestFixture to inherit the ServiceContext, ReplicationCoordinator, ephemeral storage engine, and OpObserver lgtm note that it uses a ReplicationCoordinatorMock rather than a real ReplicationCoordinator - i believe it should still support the functionality you need, though |
| Comment by Misha Tyulenev [ 25/Apr/17 ] |
|
esha.maharishi please ack the approach |