diff --git a/plugins/parquet/CMakeLists.txt b/plugins/parquet/CMakeLists.txt index b222812052f..0bb896b2a99 100644 --- a/plugins/parquet/CMakeLists.txt +++ b/plugins/parquet/CMakeLists.txt @@ -24,7 +24,13 @@ else () set(PARQUET_LIBRARY Parquet::parquet_static) endif () -find_package(Parquet 10.0) +find_package(Parquet) +if (Parquet_VERSION_MAJOR LESS 10) + message( + FATAL_ERROR + "The Parquet plugin requires at least Parquet version 10.0, but found ${PARQUET_VERSION}" + ) +endif () if (NOT Parquet_FOUND) # Compatibility for Arrow < 10. The ParquetConfig.cmake file is in the wrong # location in that case. diff --git a/vast/integration/integration.py b/vast/integration/integration.py index 3b68c5147bd..7b93839b00f 100755 --- a/vast/integration/integration.py +++ b/vast/integration/integration.py @@ -340,7 +340,14 @@ def __init__( LOGGER.debug(f"starting server fixture: {command}") LOGGER.debug(f"waiting for port {self.port} to be available") if not wait.tcp.closed(self.port, timeout=5): - raise RuntimeError("Port is blocked by another process.\nAborting tests...") + LOGGER.warning( + f"Couldn't aquire port, attempting to kill lingering subprocesses" + ) + signal_subprocs(signal.SIGKILL) + if not wait.tcp.closed(self.port, timeout=5): + raise RuntimeError( + "Port is blocked by another process.\nAborting tests..." + ) self.cwd.mkdir(parents=True) out = open(self.cwd / "out", "w") err = open(self.cwd / "err", "w") @@ -364,16 +371,19 @@ def stop(self): LOGGER.debug(f"stopping server fixture: {command}") stop_out = open(self.cwd / "stop.out", "w") stop_err = open(self.cwd / "stop.err", "w") - stop = 0 try: stop = spawn( command, cwd=self.cwd, stdout=stop_out, stderr=stop_err, - ).wait(STEP_TIMEOUT) + ) + stop.wait(STEP_TIMEOUT) except: - stop.kill() + pass + else: + if isinstance(stop, subprocess.Popen): + stop.kill() try: self.process.wait(STEP_TIMEOUT) except: @@ -610,7 +620,7 @@ def match(x, names): test_result = Result.FAILURE for i in range(0, args.repetitions): test_result = tester.run(name, definition) - if test_result is Result.TIMEOUT: + if test_result is not Result.SUCCESS: if i < args.repetitions - 1: # Try again. LOGGER.warning( @@ -680,8 +690,8 @@ def main(): "-r", "--repetitions", type=int, - default=3, - help="Repeat count for tests that timed out", + default=10, + help="Number of repetitions for failed tests", ) parser.add_argument( "-l", diff --git a/vast/integration/vast_integration_suite.yaml b/vast/integration/vast_integration_suite.yaml index 47ef8d29eac..77f1e86834d 100644 --- a/vast/integration/vast_integration_suite.yaml +++ b/vast/integration/vast_integration_suite.yaml @@ -422,7 +422,7 @@ tests: transformation: python @./misc/scripts/print-arrow.py Arrow Import: condition: version | jq -e '."Apache Arrow"' - tags: [import, arrow] + tags: [import, arrow, disabled] fixture: ServerTester steps: - command: import -b --batch-encoding=arrow arrow