예제 #1
0
 public override void Start()
 {
     _stopped = false;
     RefreshFromNewStore();
     _txQueue = new TransactionQueue(_maxBatchSize, (first, last) =>
     {
         _commitProcess.commit(first, NULL, EXTERNAL);
         _pageCursorTracerSupplier.get().reportEvents();                 // Report paging metrics for the commit
         long lastAppliedRaftLogIndex             = LogIndexTxHeaderEncoding.decodeLogIndexFromTxHeader(last.transactionRepresentation().additionalHeader());
         _commandIndexTracker.AppliedCommandIndex = lastAppliedRaftLogIndex;
     });
 }
예제 #2
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: private int applyToStore(java.util.Collection<org.neo4j.storageengine.api.StorageCommand> commands, long logIndex) throws org.neo4j.kernel.impl.util.collection.NoSuchEntryException
        private int ApplyToStore(ICollection <StorageCommand> commands, long logIndex)
        {
            int tokenId = ExtractTokenId(commands);

            PhysicalTransactionRepresentation representation = new PhysicalTransactionRepresentation(commands);

            representation.SetHeader(encodeLogIndexAsTxHeader(logIndex), 0, 0, 0, 0L, 0L, 0);

            try
            {
                using (LockGroup ignored = new LockGroup())
                {
                    _commitProcess.commit(new TransactionToApply(representation, _versionContext), CommitEvent.NULL, TransactionApplicationMode.EXTERNAL);
                }
            }
            catch (TransactionFailureException e)
            {
                throw new Exception(e);
            }

            return(tokenId);
        }
예제 #3
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: private long commit(org.neo4j.kernel.impl.api.TransactionToApply first) throws org.neo4j.internal.kernel.api.exceptions.TransactionFailureException
        private long Commit(TransactionToApply first)
        {
            return(_commitProcess.commit(first, CommitEvent.NULL, EXTERNAL));
        }