Changeset: 630ca6efd4cf for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/630ca6efd4cf
Branch: default
Log Message:

Merge with Mar2025 branch.


diffs (34 lines):

diff --git a/sql/backends/monet5/vaults/odbc/Tests/SingleServer 
b/sql/backends/monet5/vaults/odbc/Tests/SingleServer
new file mode 100644
--- /dev/null
+++ b/sql/backends/monet5/vaults/odbc/Tests/SingleServer
@@ -0,0 +1,1 @@
+--loadmodule odbc_loader
diff --git a/testing/process.py b/testing/process.py
--- a/testing/process.py
+++ b/testing/process.py
@@ -265,13 +265,23 @@ class Popen(subprocess.Popen):
 
     def __exit__(self, exc_type, value, traceback):
         self.terminate()
+        try:
+            self.wait(timeout=10)
+        except TimeoutExpired:
+            self.kill()
+            self.wait()
         self._clean_dotmonetdbfile()
         super().__exit__(exc_type, value, traceback)
         if self.returncode and self.returncode < 0 and -self.returncode in 
_coresigs:
             raise RuntimeError('process exited with coredump generating signal 
%r' % signal.Signals(-self.returncode))
 
     def __del__(self):
-        if self._child_created:
+        if self._child_created and self.returncode is None:
+            # this may well fail in Python 3.13.2 ("TypeError:
+            # 'NoneType' object is not callable" in import signal), but
+            # it is very unlikely we actually get here since the above
+            # __exit__ will normally have been executed first and so
+            # returncode will have been set
             self.terminate()
         self._clean_dotmonetdbfile()
         super().__del__()
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to