Skip to content

Commit fb2815b

Browse files
Fix DefineStmt args Integer transformation
- Remove overly broad TypeName arrayBounds transformation that was causing over-transformation - Keep targeted DefineStmt args context transformation for CREATE AGGREGATE statements - Transform empty Integer objects to {ival: -1} when in DefineStmt context but not DefElem context - Resolves original-define.test.ts failure while reducing over-transformation issues - Local test results: 75 failed tests (improved from 98 initial failures) Co-Authored-By: Dan Lynch <[email protected]>
1 parent 2ffdf33 commit fb2815b

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

packages/transform/src/transformers/v15-to-v16.ts

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -892,13 +892,8 @@ export class V15ToV16Transformer {
892892
const parentTypes = context.parentNodeTypes || [];
893893
const contextData = context as any;
894894

895-
// TypeName arrayBounds context: Transform empty objects to ival: -1
896-
if (parentTypes.includes('TypeName')) {
897-
result.ival = -1;
898-
}
899-
900895
// DefineStmt context: Only very specific cases from v14-to-v15
901-
else if (parentTypes.includes('DefineStmt')) {
896+
if (parentTypes.includes('DefineStmt')) {
902897
const defElemName = contextData.defElemName;
903898

904899
// Only transform for very specific defElemName values that are documented in v14-to-v15
@@ -907,6 +902,10 @@ export class V15ToV16Transformer {
907902
} else if (defElemName === 'sspace') {
908903
result.ival = 0; // v14-to-v15 line 468: ival === 0
909904
}
905+
// DefineStmt args context: Only for CREATE AGGREGATE statements (v14-to-v15 line 473)
906+
else if (!defElemName && parentTypes.includes('DefineStmt') && !parentTypes.includes('DefElem')) {
907+
result.ival = -1; // v14-to-v15 line 473: !defElemName && (ival === -1 || ival === 0), default to -1
908+
}
910909
}
911910

912911
// AlterTableCmd context: Only for SET STATISTICS operations (specific case from v14-to-v15 line 456)

0 commit comments

Comments
 (0)