Skip to content

Support OBJECT data type in table-model tablet writes - #25

Open
CritasWang wants to merge 1 commit into
developfrom
feat/tablet-object-write
Open

Support OBJECT data type in table-model tablet writes#25
CritasWang wants to merge 1 commit into
developfrom
feat/tablet-object-write

Conversation

@CritasWang

Copy link
Copy Markdown
Contributor

Summary

Ports the OBJECT data type write support from apache/iotdb-client-go#175 to the Node.js client.

  • Adds TSDataType.OBJECT = 12 and getDataTypeName support
  • Adds TableTablet.buildObjectValue / setObjectValueAt with the Java-compatible segment frame: [1 byte isEOF][8 byte big-endian offset][content]
  • Serializes OBJECT columns as BLOB-like length-prefixed binary in both the legacy and fast tablet paths
  • Decodes OBJECT columns from TsBlock results as (Object) ... size summaries

Tests

  • New tests/unit/TableTabletObject.test.ts mocks the Thrift client and verifies TSInsertTabletReq types, value bytes, timestamps, and null bitmaps
  • Extended tests/unit/DataTypes.test.ts and tests/unit/TabletSerialization.test.ts for formatting, serialization parity, and TsBlock decoding

Verification: npm run build passes; npm run test:unit passes (189 tests).

Refs apache/iotdb-client-go#175

Add TSDataType.OBJECT (12) and table-model OBJECT write support:
- TableTablet.buildObjectValue / setObjectValueAt with the Java-compatible
9-byte segment header (isEOF + big-endian offset + content)
- Serialize OBJECT columns as BLOB-like length-prefixed binary in both the
legacy and fast tablet serialization paths
- Decode OBJECT columns from TsBlock results as "(Object) ..." size summaries
- Add mock/unit tests for segment framing, RPC request bytes, null bitmap,
serialization parity, and TsBlock decoding
Refs apache/iotdb-client-go#175
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@CritasWang