Esempio n. 1
0
 private void CleanupResources()
 {
     // closing is done by KTI
     _storageReader.release();
     _executingQueryList = ExecutingQueryList.EMPTY;
     CloseAllCloseableResources();
 }
Esempio n. 2
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void removingTheLastQueryReturnsAnEmptyList()
        public virtual void RemovingTheLastQueryReturnsAnEmptyList()
        {
            // Given
            ExecutingQuery     aQuery = CreateExecutingQuery(1, "query");
            ExecutingQueryList list   = ExecutingQueryList.EMPTY.push(aQuery);

            // When
            ExecutingQueryList result = list.Remove(aQuery);

            // Then
            assertThat(result, equalTo(ExecutingQueryList.EMPTY));
        }
Esempio n. 3
0
 public KernelStatement(KernelTransactionImplementation transaction, TxStateHolder txStateHolder, StorageReader storageReader, LockTracer systemLockTracer, StatementOperationParts statementOperations, ClockContext clockContext, VersionContextSupplier versionContextSupplier)
 {
     this._transaction             = transaction;
     this._txStateHolder           = txStateHolder;
     this._storageReader           = storageReader;
     this._facade                  = new OperationsFacade(this, statementOperations);
     this._executingQueryList      = ExecutingQueryList.EMPTY;
     this._systemLockTracer        = systemLockTracer;
     this._statementOpenCloseCalls = _recordStatementsTraces ? new LinkedList <StackTraceElement[]>() : _emptyStatementHistory;
     this._clockContext            = clockContext;
     this._versionContextSupplier  = versionContextSupplier;
 }
Esempio n. 4
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void shouldNotChangeAListWhenRemovingAQueryThatIsNotInTheList()
        public virtual void ShouldNotChangeAListWhenRemovingAQueryThatIsNotInTheList()
        {
            // given
            ExecutingQuery     query1 = CreateExecutingQuery(1, "query1");
            ExecutingQuery     query2 = CreateExecutingQuery(2, "query2");
            ExecutingQueryList list   = ExecutingQueryList.EMPTY.push(query1);

            // when
            ExecutingQueryList result = list.Remove(query2);

            // then
            assertThat(result, equalTo(list));
        }
Esempio n. 5
0
            internal override Stream <ExecutingQuery> Queries()
            {
                Stream.Builder <ExecutingQuery> builder = Stream.builder();
                ExecutingQueryList entry = this;

                while (entry != EMPTY)
                {
                    Entry current = ( Entry )entry;
                    builder.accept(current.Query);
                    entry = current.Next;
                }
                return(builder.build());
            }
 internal KernelTransactionImplementationHandle(KernelTransactionImplementation tx, SystemNanoClock clock)
 {
     this._txReuseCount = tx.ReuseCount;
     this._lastTransactionIdWhenStarted        = tx.LastTransactionIdWhenStarted();
     this._lastTransactionTimestampWhenStarted = tx.LastTransactionTimestampWhenStarted();
     this._startTime         = tx.StartTime();
     this._startTimeNanos    = tx.StartTimeNanos();
     this._timeoutMillis     = tx.Timeout();
     this._subject           = tx.SubjectOrAnonymous();
     this._terminationReason = tx.ReasonIfTerminated;
     this._executingQueries  = tx.ExecutingQueries();
     this._metaData          = tx.MetaData;
     this._userTransactionId = tx.UserTransactionId();
     this._tx    = tx;
     this._clock = clock;
 }
Esempio n. 7
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void removingQueryInTheMiddleKeepsOrder()
        public virtual void RemovingQueryInTheMiddleKeepsOrder()
        {
            // Given
            ExecutingQuery query1 = CreateExecutingQuery(1, "query1");
            ExecutingQuery query2 = CreateExecutingQuery(2, "query2");
            ExecutingQuery query3 = CreateExecutingQuery(3, "query3");
            ExecutingQuery query4 = CreateExecutingQuery(4, "query4");
            ExecutingQuery query5 = CreateExecutingQuery(5, "query5");

            ExecutingQueryList list = ExecutingQueryList.EMPTY.push(query1).push(query2).push(query3).push(query4).push(query5);

            // When
            IList <ExecutingQuery> result = list.Remove(query3).queries().collect(Collectors.toList());

            // Then
            assertThat(result, equalTo(asList(query5, query4, query2, query1)));
        }
Esempio n. 8
0
 internal override ExecutingQueryList Remove(ExecutingQuery parent, ExecutingQuery target)
 {
     if (target.Equals(Query))
     {
         Next.waitsFor(parent);
         return(Next);
     }
     else
     {
         ExecutingQueryList removed = Next.remove(parent, target);
         if (removed == Next)
         {
             return(this);
         }
         else
         {
             return(new Entry(Query, removed));
         }
     }
 }
Esempio n. 9
0
 internal void StopQueryExecution(ExecutingQuery executingQuery)
 {
     this._executingQueryList = _executingQueryList.remove(executingQuery);
     _transaction.getStatistics().addWaitingTime(executingQuery.ReportedWaitingTimeNanos());
 }
Esempio n. 10
0
 internal void StartQueryExecution(ExecutingQuery query)
 {
     this._executingQueryList = _executingQueryList.push(query);
 }
Esempio n. 11
0
 internal Entry(ExecutingQuery query, ExecutingQueryList next)
 {
     this.Query = query;
     this.Next  = next;
 }