コード例 #1
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void clientShouldReadAndApplyTransactionLogsOnNewLockSessionRequest() throws Throwable
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
        public virtual void ClientShouldReadAndApplyTransactionLogsOnNewLockSessionRequest()
        {
            // Given
            MasterImpl master = spy(NewMasterImpl(MockMasterImplSpiWith(StoreId.DEFAULT)));

            doReturn(VoidResponseWithTransactionLogs()).when(master).newLockSession(any(typeof(RequestContext)));

            NewMasterServer(master);

            TransactionCommittingResponseUnpacker.Dependencies deps = mock(typeof(TransactionCommittingResponseUnpacker.Dependencies));
            TransactionCommitProcess commitProcess = mock(typeof(TransactionCommitProcess));

            when(deps.CommitProcess()).thenReturn(commitProcess);
            when(deps.LogService()).thenReturn(NullLogService.Instance);
            when(deps.VersionContextSupplier()).thenReturn(EmptyVersionContextSupplier.EMPTY);
            KernelTransactions transactions = mock(typeof(KernelTransactions));

            when(deps.KernelTransactions()).thenReturn(transactions);

            ResponseUnpacker unpacker = Life.add(new TransactionCommittingResponseUnpacker(deps, DEFAULT_BATCH_SIZE, 0));

            MasterClient masterClient = NewMasterClient320(StoreId.DEFAULT, unpacker);

            // When
            masterClient.NewLockSession(new RequestContext(1, 2, 3, 4, 5));

            // Then
            verify(commitProcess).commit(any(typeof(TransactionToApply)), any(typeof(CommitEvent)), any(typeof(TransactionApplicationMode)));
        }
コード例 #2
0
 internal NeoStoreKernelModule(TransactionCommitProcess transactionCommitProcess, KernelImpl kernel, KernelTransactions kernelTransactions, NeoStoreFileListing fileListing)
 {
     this._transactionCommitProcess = transactionCommitProcess;
     this._kernel             = kernel;
     this._kernelTransactions = kernelTransactions;
     this._fileListing        = fileListing;
 }
コード例 #3
0
 public MasterTransactionCommitProcess(TransactionCommitProcess commitProcess, TransactionPropagator txPropagator, IntegrityValidator validator, Monitor monitor)
 {
     this._inner        = commitProcess;
     this._txPropagator = txPropagator;
     this._validator    = validator;
     this._monitor      = monitor;
 }
コード例 #4
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void shouldFailTransactionIfLockSessionChanges()
        public virtual void ShouldFailTransactionIfLockSessionChanges()
        {
            // given
            int initialLockSessionId = 23;
            TransactionToApply transactionToApply = new TransactionToApply(PhysicalTx(initialLockSessionId));

            int finalLockSessionId = 24;
            TransactionCommitProcess          localCommitProcess = mock(typeof(TransactionCommitProcess));
            ReplicatedTransactionStateMachine stateMachine       = new ReplicatedTransactionStateMachine(mock(typeof(CommandIndexTracker)), LockState(finalLockSessionId), 16, NullLogProvider.Instance, Org.Neo4j.Io.pagecache.tracing.cursor.PageCursorTracerSupplier_Fields.Null, EmptyVersionContextSupplier.EMPTY);

            stateMachine.InstallCommitProcess(localCommitProcess, -1L);

            DirectReplicator <ReplicatedTransaction> replicator    = new DirectReplicator <ReplicatedTransaction>(stateMachine);
            ReplicatedTransactionCommitProcess       commitProcess = new ReplicatedTransactionCommitProcess(replicator);

            // when
            try
            {
                commitProcess.Commit(transactionToApply, NULL, EXTERNAL);
                fail("Should have thrown exception.");
            }
            catch (TransactionFailureException)
            {
                // expected
            }
        }
