Windows CI: parallel vcpkg z-applocal steps fail with file lock
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 45/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- cpp
- Bereich
- build-system, ci-cd
Rechercherichtung
Start with the linked Windows CI run and the Build Iceberg step, then inspect the build configuration that invokes vcpkg z-applocal for targets such as parquet_test.exe. Reproduce the parallel linking failure and determine which shared dependency file is locked; done means the Windows CI job completes reliably without z-applocal file-lock errors.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
The Windows CI job fails during the Build Iceberg step because a post-link vcpkg z-applocal command cannot access a file that is locked by another process.
Failure details
Run:
https://github.com/apache/iceberg-cpp/actions/runs/35413148123/job/105816560819
The build reaches 955/958 targets. Compilation succeeds, but linking parquet_test.exe fails while running:
vcpkg.exe z-applocal
--target-binary=.../build/src/iceberg/test/parquet_test.exe
--installed-bin-dir=C:/vcpkg/installed/x64-windows/debug/bin
The reported error is:
The process cannot access the file because it is being used by another process.
Ninja then stops with exit code 1. The exact locked file is not reported.
Suspected cause
Multiple Windows test targets are linked in parallel, and their post-link z-applocal steps may concurrently copy or access the same dependency DLLs.
This appears to be a Windows build/deployment race rather than a C++ compile failure. The compiler reported zero compilation failures.
Possible fixes
- Serialize the
z-applocalpost-link steps on Windows. - Use a target-specific dependency copy directory.
- Add a bounded retry for transient file-lock failures.
- Disable automatic applocal deployment for test targets and copy dependencies once after the build.
- Vorherrschende Sprache
- C++
- Sterne
- 223
- Forks
- 127
- Ø Merge
- 1 T. 13 Std.
- Gemergte PRs (30 T.)
- 28
Entwicklungsumgebung
Die Einrichtungsdateien dieses Projekts haben wir noch nicht geprüft. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus apache/iceberg-cpp
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
apache/iceberg-cpp#973 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 20/100
apache/iceberg-cpp#959 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
apache/iceberg-cpp#955 · 3 Kommentare · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
apache/iceberg-cpp#946 · 5 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 72/100
apache/iceberg-cpp#943 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in apache/iceberg-cpp
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Icinga/icinga2#11058 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
component: split-view platform: windows
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
zen-browser/desktop#15616 · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
-
area/ysql kind/bug priority/medium status/awaiting-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
yugabyte/yugabyte-db#34415 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
WayfireWM/wayfire#3148 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag