public static RemoveRequestMessage GetRemoveRequest(this ExtendedRemoveRequest x)
 {
     return(new RemoveRequestMessage.Builder
     {
         IsReplicationRequest = x.IsReplicationRequest,
         Key = x.Key,
         Segment = x.Segment,
         SpecificVersion = GetVersion(x.SpecificVersion)
     }.Build());
 }
Exemple #2
0
            public void WillReplicateToOtherBackupsWhenFailedOverToAnotherNode()
            {
                node.Stub(x => x.IsSegmentOwned(0)).Return(false);
                var request = new ExtendedRemoveRequest()
                {
                    Key             = "test",
                    SpecificVersion = version,
                    Segment         = 0,
                };

                distributedHashTableStorage.Remove(topologyVersion, request);
                node.AssertWasCalled(x => x.SendToAllOtherBackups(0, request));
            }
Exemple #3
0
        public void WillRemoveReturnedRemovalFromStorage()
        {
            replication.Stub(x => x.AssignAllEmptySegments(Arg <NodeEndpoint> .Is.Anything, Arg.Is(ReplicationType.Ownership), Arg <int[]> .Is.Anything))
            .Return(new[] { 0 });
            var request = new ExtendedRemoveRequest
            {
                Key = "a",
            };

            replication.Stub(x => x.ReplicateNextPage(Arg <NodeEndpoint> .Is.Anything, Arg.Is(ReplicationType.Ownership), Arg <int> .Is.Anything))
            .Return(new ReplicationResult
            {
                PutRequests    = new ExtendedPutRequest[0],
                RemoveRequests = new[] { request },
                Done           = true
            });
            var success = command.Execute();

            Assert.True(success);

            storage.AssertWasCalled(x => x.Remove(topologyVersion, request));
        }