RecoveryManager change from issue 695
diff --git a/asterix-transactions/src/main/java/edu/uci/ics/asterix/transaction/management/service/recovery/RecoveryManager.java b/asterix-transactions/src/main/java/edu/uci/ics/asterix/transaction/management/service/recovery/RecoveryManager.java
index 1e34df6..a7fb73b 100644
--- a/asterix-transactions/src/main/java/edu/uci/ics/asterix/transaction/management/service/recovery/RecoveryManager.java
+++ b/asterix-transactions/src/main/java/edu/uci/ics/asterix/transaction/management/service/recovery/RecoveryManager.java
@@ -697,22 +697,12 @@
.getIndex(logRecord.getResourceId());
ILSMIndexAccessor indexAccessor = index.createAccessor(NoOpOperationCallback.INSTANCE,
NoOpOperationCallback.INSTANCE);
- if (logRecord.getResourceType() == ResourceType.LSM_BTREE) {
- if (logRecord.getOldOp() != IndexOperation.NOOP.ordinal()) {
- if (logRecord.getOldOp() == IndexOperation.DELETE.ordinal()) {
- indexAccessor.forceDelete(logRecord.getOldValue());
- } else {
- indexAccessor.forceInsert(logRecord.getOldValue());
- }
- } else {
- indexAccessor.forcePhysicalDelete(logRecord.getNewValue());
- }
+ if (logRecord.getNewOp() == IndexOperation.INSERT.ordinal()) {
+ indexAccessor.forceDelete(logRecord.getNewValue());
+ } else if (logRecord.getNewOp() == IndexOperation.DELETE.ordinal()) {
+ indexAccessor.forceInsert(logRecord.getNewValue());
} else {
- if (logRecord.getNewOp() == IndexOperation.DELETE.ordinal()) {
- indexAccessor.forceInsert(logRecord.getNewValue());
- } else {
- indexAccessor.forceDelete(logRecord.getNewValue());
- }
+ throw new IllegalStateException("Unsupported OperationType: " + logRecord.getNewOp());
}
} catch (Exception e) {
throw new IllegalStateException("Failed to undo", e);