public inbox for [email protected]help / color / mirror / Atom feed
[PATCH 1/2] Added Windows with MinGW environment in Cirrus CI 2+ messages / 2 participants [nested] [flat]
* [PATCH 1/2] Added Windows with MinGW environment in Cirrus CI @ 2022-02-21 11:46 Melih Mutlu <[email protected]> 0 siblings, 0 replies; 2+ messages in thread From: Melih Mutlu @ 2022-02-21 11:46 UTC (permalink / raw) --- .cirrus.yml | 78 ++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 65 insertions(+), 13 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index a9193c2c34f..472661c0936 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -339,13 +339,29 @@ task: cores_script: src/tools/ci/cores_backtrace.sh macos "${HOME}/cores" +WINDOWS_ENVIRONMENT_BASE: &WINDOWS_ENVIRONMENT_BASE + env: + # Half the allowed per-user CPU cores + CPUS: 4 + # The default working dir is in a directory msbuild complains about + CIRRUS_WORKING_DIR: "c:/cirrus" + + # Avoids port conflicts between concurrent tap test runs + PG_TEST_USE_UNIX_SOCKETS: 1 + + only_if: $CIRRUS_CHANGE_MESSAGE !=~ '.*\nci-os-only:.*' || $CIRRUS_CHANGE_MESSAGE =~ '.*\nci-os-only:[^\n]*windows.*' + + sysinfo_script: | + chcp + systeminfo + powershell -Command get-psdrive -psprovider filesystem + set + task: + << : *WINDOWS_ENVIRONMENT_BASE name: Windows - Server 2019, VS 2019 env: - # Half the allowed per-user CPU cores - CPUS: 4 - # Our windows infrastructure doesn't have test concurrency above the level # of a single vcregress test target. Due to that, it's useful to run prove # with multiple jobs. For the other tasks it isn't, because two sources @@ -355,15 +371,11 @@ task: # likely can be improved upon further. PROVE_FLAGS: -j10 --timer - # The default cirrus working dir is in a directory msbuild complains about - CIRRUS_WORKING_DIR: "c:/cirrus" # Avoid re-installing over and over NO_TEMP_INSTALL: 1 # git's tar doesn't deal with drive letters, see # https://postgr.es/m/b6782dc3-a7b0-ed56-175f-f8f54cb08d67%40dunslane.net TAR: "c:/windows/system32/tar.exe" - # Avoids port conflicts between concurrent tap test runs - PG_TEST_USE_UNIX_SOCKETS: 1 PG_REGRESS_SOCK_DIR: "c:/cirrus/" # -m enables parallelism # verbosity:minimal + Summary reduce verbosity, while keeping a summary of @@ -398,12 +410,6 @@ task: cpu: $CPUS memory: 4G - sysinfo_script: | - chcp - systeminfo - powershell -Command get-psdrive -psprovider filesystem - set - setup_additional_packages_script: | REM 3min REM choco install -y --no-progress --version=1.0.0 visualstudio2022-workload-vctools --install-args="--add Microsoft.VisualStudio.Component.VC.CLI.Support" @@ -475,6 +481,52 @@ task: path: "crashlog-*.txt" type: text/plain +task: + << : *WINDOWS_ENVIRONMENT_BASE + name: Windows - Server 2019, MinGW64 + windows_container: + image: $CONTAINER_REPO/windows_ci_mingw64:latest + cpu: $CPUS + memory: 4G + env: + CCACHE_DIR: C:/msys64/ccache + BUILD_DIR: "%CIRRUS_WORKING_DIR%/build" + + ccache_cache: + folder: ${CCACHE_DIR} + + mingw_info_script: + - C:\msys64\usr\bin\dash.exe -lc "where gcc" + - C:\msys64\usr\bin\dash.exe -lc "gcc --version" + - C:\msys64\usr\bin\dash.exe -lc "where perl" + - C:\msys64\usr\bin\dash.exe -lc "perl --version" + + configure_script: + - C:\msys64\usr\bin\dash.exe -lc "mkdir %BUILD_DIR% && + cd %BUILD_DIR% && + %CIRRUS_WORKING_DIR%/configure + --enable-cassert + --enable-tap-tests + --with-icu + --with-libxml + --with-libxslt + --with-lz4 + --enable-debug + CC='ccache gcc' + CXX='ccache g++' + CFLAGS='-Og -ggdb -pipe' + CXXFLAGS='-Og -ggdb'" + + build_script: + C:\msys64\usr\bin\dash.exe -lc "cd %BUILD_DIR% && make -s world-bin -j${CPUS}" + + upload_caches: ccache + + tests_script: + - set "NoDefaultCurrentDirectoryInExePath=0" + - C:\msys64\usr\bin\dash.exe -lc "cd %BUILD_DIR% && make -s ${CHECK} ${CHECKFLAGS} -j${CPUS} TMPDIR=%BUILD_DIR%/tmp_install" + + on_failure: *on_failure task: name: CompilerWarnings -- 2.17.1 --lildS9pRFgpM/xzO Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-f.patch" ^ permalink raw reply [nested|flat] 2+ messages in thread
* Re: Why does exec_simple_query requires 2 snapshots @ 2025-02-18 15:43 Tom Lane <[email protected]> 0 siblings, 0 replies; 2+ messages in thread From: Tom Lane @ 2025-02-18 15:43 UTC (permalink / raw) To: Andy Fan <[email protected]>; +Cc: [email protected] <[email protected]> Andy Fan <[email protected]> writes: > My question is why can't we share the same snapshot for the 2 cases? > parser & planner requires Catalog Snapshot which should be the > latest one, but in the above case, looks the executor can reuse it as > well. Is there anything I missed? Many years ago, we committed a patch to do exactly that. We had to back it out again because it broke too many real-world scenarios. I'm too lazy to search the archives for you, but you might be able to find the commit and revert by searching the git history. regards, tom lane ^ permalink raw reply [nested|flat] 2+ messages in thread
end of thread, other threads:[~2025-02-18 15:43 UTC | newest] Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2022-02-21 11:46 [PATCH 1/2] Added Windows with MinGW environment in Cirrus CI Melih Mutlu <[email protected]> 2025-02-18 15:43 Re: Why does exec_simple_query requires 2 snapshots Tom Lane <[email protected]>
This inbox is served by agora; see mirroring instructions for how to clone and mirror all data and code used for this inbox