Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Windows CI: parallel vcpkg z-applocal steps fail with file lock

Aperta
#944 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
cpp

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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-applocal post-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.
Lingua principale
C++
Stelle
223
Fork
127
Merge medio
1g 13h
PR unite (30g)
28

Preparare l'ambiente

Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di apache/iceberg-cpp

Tutte le issue di apache/iceberg-cpp

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.