You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexander Belyak (Jira)" <ji...@apache.org> on 2022/12/29 04:49:00 UTC

[jira] [Created] (IGNITE-18484) Mismatched transaction id

Alexander Belyak created IGNITE-18484:
-----------------------------------------

             Summary: Mismatched transaction id
                 Key: IGNITE-18484
                 URL: https://issues.apache.org/jira/browse/IGNITE-18484
             Project: Ignite
          Issue Type: Bug
          Components: general
    Affects Versions: 3.0.0-beta1
            Reporter: Alexander Belyak


During the TPC-H test runs I got a problem:

1) Create&Load TPC-H database

2) Execute "select count(*) from LINEITEM;" throw JDBC connection

3) Get exception:

 
{noformat}
[Code: 0, SQL State: 50000]  Exception while executing query [query=select count(*) from LINEITEM]. Error message:IGN-CMN-65535 TraceId:294a2e0a-29e8-448c-abdb-7944b335deb3 IGN-TX-5 TraceId:b582a4be-2ef1-455f-8e70-80a21e8bcc2e Failed to acquire a lock due to a conflict [txId=000ea0e8-bbc4-0000-1cb0-c18823b1fa69, conflictingWaiter=WaiterImpl [txId=000e9f97-4be0-0000-1cb0-c18823b1fa69, intendedLockMode=null, lockMode=IX, ex=null, isDone=true]]{noformat}
and in the server logs:

 

 
{noformat}
Dec 29, 2022 6:32:29 AM org.apache.ignite.internal.logger.IgniteLogger logInternal
WARNING: Failed to process replica request [request=ReadWriteScanRetrieveBatchReplicaRequestImpl [batchSize=512, columnsToInclude=null, exactKey=null, flags=0, groupId=a804d8a4-ae2d-4fc2-bd6f-e40318297fa7_part_0, indexToUse=null, lowerBound=null, scanId=603, term=1, timestamp=HybridTimestamp [physical=1672288349125, logical=0], transactionId=000ea0e8-bbc4-0000-1cb0-c18823b1fa69, upperBound=null]]
java.util.concurrent.CompletionException: org.apache.ignite.internal.tx.LockException: IGN-TX-5 TraceId:b582a4be-2ef1-455f-8e70-80a21e8bcc2e Failed to acquire a lock due to a conflict [txId=000ea0e8-bbc4-0000-1cb0-c18823b1fa69, conflictingWaiter=WaiterImpl [txId=000e9f97-4be0-0000-1cb0-c18823b1fa69, intendedLockMode=null, lockMode=IX, ex=null, isDone=true]]
    at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331)
    at java.base/java.util.concurrent.CompletableFuture.uniApplyNow(CompletableFuture.java:670)
    at java.base/java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:658)
    at java.base/java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:2094)
    at org.apache.ignite.internal.tx.impl.HeapLockManager.acquire(HeapLockManager.java:103)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.processScanRetrieveBatchAction(PartitionReplicaListener.java:604)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$invoke$0(PartitionReplicaListener.java:264)
    at java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1072)
    at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
    at java.base/java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:2073)
    at org.apache.ignite.internal.raft.RaftGroupServiceImpl.lambda$sendWithRetry$38(RaftGroupServiceImpl.java:539)
    at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
    at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:837)
    at java.base/java.util.concurrent.CompletableFuture$Completion.exec(CompletableFuture.java:479)
    at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
    at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
    at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
    at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
    at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
Caused by: org.apache.ignite.internal.tx.LockException: IGN-TX-5 TraceId:b582a4be-2ef1-455f-8e70-80a21e8bcc2e Failed to acquire a lock due to a conflict [txId=000ea0e8-bbc4-0000-1cb0-c18823b1fa69, conflictingWaiter=WaiterImpl [txId=000e9f97-4be0-0000-1cb0-c18823b1fa69, intendedLockMode=null, lockMode=IX, ex=null, isDone=true]]
    at org.apache.ignite.internal.tx.impl.HeapLockManager$LockState.lockException(HeapLockManager.java:303)
    at org.apache.ignite.internal.tx.impl.HeapLockManager$LockState.isWaiterReadyToNotify(HeapLockManager.java:281)
    at org.apache.ignite.internal.tx.impl.HeapLockManager$LockState.tryAcquire(HeapLockManager.java:230)
    at org.apache.ignite.internal.tx.impl.HeapLockManager.acquire(HeapLockManager.java:95)
    ... 14 moreDec 29, 2022 6:33:05 AM org.apache.ignite.internal.logger.IgniteLogger logInternal
INFO: Skipping checkpoint (no pages were modified) [checkpointBeforeWriteLockTime=0ms, checkpointWriteLockWait=0ms, checkpointListenersExecuteTime=0ms, checkpointWriteLockHoldTime=0ms, reason='timeout']{noformat}
After server restart

on client side:

 

 
{noformat}
[Code: 0, SQL State: 50000]  Exception while executing query [query=select count(*) from LINEITEM]. Error message:IGN-CMN-65535 TraceId:1bdf6add-e64f-4eed-a1f3-b468d71ea9b2 Mismatched transaction id, expectedTxId={000ea0eb-b557-0000-7f0b-3ed28fce69d9}, actualTxId={000e9f9c-3f13-0000-1cb0-c18823b1fa69}{noformat}
on server side:
{noformat}
Dec 29, 2022 6:35:37 AM org.apache.ignite.internal.logger.IgniteLogger logInternal
WARNING: Failed to process replica request [request=ReadWriteScanRetrieveBatchReplicaRequestImpl [batchSize=512, columnsToInclude=null, exactKey=null, flags=0, groupId=a804d8a4-ae2d-4fc2-bd6f-e40318297fa7_part_11, indexToUse=null, lowerBound=null, scanId=36, term=2, timestamp=HybridTimestamp [physical=1672288537972, logical=0], transactionId=000ea0eb-9c4c-0000-7f0b-3ed28fce69d9, upperBound=null]]
java.util.concurrent.CompletionException: java.lang.AssertionError: Mismatched transaction id, expectedTxId={000ea0eb-9c4c-0000-7f0b-3ed28fce69d9}, actualTxId={000e9f9c-3f13-0000-1cb0-c18823b1fa69}
    at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314)
    at java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1113)
    at java.base/java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2235)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.processScanRetrieveBatchAction(PartitionReplicaListener.java:604)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$invoke$0(PartitionReplicaListener.java:264)
    at java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1072)
    at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
    at java.base/java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:2073)
    at org.apache.ignite.internal.raft.RaftGroupServiceImpl.lambda$sendWithRetry$38(RaftGroupServiceImpl.java:539)
    at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
    at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:837)
    at java.base/java.util.concurrent.CompletableFuture$Completion.exec(CompletableFuture.java:479)
    at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
    at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
    at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
    at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
    at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
Caused by: java.lang.AssertionError: Mismatched transaction id, expectedTxId={000ea0eb-9c4c-0000-7f0b-3ed28fce69d9}, actualTxId={000e9f9c-3f13-0000-1cb0-c18823b1fa69}
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.resolveReadResult(PartitionReplicaListener.java:1850)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.resolveReadResult(PartitionReplicaListener.java:1797)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$processScanRetrieveBatchAction$16(PartitionReplicaListener.java:611)
    at java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1106)
    ... 15 moreDec 29, 2022 6:35:44 AM org.apache.ignite.internal.logger.IgniteLogger logInternal
WARNING: Failed to process replica request [request=ReadWriteScanRetrieveBatchReplicaRequestImpl [batchSize=512, columnsToInclude=null, exactKey=null, flags=0, groupId=a804d8a4-ae2d-4fc2-bd6f-e40318297fa7_part_11, indexToUse=null, lowerBound=null, scanId=198, term=2, timestamp=HybridTimestamp [physical=1672288544206, logical=0], transactionId=000ea0eb-b557-0000-7f0b-3ed28fce69d9, upperBound=null]]
java.util.concurrent.CompletionException: java.lang.AssertionError: Mismatched transaction id, expectedTxId={000ea0eb-b557-0000-7f0b-3ed28fce69d9}, actualTxId={000e9f9c-3f13-0000-1cb0-c18823b1fa69}
    at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314)
    at java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1113)
    at java.base/java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2235)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.processScanRetrieveBatchAction(PartitionReplicaListener.java:604)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$invoke$0(PartitionReplicaListener.java:264)
    at java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1072)
    at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
    at java.base/java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:2073)
    at org.apache.ignite.internal.raft.RaftGroupServiceImpl.lambda$sendWithRetry$38(RaftGroupServiceImpl.java:539)
    at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
    at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:837)
    at java.base/java.util.concurrent.CompletableFuture$Completion.exec(CompletableFuture.java:479)
    at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
    at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
    at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
    at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
    at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
Caused by: java.lang.AssertionError: Mismatched transaction id, expectedTxId={000ea0eb-b557-0000-7f0b-3ed28fce69d9}, actualTxId={000e9f9c-3f13-0000-1cb0-c18823b1fa69}
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.resolveReadResult(PartitionReplicaListener.java:1850)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.resolveReadResult(PartitionReplicaListener.java:1797)
    at org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$processScanRetrieveBatchAction$16(PartitionReplicaListener.java:611)
    at java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1106)
    ... 15 more{noformat}
So now I have damaged table on [https://github.com/apache/ignite-3/commit/d71c8523e18dcc4d3c0b8b57291c439aec341cb5] commit.

 

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)