Skip to main content

OLake Go (v0.5.0 - v0.5.2)

March 6, 2026 – March 20, 2026

🎯 What's New​

Sources​

  1. Oracle chunking strategy options -
    Added new chunking strategies for the Oracle driver so users can choose an approach that works with the permissions available, especially on read replicas and Active Data Guard standby databases.

Destinations​

  1. 2-phase commit for Iceberg sync -
    Added a 2-phase commit mechanism for the Iceberg destination for full refresh, incremental, and CDC (MongoDB, PostgreSQL, MySQL, MSSQL), so per-chunk commit status is tracked via destination state making sure the syncs avoid inconsistencies and duplicate writes.

πŸ”§ Bug Fixes & Stability​

  1. MSSQL CDC backfill duplicate prevention -
    Before recording the initial CDC cursor, wait for the CDC capture agent to catch up by polling sys.dm_cdc_log_scan_sessions until a non-throttled scan completes, ensuring sys.fn_cdc_get_max_lsn() includes all committed transactions and avoiding backfill–CDC duplicates, with a permission-aware fallback when DMV access is not allowed.

  2. MySQL signedness bitmap parsing fix -
    Fixed signedness bitmap parsing for MySQL numeric columns by treating YEAR consistently with MySQL server behavior, preventing bit-offset errors that could misdecode numeric columns appearing after a YEAR column during CDC.

  3. Parquet S3 path connection check fix -
    Fixed the Parquet destination connection check to use the configured s3_path prefix when writing the test file, instead of always writing to a hardcoded root-level path.

  4. Upgrade gRPC -
    Upgraded gRPC to v1.79.3.

  5. Fix blank CDC sync loops across drivers -
    Fixed blank CDC syncs getting stuck or triggering wrong recovery by keeping state and metadata aligned when no records are committed, and by applying recovery only when metadata is ahead of state.

  6. Skip MongoDB system collections -
    Skips MongoDB system collections during discovery and sync/CDC processing so internal system.* namespaces are not included in user pipelines.

  7. Sync invalid MySQL ENUM values as empty string -
    Invalid MySQL ENUM values are now synced as empty string instead of failing, matching MySQL’s behavior where invalid ENUM inputs are stored as the special empty-string error value.



πŸ’‘ Join the OLake Community!

Got questions, ideas, or just want to connect with other data engineers?
πŸ‘‰ Join our Slack Community to get real-time support, share feedback, and shape the future of OLake together. πŸš€

Your success with OLake is our priority. Don’t hesitate to contact us if you need any help or further clarification!