Skip to content

Merge upstream duckdb/ducklake main into PostHog fork - #23

Open
jghoman wants to merge 243 commits into
mainfrom
try-merge-upstream-2026-06-09
Open

Merge upstream duckdb/ducklake main into PostHog fork#23
jghoman wants to merge 243 commits into
mainfrom
try-merge-upstream-2026-06-09

Conversation

@jghoman

@jghoman jghoman commented Jun 9, 2026

Copy link
Copy Markdown

Summary

Brings in 242 upstream commits — dominated by upstream PR #1216 ("Merge V1.5 → Main"), which folded ~6 weeks of v1.5-variegata work into upstream main on 2026-06-09.

Why this PR exists

Every C++ test workflow on our main has been red since 2026-05-09 with build errors against current DuckDB API:

  • TableFilter::Copy not a member
  • OPTIONAL_FILTER is not a member of TableFilterType (renamed to LEGACY_OPTIONAL_FILTER)
  • OptionalFilter not declared (replaced by optional_ptr)
  • TableFilter::Cast<...> overload mismatch

All four are fixed by upstream PR #1150 and surrounding v1.5-variegata work, which this merge brings in.

Notable upstream content (beyond the build fix)

  • Server-side commit / ducklake_commit refactor
  • Quack catalog integration scaffolding
  • v1.5.3 release prep, assorted dentiny bug fixes
  • duckdb submodule + .github/duckdb-version moved off main to a pinned SHA (a1b15369), so CI is no longer a moving target

Conflict resolution

One file, two hunks — .github/workflows/MainDistributionPipeline.yml:

Hunk Resolution
duckdb-next-build uses: reference Kept HEAD's vendored copy (./.github/workflows/_extension_distribution.yml). Upstream switched to @v1.5-variegata; we still vendor to satisfy the PostHog org SHA-pin policy. Comment updated to record this.
publish-github-release job Kept HEAD verbatim. This is our PR #4 binary-publish job; upstream has no equivalent.

Local verification

Step Result
just build ✅ 748/748, no errors
just test ✅ 441 test cases, 15,753 assertions, all passing (18 skipped for missing local extensions: httpfs / postgres_scanner / sqlite_scanner / spatial / DUCKLAKE_CI env)

Test plan

  • Local build + test passes
  • Remote CI on the merge — all the previously-red C++ workflows should now be green
  • just test again after merge to main

dentiny and others added 30 commits April 22, 2026 01:51
…er-change-in-txn

Fix drop table/view after change in txn
Allow compaction to finish without an output file when the source files have zero live rows. This lets merge_adjacent_files compact zero-row parquet files without tripping the single-output-file assertion while still rejecting missing output for non-empty input.

Fixes duckdb#525
…y-files

Fix merge_adjacent_files with empty source files
…in-txn

Fix ducklake stats for columns with default
…ename

Fix view rename but comment dropped
KumoSiunaus and others added 30 commits May 31, 2026 15:47
Per review feedback: comments recounting what was wrong before the fix (the
old local-index behavior, the mis-attributed snapshots, the wrong-snapshot
symptom) add no information for readers without that context. Rewrite them to
describe what the current code does and what each test asserts, keeping the
explanation that output positions come from global_column_ids.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…napshot-projection-order

fix: correct delete snapshot_id under virtual-column projection reordering (duckdb#1199)
Fix ducklake scan serialization for window partition
Server-side transaction retrial for Quack
…che-eviction

Evict DuckLake schema cache on snapshot expiration
…he-entry-estimated-size

Improve schema cache entry estimated size
Brings in 242 upstream commits, dominated by PR duckdb#1216 ("Merge V1.5 ->
Main") which folded ~6 weeks of v1.5-variegata work into upstream main
on 2026-06-09. The most important contents for this fork:

- PR duckdb#1150's TableFilter/ExpressionFilter rename and related
  OPTIONAL_FILTER -> LEGACY_OPTIONAL_FILTER / OptionalFilter ->
  optional_ptr API drift fixes, which were the cause of every red
  C++ test workflow on our main since 2026-05-09.
- Server-side commit / ducklake_commit refactor.
- Quack catalog integration scaffolding.
- v1.5.3 release prep and assorted dentiny bug fixes.
- duckdb submodule + .github/duckdb-version moved off "main" to a
  pinned SHA (a1b15369), so CI is no longer a moving target.

Conflict resolution (one file, two hunks):

  .github/workflows/MainDistributionPipeline.yml

- duckdb-next-build "uses:" — kept HEAD's vendored copy
  (./.github/workflows/_extension_distribution.yml). Upstream
  switched to @v1.5-variegata; we still vendor to satisfy the
  PostHog org SHA-pin policy. Comment updated to record this.
- publish-github-release job — kept HEAD verbatim. This is our
  PR #4 binary-publish job; upstream has no equivalent.

Local verification:

  just build  ->  748/748, no errors
  just test   ->  441 test cases, 15,753 assertions, all passing
                  (18 skipped: httpfs / postgres_scanner /
                   sqlite_scanner / spatial / DUCKLAKE_CI env)
Sign up for free to 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.