Skip to content

v0.2.7

Choose a tag to compare

@github-actions github-actions released this 31 Aug 13:14
· 23 commits to main since this release

Release 0.2.7

Turn the connector's "NULL" string back into null

@tdengine/websocket 3.5.0 pushes the four characters "NULL" for an empty cell
whatever the column type — taosResult.js:186 for fixed-width columns and :200
for variable-length ones, both row.push("NULL") where the value should be null.
Reproduced against a live server with no eon code in the path; the server's own
REST endpoint returns null on the same rows.

The type is therefore right when the value is present and wrong when it is
absent: a BIGINT reads back as bigint on every row until the first null one,
where it becomes string. A typeof check written against the happy path holds
until the first empty cell, often months later. Through the ORM it was worse
than a wrong type — reviveBigInt could not revive "NULL", so one null cell made
a whole super-table unreadable, and a nullable decimal threw on construction.

Converted back for every type that cannot hold the string. Text and binary
columns are left alone and said so in the docs: there the bitmap that knew the
difference is already consumed, and converting would corrupt a real value to
repair an absent one.


Changes since v0.2.6.