From 75d6de5ec8f0bc97d7df81bcbc1a7eefdab1c216 Mon Sep 17 00:00:00 2001 From: Leon White Date: Fri, 13 Mar 2026 14:46:51 +0100 Subject: [PATCH] testing/duckdb: upgrade to 1.5.0 --- testing/duckdb/APKBUILD | 11 +++++++---- testing/duckdb/fix-oob-array-access.patch | 14 ++++++++++++++ 2 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 testing/duckdb/fix-oob-array-access.patch diff --git a/testing/duckdb/APKBUILD b/testing/duckdb/APKBUILD index becc65d2c25..ca5d9476d26 100644 --- a/testing/duckdb/APKBUILD +++ b/testing/duckdb/APKBUILD @@ -1,9 +1,9 @@ maintainer="Leon White >" pkgname=duckdb -pkgver=1.4.4 +pkgver=1.5.0 pkgrel=0 # Run `git describe --tags --long` from source repo checked out at the $pkgver tag to get this 10-character hash -_pkghash=6ddac802ff +_pkghash=3a3967aa81 pkgdesc="High-performance analytical database system" url="https://duckdb.org" # No support for 32-bit or big-endian architectures @@ -22,7 +22,9 @@ subpackages=" $pkgname-doc $pkgname-libs " -source="$pkgname-$pkgver.tar.gz::https://github.com/duckdb/duckdb/archive/refs/tags/v$pkgver.tar.gz" +source="$pkgname-$pkgver.tar.gz::https://github.com/duckdb/duckdb/archive/refs/tags/v$pkgver.tar.gz + fix-oob-array-access.patch + " export OVERRIDE_GIT_DESCRIBE="v$pkgver-0-g$_pkghash" @@ -55,5 +57,6 @@ package() { } sha512sums=" -2287ff1af67808e495ca4da527bd54e9c9f2044ed1bb4749cdaeee7993a7b0edca73cccd476a607442a4bf313b43e2358bf6ca28035e2dbe52b16847f6e5b30a duckdb-1.4.4.tar.gz +c7fabf6e4e0ccf3d1f9bc750c23def714ebe460e82e8c0e06ac157f50c245224807fd717751de65fb51e6203db4e30adb5c7500fb4524696d96d1efab34fb395 duckdb-1.5.0.tar.gz +77d745eb7c26881125707e5bec5a38c9c6179a30d36ead435d593f97ad56bf428070b744e02faa4d33d02ae46596ab51fc38d9e285a23313ecc8f1d5b8acb2cf fix-oob-array-access.patch " diff --git a/testing/duckdb/fix-oob-array-access.patch b/testing/duckdb/fix-oob-array-access.patch new file mode 100644 index 00000000000..61c1e161bd7 --- /dev/null +++ b/testing/duckdb/fix-oob-array-access.patch @@ -0,0 +1,14 @@ +diff --git a/src/execution/operator/join/physical_iejoin.cpp b/src/execution/operator/join/physical_iejoin.cpp +index fd392f3b9d..ecb89363ad 100644 +--- a/src/execution/operator/join/physical_iejoin.cpp ++++ b/src/execution/operator/join/physical_iejoin.cpp +@@ -1367,6 +1367,9 @@ void IEJoinGlobalSourceState::Initialize() { + + bool IEJoinGlobalSourceState::TryPrepareNextStage() { + // Inside lock ++ if (stage == IEJoinSourceStage::DONE) { ++ return true; ++ } + const auto stage_count = GetStageCount(stage); + const auto stage_next = GetStageNext(stage).load(); + if (stage_next >= stage_count) {