From f3639180025c6471883a5900c26a0a6afc07efe5 Mon Sep 17 00:00:00 2001 From: Peter Bieringer Date: Tue, 8 Jul 2025 18:02:41 +0200 Subject: [PATCH] Fix: logging ignores not retrievable get_native_id if not supported by OS, fixes https://github.com/Kozea/Radicale/issues/1817 --- radicale/log.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/radicale/log.py b/radicale/log.py index ef2eb703..1dde25d2 100644 --- a/radicale/log.py +++ b/radicale/log.py @@ -77,7 +77,13 @@ class IdentLogRecordFactory: ident += "/%s" % (record.threadName or "unknown") if (sys.version_info >= (3, 8) and record.thread == threading.get_ident()): - tid = threading.get_native_id() + try: + tid = threading.get_native_id() + except AttributeError: + # so far function not existing e.g. on SunOS + # see also https://docs.python.org/3/library/threading.html#threading.get_native_id + tid = None + record.ident = ident # type:ignore[attr-defined] record.tid = tid # type:ignore[attr-defined] return record