Uploaded image for project: 'Apache Trafodion (Retired)'
  1. Apache Trafodion (Retired)
  2. TRAFODION-2348

TransactionState.hasConflict returns true if it gets a null pointer exception

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 2.1-incubating, any
    • 2.4
    • dtm
    • None

    Description

      In the middle of hasConflict the TransactionState object compares its writeOrder list to various other transactions. In this case, we get a Null pointer exception in the trasnaction to check against, so we return true to has conflict and the transaction aborts.

      2016-11-07 20:00:28,673 WARN org.apache.hadoop.hbase.regionserver.transactional.TransactionState: TrxTransactionState hasConflict:
      Unable to get row - this Transaction [[transactionId: 12919375954 regionTX: false status: PENDING neverReadOnly: false scan Size: 28 write Size: 14 startSQ: 34310]]
      checkAgainst Transaction [[transactionId: 17214542234 regionTX: false status: ABORTED neverReadOnly: false scan Size: 0 write Size: 0 startSQ: 34296 commitedSQ:34314]] Exception:
      java.lang.NullPointerException
      at org.apache.hadoop.hbase.regionserver.transactional.TrxTransactionState.hasConflict(TrxTransactionState.java:469)
      at org.apache.hadoop.hbase.regionserver.transactional.TrxTransactionState.hasConflict(TrxTransactionState.java:438)
      at org.apache.hadoop.hbase.coprocessor.transactional.TrxRegionEndpoint.hasConflict(TrxRegionEndpoint.java:6389)
      at org.apache.hadoop.hbase.coprocessor.transactional.TrxRegionEndpoint.commitRequest(TrxRegionEndpoint.java:6138)
      at org.apache.hadoop.hbase.coprocessor.transactional.TrxRegionEndpoint.commitRequest(TrxRegionEndpoint.java:6077)
      at org.apache.hadoop.hbase.coprocessor.transactional.TrxRegionEndpoint.commitRequest(TrxRegionEndpoint.java:894)
      at org.apache.hadoop.hbase.coprocessor.transactional.generated.TrxRegionProtos$TrxRegionService.callMethod(TrxRegionProtos.java:49510)
      at org.apache.hadoop.hbase.regionserver.HRegion.execService(HRegion.java:7054)
      at org.apache.hadoop.hbase.regionserver.RSRpcServices.execServiceOnRegion(RSRpcServices.java:1746)
      at org.apache.hadoop.hbase.regionserver.RSRpcServices.execService(RSRpcServices.java:1728)
      at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:31447)
      at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2035)
      at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:107)
      at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:130)
      at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:107)
      at java.lang.Thread.run(Thread.java:745)

      2016-11-07 20:00:28,674 ERROR org.apache.hadoop.hbase.regionserver.transactional.TransactionState: TrxTransactionState hasConflict:
      Returning true. This transaction [transactionId: 12919375954 regionTX: false status: PENDING neverReadOnly: false scan Size: 28 write Size: 14 startSQ: 34310] Caught exception from transaction [transactionId: 17214542234 regionTX: false status: ABORTED neverReadOnly: false scan Size: 0 write Size: 0 startSQ: 34296 commitedSQ:34314], regionInfo is [TRAFODION.JAVABENCH.OE_ORDERLINE_192,\x00\x00\x00\x1D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00,1478575978122.228b0109fcab4c57c25d7f1326f40f4e.], exception
      java.lang.NullPointerException
      at org.apache.hadoop.hbase.regionserver.transactional.TrxTransactionState.hasConflict(TrxTransactionState.java:469)
      at org.apache.hadoop.hbase.regionserver.transactional.TrxTransactionState.hasConflict(TrxTransactionState.java:438)
      at org.apache.hadoop.hbase.coprocessor.transactional.TrxRegionEndpoint.hasConflict(TrxRegionEndpoint.java:6389)
      at org.apache.hadoop.hbase.coprocessor.transactional.TrxRegionEndpoint.commitRequest(TrxRegionEndpoint.java:6138)
      at org.apache.hadoop.hbase.coprocessor.transactional.TrxRegionEndpoint.commitRequest(TrxRegionEndpoint.java:6077)
      at org.apache.hadoop.hbase.coprocessor.transactional.TrxRegionEndpoint.commitRequest(TrxRegionEndpoint.java:894)
      at org.apache.hadoop.hbase.coprocessor.transactional.generated.TrxRegionProtos$TrxRegionService.callMethod(TrxRegionProtos.java:49510)
      at org.apache.hadoop.hbase.regionserver.HRegion.execService(HRegion.java:7054)
      at org.apache.hadoop.hbase.regionserver.RSRpcServices.execServiceOnRegion(RSRpcServices.java:1746)
      at org.apache.hadoop.hbase.regionserver.RSRpcServices.execService(RSRpcServices.java:1728)
      at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:31447)
      at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2035)
      at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:107)
      at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:130)
      at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:107)
      at java.lang.Thread.run(Thread.java:745)

      Attachments

        Activity

          People

            sbroeder Sean Broeder
            sbroeder Sean Broeder
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: