Uploaded image for project: 'Couchbase .NET client library'
  1. Couchbase .NET client library
  2. NCBC-3475

query_context possibly not sent on scoped queries (Transactions)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • backlog-3.0
    • None
    • None
    • None
    • 1
    • SDK44, SDK48, SDK50, SDK52, SDK02: V.Search, maxTTL=-1, SDK04: Scope Search

    Description

      26 Test permutations of `permute_allFailedTransactions_checkQueryStmtBehaviour` are failing in cluster version 7.0-release, 7.1-stable, 7.2-stable in .NET with error:

      org.opentest4j.AssertionFailedError: Expected transaction to raise cause UnambiguousTimeoutException, but instead it raised exception: EXCEPTION_UNKNOWN
      exception_cause: CouchbaseException 

       

      Links of some Jenkins failures: 

      https://sdk.jenkins.couchbase.com/job/dotnet/job/sdk/job/TransactionsFITPerformer_SinglePerformer/1322/testReport/com.couchbase.transactions.query.single_query/SingleQueryTransactionBlockedByAFailedTxnTest/Setup_test_Infra_and_Execute_Tests___7_0_release_Vs_DOTNET_MASTER___permute_allFailedTransactions_checkQueryStmtBehaviour/

      https://sdk.jenkins.couchbase.com/job/dotnet/job/sdk/job/TransactionsFITPerformer_SinglePerformer/1322/testReport/com.couchbase.transactions.query.single_query/SingleQueryTransactionBlockedByAFailedTxnTest/Setup_test_Infra_and_Execute_Tests___7_0_release_Vs_DOTNET_MASTER___permute_allFailedTransactions_checkQueryStmtBehaviour_2/

      https://sdk.jenkins.couchbase.com/job/dotnet/job/sdk/job/TransactionsFITPerformer_SinglePerformer/1322/testReport/com.couchbase.transactions.query.single_query/SingleQueryTransactionBlockedByAFailedTxnTest/Setup_test_Infra_and_Execute_Tests___7_0_release_Vs_DOTNET_MASTER___permute_allFailedTransactions_checkQueryStmtBehaviour_3/

      https://sdk.jenkins.couchbase.com/job/dotnet/job/sdk/job/TransactionsFITPerformer_SinglePerformer/1322/testReport/com.couchbase.transactions.query.single_query/SingleQueryTransactionBlockedByAFailedTxnTest/Setup_test_Infra_and_Execute_Tests___7_0_release_Vs_DOTNET_MASTER___permute_allFailedTransactions_checkQueryStmtBehaviour_4/

      https://sdk.jenkins.couchbase.com/job/dotnet/job/sdk/job/TransactionsFITPerformer_SinglePerformer/1322/testReport/com.couchbase.transactions.query.single_query/SingleQueryTransactionBlockedByAFailedTxnTest/Setup_test_Infra_and_Execute_Tests___7_0_release_Vs_DOTNET_MASTER___permute_allFailedTransactions_checkQueryStmtBehaviour_5/

       

      Below is the failed test:

      /**
       * Generate the different kinds of failures for a transaction. Verify the txn2 reacts to this as expected. But Txn2 will work on the documents in query stmt
       *
       * @return
       */
      @TestFactory
      Stream<DynamicTest> permute_allFailedTransactions_checkQueryStmtBehaviour() {
          return Stream.of(Operation.INSERT, Operation.REPLACE, Operation.REMOVE)
                  .flatMap(txnOperation ->
                          Stream.of(FailureStages.values())
                                  .flatMap(failurePoint ->
                                          Stream.of(true, false)
                                                  .flatMap(transactionExpired ->
                                                          Stream.of(QueryOp.values())
                                                                  .map(QueryOp -> {
                                                                      String idx = String.format("txnMutation: %s, failurePoint: %s, QueryOp: %s , transactionExpired: %s", txnOperation, failurePoint, QueryOp, transactionExpired);
                                                                      return DynamicTest.dynamicTest(idx,
                                                                              () -> checkQueryStmtBehaviour(txnOperation, failurePoint, QueryOp, transactionExpired));
                                                                  }))));
      }
       

      After doing some investigation, found that below line of file `test-driver/src/test/java/com/couchbase/transactions/util/TransactionSingleQueryBuilder.java` produces the error `EXCEPTION_UNKNOWN` as a value of singleQueryResponse.

      TransactionSingleQueryResponse singleQueryResponse = this.sendToPerformer(); 

      Please help us look into this. Attaching docker and IntelliJ logs for your reference. Please feel free to reach out for any further assistance.

      Thanks!

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              richard.ponton Richard Ponton
              aaliya.haque Aaliya Haque
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty