Skip to content

Commit b4fd60d

Browse files
committed
IGNITE-24963 Try WD
1 parent d483d79 commit b4fd60d

2 files changed

Lines changed: 26 additions & 17 deletions

File tree

modules/table/src/main/java/org/apache/ignite/internal/table/distributed/replicator/PartitionReplicaListener.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2980,6 +2980,7 @@ private CompletableFuture<ReplicaResult> processSingleEntryAction(ReadWriteSingl
29802980
});
29812981
}
29822982
case RW_UPSERT: {
2983+
// TODO IGNITE-28450
29832984
return resolveRowByPk(extractPk(searchRow), txId, (rowId, row, lastCommitTime) -> {
29842985
boolean insert = rowId == null;
29852986

modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/TxManagerImpl.java

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1036,27 +1036,35 @@ public void processDelayedAck(Object ignored, @Nullable Throwable err) {
10361036

10371037
@Override
10381038
public CompletableFuture<Void> startAsync(ComponentContext componentContext) {
1039-
var deadlockPreventionPolicy = new WoundWaitDeadlockPreventionPolicy() {
1039+
// var deadlockPreventionPolicy = new WoundWaitDeadlockPreventionPolicy() {
1040+
// @Override
1041+
// public long waitTimeout() {
1042+
// return DEFAULT_LOCK_TIMEOUT;
1043+
// }
1044+
//
1045+
// @Override
1046+
// public void failAction(UUID owner) {
1047+
// // TODO IGNITE-28447 sendTxRecoveryMessage and delete locks.
1048+
// TxStateMeta state = txStateVolatileStorage.state(owner);
1049+
// if (state == null || state.txCoordinatorId() == null) {
1050+
// return; // Tx state is invalid. Locks will be cleaned up by tx recovery process.
1051+
// }
1052+
//
1053+
// InternalClusterNode coordinator = topologyService.getById(state.txCoordinatorId());
1054+
// if (coordinator == null) {
1055+
// return; // Tx is abandoned. Locks will be cleaned up by tx recovery process.
1056+
// }
1057+
//
1058+
// txMessageSender.kill(coordinator, owner);
1059+
// }
1060+
// };
1061+
1062+
// This commented section is left intentionally.
1063+
var deadlockPreventionPolicy = new WaitDieDeadlockPreventionPolicy() {
10401064
@Override
10411065
public long waitTimeout() {
10421066
return DEFAULT_LOCK_TIMEOUT;
10431067
}
1044-
1045-
@Override
1046-
public void failAction(UUID owner) {
1047-
// TODO IGNITE-28447 sendTxRecoveryMessage and delete locks.
1048-
TxStateMeta state = txStateVolatileStorage.state(owner);
1049-
if (state == null || state.txCoordinatorId() == null) {
1050-
return; // Tx state is invalid. Locks will be cleaned up by tx recovery process.
1051-
}
1052-
1053-
InternalClusterNode coordinator = topologyService.getById(state.txCoordinatorId());
1054-
if (coordinator == null) {
1055-
return; // Tx is abandoned. Locks will be cleaned up by tx recovery process.
1056-
}
1057-
1058-
txMessageSender.kill(coordinator, owner);
1059-
}
10601068
};
10611069

10621070
txStateVolatileStorage.start();

0 commit comments

Comments
 (0)