Skip to content

Commit 2b7eabe

Browse files
committed
refactor: move ClassPreLoader before invoke priming
Per review feedback from @phipag: ensures class preloading completes even if DynamoDB invoke priming operations fail.
1 parent 1df82c3 commit 2b7eabe

File tree

1 file changed

+3
-3
lines changed
  • powertools-idempotency/powertools-idempotency-dynamodb/src/main/java/software/amazon/lambda/powertools/idempotency/persistence/dynamodb

1 file changed

+3
-3
lines changed

powertools-idempotency/powertools-idempotency-dynamodb/src/main/java/software/amazon/lambda/powertools/idempotency/persistence/dynamodb/DynamoDBPersistenceStore.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,9 @@ public void beforeCheckpoint(org.crac.Context<? extends Resource> context) throw
130130
}
131131

132132
try {
133+
// Automatic priming - preload classes from classesloaded.txt
134+
ClassPreLoader.preloadClasses();
135+
133136
// Invoke priming - exercise DynamoDB SDK paths
134137
String primingRecordKey = "__invoke_prime__";
135138
Instant now = Instant.now();
@@ -144,9 +147,6 @@ public void beforeCheckpoint(org.crac.Context<? extends Resource> context) throw
144147
putRecord(primingDataRecord, Instant.now());
145148
getRecord(primingRecordKey);
146149
deleteRecord(primingRecordKey);
147-
148-
// Automatic priming - preload classes from classesloaded.txt
149-
ClassPreLoader.preloadClasses();
150150
} catch (Exception e) {
151151
// Log the exception for debugging but continue to ensure checkpoint succeeds
152152
LOG.warn("Priming failed during checkpoint, continuing anyway", e);

0 commit comments

Comments
 (0)