コード例 #5
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void createRegularCommitProcess()
        public virtual void CreateRegularCommitProcess()
        {
            CommunityCommitProcessFactory factory = new CommunityCommitProcessFactory();

            TransactionCommitProcess commitProcess = factory.Create(mock(typeof(TransactionAppender)), mock(typeof(StorageEngine)), Config.defaults());

            assertThat(commitProcess, instanceOf(typeof(TransactionRepresentationCommitProcess)));
        }
コード例 #6
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void createRegularCommitProcess()
        public virtual void CreateRegularCommitProcess()
        {
            HighlyAvailableCommitProcessFactory factory = new HighlyAvailableCommitProcessFactory(new DelegateInvocationHandler <TransactionCommitProcess>(typeof(TransactionCommitProcess)));

            TransactionCommitProcess commitProcess = factory.Create(mock(typeof(TransactionAppender)), mock(typeof(StorageEngine)), Config.defaults());

            assertThat(commitProcess, not(instanceOf(typeof(ReadOnlyTransactionCommitProcess))));
            assertThat(Proxy.getInvocationHandler(commitProcess), instanceOf(typeof(DelegateInvocationHandler)));
        }
コード例 #7
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void createReadOnlyCommitProcess()
        public virtual void CreateReadOnlyCommitProcess()
        {
            HighlyAvailableCommitProcessFactory factory = new HighlyAvailableCommitProcessFactory(new DelegateInvocationHandler <TransactionCommitProcess>(typeof(TransactionCommitProcess)));

            Config config = Config.defaults(GraphDatabaseSettings.read_only, "true");

            TransactionCommitProcess commitProcess = factory.Create(mock(typeof(TransactionAppender)), mock(typeof(StorageEngine)), config);

            assertThat(commitProcess, instanceOf(typeof(ReadOnlyTransactionCommitProcess)));
        }
コード例 #8
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void createReadOnlyCommitProcess()
        public virtual void CreateReadOnlyCommitProcess()
        {
            CommunityCommitProcessFactory factory = new CommunityCommitProcessFactory();

            Config config = Config.defaults(GraphDatabaseSettings.read_only, "true");

            TransactionCommitProcess commitProcess = factory.Create(mock(typeof(TransactionAppender)), mock(typeof(StorageEngine)), config);

            assertThat(commitProcess, instanceOf(typeof(ReadOnlyTransactionCommitProcess)));
        }
コード例 #9
0
        public DefaultMasterImplSPI(GraphDatabaseAPI graphDb, FileSystemAbstraction fileSystemAbstraction, Monitors monitors, TokenHolders tokenHolders, IdGeneratorFactory idGeneratorFactory, TransactionCommitProcess transactionCommitProcess, CheckPointer checkPointer, TransactionIdStore transactionIdStore, LogicalTransactionStore logicalTransactionStore, NeoStoreDataSource neoStoreDataSource, LogProvider logProvider)
        {
            this._graphDb                  = graphDb;
            this._fileSystem               = fileSystemAbstraction;
            this._tokenHolders             = tokenHolders;
            this._idGeneratorFactory       = idGeneratorFactory;
            this._transactionCommitProcess = transactionCommitProcess;
            this._checkPointer             = checkPointer;
            this._neoStoreDataSource       = neoStoreDataSource;
            this._databaseDirectory        = graphDb.DatabaseLayout().databaseDirectory();
            this._txChecksumLookup         = new TransactionChecksumLookup(transactionIdStore, logicalTransactionStore);
            this._responsePacker           = new ResponsePacker(logicalTransactionStore, transactionIdStore, graphDb.storeId);
            this._monitors                 = monitors;
//JAVA TO C# CONVERTER WARNING: The .NET Type.FullName property will not always yield results identical to the Java Class.getName method:
            monitors.AddMonitorListener(new LoggingStoreCopyServerMonitor(logProvider.GetLog(typeof(StoreCopyServer))), typeof(StoreCopyServer).FullName);
        }
コード例 #10
0
 internal ReplayableCommitProcess(TransactionCommitProcess localCommitProcess, TransactionCounter transactionCounter)
 {
     this._localCommitProcess = localCommitProcess;
     this._transactionCounter = transactionCounter;
 }