From 5dc75ddaf0fc02f1a8616fddb607d5d8a15004c9 Mon Sep 17 00:00:00 2001 From: James McMullan Date: Tue, 3 Dec 2024 08:53:20 -0500 Subject: [PATCH 1/4] HPCC-32961 OwnedSpanScope re-assignment causes early span end - Deleted operators that could potentially cause issues Signed-off-by: James McMullan James.McMullan@lexisnexis.com --- system/jlib/jtrace.hpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/system/jlib/jtrace.hpp b/system/jlib/jtrace.hpp index 7f1e7d9431b..86e2fb66115 100644 --- a/system/jlib/jtrace.hpp +++ b/system/jlib/jtrace.hpp @@ -164,11 +164,17 @@ class jlib_decl OwnedSpanScope public: OwnedSpanScope() = default; OwnedSpanScope(ISpan * _ptr); + OwnedSpanScope(const OwnedSpanScope& rhs) = delete; + OwnedSpanScope(OwnedSpanScope&& rhs) = default; ~OwnedSpanScope(); inline ISpan * operator -> () const { return span; } inline operator ISpan *() const { return span; } + inline OwnedSpanScope& operator=(ISpan * ptr) = delete; + inline OwnedSpanScope& operator=(const OwnedSpanScope& rhs) = delete; + inline OwnedSpanScope& operator=(OwnedSpanScope&& rhs) = delete; + void clear(); ISpan * query() const { return span; } void set(ISpan * _span); From 0a95949591024aa49ada47fb60c41ab4dfaf7852 Mon Sep 17 00:00:00 2001 From: M Kelly Date: Tue, 3 Dec 2024 11:00:23 -0500 Subject: [PATCH 2/4] HPCC-33068 Securesocket handle error add errno to log message Signed-off-by: M Kelly --- system/security/securesocket/securesocket.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/system/security/securesocket/securesocket.cpp b/system/security/securesocket/securesocket.cpp index bb59476cf1b..568340590cd 100644 --- a/system/security/securesocket/securesocket.cpp +++ b/system/security/securesocket/securesocket.cpp @@ -770,6 +770,7 @@ void CSecureSocket::handleError(int ssl_err, bool writing, bool wait, unsigned t { // if !wait, then we only perform ssl_err checking, we do not wait_read/wait_write or timeout int rc = 0; + int sockErr = 0; switch (ssl_err) { case SSL_ERROR_ZERO_RETURN: @@ -791,7 +792,7 @@ void CSecureSocket::handleError(int ssl_err, bool writing, bool wait, unsigned t } case SSL_ERROR_SYSCALL: { - int sockErr = SOCKETERRNO(); + sockErr = SOCKETERRNO(); if (sockErr == EAGAIN || sockErr == EWOULDBLOCK) { if (wait) @@ -810,7 +811,7 @@ void CSecureSocket::handleError(int ssl_err, bool writing, bool wait, unsigned t char errbuf[512]; ERR_error_string_n(ssl_err, errbuf, 512); ERR_clear_error(); - VStringBuffer errmsg("%s error %d - %s", opStr, ssl_err, errbuf); + VStringBuffer errmsg("%s error %d (%d) - %s", opStr, ssl_err, sockErr, errbuf); if (m_loglevel >= SSLogMax) DBGLOG("Warning: %s", errmsg.str()); THROWJSOCKEXCEPTION_MSG(ssl_err, errmsg); From 0c29fe9f71b23977a4da817324b2cb3202c36ce0 Mon Sep 17 00:00:00 2001 From: Gordon Smith Date: Wed, 4 Dec 2024 09:20:06 +0000 Subject: [PATCH 3/4] HPCC-33071 GH Actions, bump macos versions macos-12 has been deprecated see: https://github.com/actions/runner-images/issues/10721 Signed-off-by: Gordon Smith --- .github/workflows/build-assets.yml | 2 +- .github/workflows/build-vcpkg.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index c5b568f8821..a5d581a6ce6 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -394,7 +394,7 @@ jobs: sudo: "" cmake_config_options: '-T host=x64 -A x64 -DUSE_OPTIONAL=OFF -DCLIENTTOOLS_ONLY=ON -DUSE_AZURE=OFF -DUSE_CASSANDRA=OFF -DUSE_JAVA=OFF -DUSE_OPENLDAP=OFF' cmake_build_options: "--config Release --parallel $NUMBER_OF_PROCESSORS" - - os: "macos-12" + - os: "macos-13" mono: "mono" sudo: "sudo" cmake_config_options: "-DCMAKE_BUILD_TYPE=Release -DUSE_OPTIONAL=OFF -DCLIENTTOOLS_ONLY=ON -DUSE_AZURE=OFF -DUSE_CASSANDRA=OFF -DUSE_JAVA=OFF -DUSE_OPENLDAP=OFF" diff --git a/.github/workflows/build-vcpkg.yml b/.github/workflows/build-vcpkg.yml index 6836d135c8f..6edc30aee79 100644 --- a/.github/workflows/build-vcpkg.yml +++ b/.github/workflows/build-vcpkg.yml @@ -251,13 +251,13 @@ jobs: cmake_config_options: '-T host=x64 -A x64 -DUSE_OPTIONAL=OFF -DCLIENTTOOLS_ONLY=ON -DUSE_AZURE=OFF -DUSE_CASSANDRA=OFF -DUSE_JAVA=OFF -DUSE_OPENLDAP=OFF' cmake_build_options: "--config Release --parallel $NUMBER_OF_PROCESSORS" event_name: "pull_request" - - os: "macos-11" + - os: "macos-13" mono: "mono" sudo: "sudo" cmake_config_options: "-DCMAKE_BUILD_TYPE=Release -DUSE_OPTIONAL=OFF -DCLIENTTOOLS_ONLY=ON -DUSE_AZURE=OFF -DUSE_JAVA=OFF -DUSE_OPENLDAP=OFF" cmake_build_options: "--parallel $(nproc)" event_name: "schedule" - - os: "macos-12" + - os: "macos-14" mono: "mono" sudo: "sudo" cmake_config_options: "-DCMAKE_BUILD_TYPE=Release -DUSE_OPTIONAL=OFF -DCLIENTTOOLS_ONLY=ON -DUSE_AZURE=OFF -DUSE_CASSANDRA=OFF -DUSE_JAVA=OFF -DUSE_OPENLDAP=OFF" From 779e824f5fc5ef667246822dbaa8382b97e90ae0 Mon Sep 17 00:00:00 2001 From: Gavin Halliday Date: Wed, 4 Dec 2024 16:00:21 +0000 Subject: [PATCH 4/4] HPCC-33073 Fix error in unittests caused by getPlaneAttributeValue(nullptr) Signed-off-by: Gavin Halliday --- system/jlib/jfile.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/system/jlib/jfile.cpp b/system/jlib/jfile.cpp index ed913cd2ebf..9235d5470ba 100644 --- a/system/jlib/jfile.cpp +++ b/system/jlib/jfile.cpp @@ -7998,6 +7998,8 @@ const char *getPlaneAttributeString(PlaneAttributeType attr) unsigned __int64 getPlaneAttributeValue(const char *planeName, PlaneAttributeType planeAttrType, unsigned __int64 defaultValue) { + if (!planeName) + return defaultValue; assertex(planeAttrType < PlaneAttributeCount); CriticalBlock b(planeAttributeMapCrit); auto it = planeAttributesMap.find(planeName);