You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Review findings (databricks-sql-nodejs#416):
- F2 (HIGH): revert the sync-path op.id mutation. `op.id` flipped from a client
UUID to the server statement_id after `result()` resolved, but the facade keys
telemetry start/complete on it (DBSQLOperation → MetricsAggregator), so the
flip split the records across two keys and dropped the summary. `id` is now
stable for the operation's lifetime; the resolved server statement_id is
surfaced via a debug log for server/kernel correlation instead. Test updated:
asserts id is stable AND the server id is logged.
- F1 (HIGH): `runAsync` is the SEA sync/async toggle but was JSDoc-@deprecated,
and a comment falsely claimed it "mirrors Thrift's runAsync distinction"
(Thrift hardcodes runAsync:true and never reads the option). Replaced the
@deprecated tag with the cross-backend contract (Thrift: no-op; kernel:
selects sync-default vs async) and corrected the in-code comment.
- Doc: SeaSessionBackend class comment still said metadata "defers to M1 —
throws"; metadata is fully implemented. Rewritten to list the implemented
surface.
- F3 (MED): ThriftSessionBackend now debug-logs when rowLimit / statementConf
(kernel-only options) are set on the Thrift path, instead of dropping silently.
- F4 (MED): added the missing coverage using the previously-dead fakes —
sync-path Failed/SQL-error envelope (`resultError`), submit-time error mapping
on both paths (`throwOnExecute`), and queryTags-vs-statementConf.query_tags
collision precedence.
- F5 (MED): the query-timeout best-effort cancel now warn-logs a failed cancel
(mirrors the fetch-error cleanup) so a still-running server statement is
diagnosable.
- F10 (LOW): hoisted `Object.values(OperationState)` to a module const off the
100ms async poll loop.
Validated: tsc/eslint/prettier clean; 243 SEA / 1162 full unit tests pass; live
smoke confirms op.id is stable across fetch on both paths and both return
correct data.
Co-authored-by: Isaac
Signed-off-by: Madhavendra Rathore <madhavendra.rathore@databricks.com>
0 commit comments