Skip to content

Commit 9a2bea3

Browse files
author
Dave Bartolomeo
committed
Better handling of missing log data
1 parent 1aab49c commit 9a2bea3

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

extensions/ql-vscode/src/log-insights/join-order.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -320,7 +320,7 @@ class JoinOrderScanner implements EvaluationLogScanner {
320320
event: ComputeSimple
321321
): { maxTupleCount: number; maxDependentPredicateSize: number } {
322322
const dependentPredicateSizes = Object.values(event.dependencies).map(hash =>
323-
this.predicateSizes.get(hash)! // REVIEW: '!'
323+
this.predicateSizes.get(hash) ?? 0 // Should always be present, but zero is a safe default.
324324
);
325325
const maxDependentPredicateSize = safeMax(dependentPredicateSizes);
326326
return {
@@ -339,7 +339,7 @@ class JoinOrderScanner implements EvaluationLogScanner {
339339
// If an iteration isn't present in the map it means it was skipped because the optimizer
340340
// inferred that it was empty. So its size is 0.
341341
return (
342-
this.layerEvents.get(event.raHash)!.find(x => x.predicateName === predicate)?.deltaSizes[i] || 0
342+
this.layerEvents.get(event.raHash)?.find(x => x.predicateName === predicate)?.deltaSizes[i] ?? 0
343343
);
344344
}
345345

0 commit comments

Comments
 (0)