Skip to content

v0.6.2 – Support batch upsert landing function

Choose a tag to compare

@hsballoon hsballoon released this 11 Sep 09:05
· 14 commits to master since this release

Highlights

  • Added complete-row landing upsert APIs:

    • WTGatewayClient.upsert_landing()
    • WTGatewayClient.upsert_landing_batch()
  • Added configurable match_columns support for landing and serving upserts.

  • The default upsert match key is now:

    ["job_id", "id"]
  • match_columns is passed through to dldb as its upsert merge-key columns.

  • HASH bucket routing remains fully managed by dldb from each record’s job_id; callers do not need to provide a partition number.

  • Added validation for:

    • non-empty job_id;
    • valid schema columns;
    • duplicate match columns;
    • duplicate match keys within one batch.
  • Updated English and Chinese documentation with the new upsert behavior and API signatures.

Dependency

This release uses dldb from the dldb-v1.1.2 tag.

Validation

  • Unit tests: 164 passed
  • Real upsert smoke test passed against v2_landing_test, including:
    • initial insert;
    • repeated upsert with the same job_id and id;
    • verification that the existing row was updated rather than duplicated;
    • cleanup verification.