Browse Source

HPCC-2695 More clang warnings

Fixed more warnings generated by Clang compiler.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Richard Chapman 12 năm trước cách đây
mục cha
commit
a544fcf95c

+ 1 - 1
cmake_modules/commonSetup.cmake

@@ -191,7 +191,7 @@ IF ("${COMMONSETUP_DONE}" STREQUAL "")
     if (CMAKE_COMPILER_IS_CLANGXX)
       SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=logical-op-parentheses -Werror=bool-conversions -Werror=return-type -Werror=comment")
       SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}  -Werror=bitwise-op-parentheses -Werror=tautological-compare")
-      SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}  -Wno-switch-enum")
+      SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}  -Wno-switch-enum -Wno-format-zero-length")
     endif()
     # All of these are defined in platform.h too, but need to be defned before any system header is included
     ADD_DEFINITIONS (-D_LARGEFILE_SOURCE=1 -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -D__USE_LARGEFILE64=1 -D__USE_FILE_OFFSET64=1)

+ 1 - 1
common/thorhelper/roxiehelper.cpp

@@ -853,7 +853,7 @@ void FlushingStringBuffer::append(unsigned len, const char *data)
     }
     catch (IException *E)
     {
-        logctx.logOperatorException(E, __FILE__, __LINE__, NULL);
+        logctx.logOperatorException(E, __FILE__, __LINE__, "FlushingStringBuffer::append");
         throw;
     }
 }

+ 6 - 5
common/thorhelper/thortparse.cpp

@@ -22,11 +22,6 @@
 
 //#define TRACING
 
-#ifndef TRACING
-#undef LOG
-#define LOG (void)
-#endif
-
 //---------------------------------------------------------------------------
 void doUnwindRelease(GrammarSymbol * symbol, CIArrayOf<GrammarSymbol> & pending)
 {
@@ -578,7 +573,9 @@ bool LRActiveState::mergePackedNode(unsigned stateId, StackElement * next, bool
                     if (curSymbol->canMerge(nextSymbol))
                     {
                         cur->shifted.setown(curSymbol->createMerged(nextSymbol));
+#ifdef TRACING
                         LOG(MCdebugProgress, unknownJob, "Nodes Merged: %p = %p, %p", cur->shifted.get(), curSymbol, nextSymbol);
+#endif
                         return true;
                     }
                 }
@@ -851,7 +848,9 @@ void LRParser::doShifts(LRActiveState * active, GrammarSymbol * next)
         state_id nextState = curState.getShift(nextid);
         if (nextState != NO_STATE)
         {
+#ifdef TRACING
             LOG(MCdebugProgress, unknownJob, "Shift to state %d", nextState);
+#endif
             activeOutput->addElementOwn(createState(&cur, nextState, next), chooseBest);
         }
         if (curState.canAccept(nextid))
@@ -860,7 +859,9 @@ void LRParser::doShifts(LRActiveState * active, GrammarSymbol * next)
             {
                 GrammarSymbol * sym = accept->shifted;
                 accepted.append(*LINK(sym));
+#ifdef TRACING
                 LOG(MCdebugProgress, unknownJob, "Accepted %p[%p]", accept, sym);
+#endif
             }
         }
     }

+ 6 - 0
dali/base/dasds.cpp

@@ -8482,6 +8482,12 @@ unsigned querySDSLockTimeoutCount()
     return SDSLockTimeoutCount;
 }
 
+ISDSException *MakeSDSException(int errorCode)
+{
+    ISDSException *ret = new CSDSException(errorCode);
+    return ret;
+}
+
 ISDSException *MakeSDSException(int errorCode, const char *errorMsg, ...)
 {
     if(errorCode == SDSExcpt_LockTimeout)

+ 5 - 1
dali/base/dasds.ipp

@@ -378,6 +378,9 @@ class CSDSException : public CInterface, implements ISDSException
 public:
     IMPLEMENT_IINTERFACE;
 
+    CSDSException(int _errCode) : errCode(_errCode)
+    {
+    }
     CSDSException(int _errCode, const char *_errMsg, va_list &args) : errCode(_errCode)
     {
         if (_errMsg)
@@ -465,7 +468,8 @@ private:
     StringBuffer errMsg;
 };
 
-ISDSException *MakeSDSException(int errorCode, const char *errorMsg = NULL, ...) __attribute__((format(printf, 2, 3)));
+ISDSException *MakeSDSException(int errorCode, const char *errorMsg, ...) __attribute__((format(printf, 2, 3)));
+ISDSException *MakeSDSException(int errorCode);
 
 inline void throwMbException(const char *errorMsg, MemoryBuffer &mb)
 {

+ 9 - 8
ecl/hql/hqlatoms.cpp

@@ -422,7 +422,8 @@ SysAtomTable * sysAtomTable;
 
 _ATOM createSystemAtom(const char * s) { return sysAtomTable->create(s); }
 
-#define MAKESYSATOM(x)  static_cast<SysAtom *>(_##x##_Atom = createSystemAtom("$_" #x "_"))
+#define MAKESYSATOM(x)  _##x##_Atom = createSystemAtom("$_" #x "_")
+#define MAKESYSATOMX(x)  static_cast<SysAtom *>(_##x##_Atom = createSystemAtom("$_" #x "_"))
 
 MODULE_INIT(INIT_PRIORITY_HQLATOM)
 {
@@ -448,13 +449,13 @@ MODULE_INIT(INIT_PRIORITY_HQLATOM)
     MAKEATOM(assertConst);
     MAKEATOM(at);
     MAKEATOM(atmost);
-    MAKESYSATOM(attrAligned)->setAttrId(EAaligned);
-    MAKESYSATOM(attrLocationIndependent)->setAttrId(EAlocationIndependent);
-    MAKESYSATOM(attrRecordCount)->setAttrId(EArecordCount);
-    MAKESYSATOM(attrDiskSerializedForm)->setAttrId(EAdiskserializedForm);
-    MAKESYSATOM(attrInternalSerializedForm)->setAttrId(EAinternalserializedForm);
-    MAKESYSATOM(attrSize)->setAttrId(EAsize);
-    MAKESYSATOM(attrUnadorned)->setAttrId(EAunadorned);
+    MAKESYSATOMX(attrAligned)->setAttrId(EAaligned);
+    MAKESYSATOMX(attrLocationIndependent)->setAttrId(EAlocationIndependent);
+    MAKESYSATOMX(attrRecordCount)->setAttrId(EArecordCount);
+    MAKESYSATOMX(attrDiskSerializedForm)->setAttrId(EAdiskserializedForm);
+    MAKESYSATOMX(attrInternalSerializedForm)->setAttrId(EAinternalserializedForm);
+    MAKESYSATOMX(attrSize)->setAttrId(EAsize);
+    MAKESYSATOMX(attrUnadorned)->setAttrId(EAunadorned);
     MAKEATOM(ave);
     MAKEATOM(backup);
     MAKEATOM(bcd);

+ 1 - 1
ecl/hqlcpp/hqlttcpp.cpp

@@ -10593,7 +10593,7 @@ IHqlExpression * HqlTreeNormalizer::transformMap(IHqlExpression * expr)
 {
     unsigned max = numRealChildren(expr);
     OwnedHqlExpr elseExpr = transform(expr->queryChild(max-1));
-    for (unsigned idx = max-1; idx-- != 0; idx)
+    for (unsigned idx = max-1; idx-- != 0; )
     {
         IHqlExpression * cur = expr->queryChild(idx);
         elseExpr.setown(createIf(transform(cur->queryChild(0)), transform(cur->queryChild(1)), elseExpr.getClear()));

+ 5 - 1
ecl/hthor/hthorkey.cpp

@@ -2986,7 +2986,11 @@ public:
 
     KeyedLookupPartHandler(IJoinProcessor &_owner, IDistributedFilePart *_part, DistributedKeyLookupHandler * _tlk, unsigned _subno, IThreadPool * _threadPool, IAgentContext &_agent);
 
-    ~KeyedLookupPartHandler() { while(pending.dequeue()) 0; } //do nothing but dequeue as don't own MatchSets
+    ~KeyedLookupPartHandler()
+    {
+        while(pending.dequeue())
+            ;  //do nothing but dequeue as don't own MatchSets
+    }
 
 private:
     virtual void doRequest(MatchSet * ms)

+ 1 - 0
esp/bindings/bind_ng.hpp

@@ -112,6 +112,7 @@ public:
     void setServAddress(const char * host, short port){}
     void getServAddress(StringBuffer & host, short & port){}
     void AuditMessage(AuditType type, const char * filterType, const char * title, const char * parms, ...) {}
+    void AuditMessage(AuditType type, const char * filterType, const char * title) {}
 
     void setServiceName(const char *name){servname.clear().append(servname);}
     const char * queryServiceName(const char *name){return servname.str();}

+ 3 - 3
esp/bindings/http/platform/httpbinding.cpp

@@ -547,7 +547,7 @@ bool EspHttpBinding::basicAuth(IEspContext* ctx)
     if(user == NULL)
     {
         WARNLOG("Can't find user in context");
-        ctx->AuditMessage(AUDIT_TYPE_ACCESS_FAILURE, "Authentication", "Access Denied: No username provided", NULL);
+        ctx->AuditMessage(AUDIT_TYPE_ACCESS_FAILURE, "Authentication", "Access Denied: No username provided");
         return false;
     }
 
@@ -565,9 +565,9 @@ bool EspHttpBinding::basicAuth(IEspContext* ctx)
     if(!authenticated)
     {
         if (user->getAuthenticateStatus() == AS_PASSWORD_EXPIRED)
-            ctx->AuditMessage(AUDIT_TYPE_ACCESS_FAILURE, "Authentication", "ESP password is expired", NULL);
+            ctx->AuditMessage(AUDIT_TYPE_ACCESS_FAILURE, "Authentication", "ESP password is expired");
         else
-            ctx->AuditMessage(AUDIT_TYPE_ACCESS_FAILURE, "Authentication", "Access Denied: User or password invalid", NULL);
+            ctx->AuditMessage(AUDIT_TYPE_ACCESS_FAILURE, "Authentication", "Access Denied: User or password invalid");
         return false;
     }
     bool authorized = true;

+ 7 - 0
esp/platform/espcontext.cpp

@@ -373,6 +373,7 @@ public:
     }
 
     void AuditMessage(AuditType type, const char *filterType, const char *title, const char *parms, ...);
+    void AuditMessage(AuditType type, const char *filterType, const char *title);
 
     IProperties * queryXslParameters()
     {
@@ -480,6 +481,12 @@ void CEspContext::AuditMessage(AuditType type, const char *filterType, const cha
     AUDIT(type, msg.str());
 }
 
+void CEspContext::AuditMessage(AuditType type, const char *filterType, const char *title)
+{
+    VStringBuffer msg("%s\n\tProcess: esp\n\tService: %s\n\tUser: %s", title, m_servName.str(), queryUserId());
+    AUDIT(type, msg.str());
+}
+
 bool CEspContext::suppressed(const char* structName, const char* fieldName) 
 {
     if (!m_mapinfo)

+ 7 - 1
esp/platform/sechandler.cpp

@@ -175,7 +175,7 @@ bool SecHandler::authorizeSecReqFeatures(StringArray & features, IEspStringIntMa
 
     if(m_user.get() == NULL)
     {
-        AuditMessage(AUDIT_TYPE_ACCESS_FAILURE, "Authorization", "Access Denied: No username provided", NULL);
+        AuditMessage(AUDIT_TYPE_ACCESS_FAILURE, "Authorization", "Access Denied: No username provided");
         return false;
     }
 
@@ -299,3 +299,9 @@ void SecHandler::AuditMessage(AuditType type, const char *filterType, const char
     va_end(args);
     AUDIT(type, msg.str());
 }
+
+void SecHandler::AuditMessage(AuditType type, const char *filterType, const char *title)
+{
+    VStringBuffer msg("%s\n\tProcess: esp\n\tUser: %s", title, m_user->getName());
+    AUDIT(type, msg.str());
+}

+ 1 - 0
esp/platform/sechandler.hpp

@@ -34,6 +34,7 @@ class SecHandler : public CInterface
 private:
     bool authorizeTrial(ISecUser& user,const char* pszFeatureUrl, SecAccessFlags & required_access);
     void AuditMessage(AuditType type, const char *filterType, const char *title, const char *parms, ...) __attribute__((format(printf, 5, 6)));
+    void AuditMessage(AuditType type, const char *filterType, const char *title);
 
 public:
     IMPLEMENT_IINTERFACE;

+ 1 - 0
esp/scm/esp.ecm

@@ -105,6 +105,7 @@ interface IEspContext : extends IInterface
     virtual void setServAddress(const char * host, short port) = 0;
     virtual void getServAddress(StringBuffer & host, short & port) = 0;
     virtual void AuditMessage(AuditType type, const char * filterType, const char * title, const char * parms, ...) __attribute__((format(printf, 5, 6))) = 0;
+    virtual void AuditMessage(AuditType type, const char * filterType, const char * title) = 0;
 
     virtual void setServiceName(const char *name)=0;
     virtual const char * queryServiceName(const char *name)=0;

+ 1 - 2
system/hrpc/hrpc.cpp

@@ -53,8 +53,7 @@ void HRPCtrace(const char *fmt, ...)
 
 
 #else 
-#define HRPCtrace if (0) (void)
-
+inline void HRPCtrace(const char *, ...) {}
 #endif
 
 

+ 1 - 1
system/jhtree/ctfile.cpp

@@ -130,7 +130,7 @@ void CKeyHdr::load(KeyHdr &_hdr)
     SwapBigEndian(hdr);
 
     if (0xffff != hdr.version && KEYBUILD_VERSION < hdr.version)
-        throw MakeKeyException(KeyExcpt_IncompatVersion, "This build is compatible with key versions <= %hu. Key is version %hu", KEYBUILD_VERSION, hdr.version);
+        throw MakeKeyException(KeyExcpt_IncompatVersion, "This build is compatible with key versions <= %u. Key is version %u", KEYBUILD_VERSION, (unsigned) hdr.version);
 }
 
 void CKeyHdr::write(IWriteSeq *out, CRC32 *crc)

+ 1 - 1
system/jlib/jdebug.cpp

@@ -862,7 +862,7 @@ memsize_t getMapInfo(const char *type)
         if (strstr(ln, typeStr.str()))
         {
             unsigned __int64 addrLow, addrHigh;
-            if (2 == sscanf(ln, "%16lx-%16lx", &addrLow, &addrHigh))
+            if (2 == sscanf(ln, "%16"I64F"x-%16"I64F"x", &addrLow, &addrHigh))
             {
                 ret = (memsize_t)(addrHigh-addrLow);
                 break;

+ 2 - 2
thorlcr/activities/catch/thcatchslave.cpp

@@ -89,7 +89,7 @@ public:
             catch (IException *e)
             {
                 eos = true;
-                ActPrintLog(e, NULL);
+                ActPrintLog(e);
                 e->Release();
                 helper->onExceptionCaught();
             }
@@ -122,7 +122,7 @@ public:
             catch (IException *e)
             {
                 eos = true;
-                ActPrintLog(e, NULL);
+                ActPrintLog(e);
                 e->Release();
                 helper->onExceptionCaught();
             }

+ 2 - 2
thorlcr/activities/keyedjoin/thkeyedjoinslave.cpp

@@ -1256,7 +1256,7 @@ class CKeyedJoinSlave : public CSlaveActivity, public CThorDataLink, implements
             }
             catch (IException *e)
             {
-                ::ActPrintLog(&owner, e, NULL);
+                ::ActPrintLog(&owner, e);
                 throw;
             }
             return NULL;
@@ -1440,7 +1440,7 @@ class CKeyedJoinSlave : public CSlaveActivity, public CThorDataLink, implements
             }
             catch (IException *e)
             {
-                ::ActPrintLog(&owner, e, NULL);
+                ::ActPrintLog(&owner, e);
                 throw;
             }
             noteStats(partManager->querySeeks(), partManager->queryScans());

+ 1 - 1
thorlcr/activities/lookupjoin/thlookupjoinslave.cpp

@@ -1270,7 +1270,7 @@ public:
             exception->errorMessage(errStr);
             errStr.append(")");
             IException *e2 = MakeActivityException(this, TE_TooMuchData, "%s", errStr.str());
-            ActPrintLog(e2, NULL);
+            ActPrintLog(e2);
             throw e2;
         }
     }

+ 1 - 1
thorlcr/activities/loop/thloopslave.cpp

@@ -81,7 +81,7 @@ public:
         }
         catch (IException *e)
         {
-            ActPrintLog(activity, e, NULL);
+            ActPrintLog(activity, e);
             exception.setown(e);
         }
         try { writer->flush(); }

+ 1 - 1
thorlcr/activities/selectnth/thselectnthslave.cpp

@@ -98,7 +98,7 @@ public:
         }
         catch (IException *e)
         {
-            ActPrintLog(e, NULL);
+            ActPrintLog(e);
             N=0;
             sendN();
             throw;

+ 5 - 5
thorlcr/activities/thactivityutil.cpp

@@ -587,7 +587,7 @@ static void _doReplicate(CActivityBase *activity, IPartDescriptor &partDesc, ICo
             catch (IException *)
             {
                 try { tmpIFile->remove(); }
-                catch (IException *e) { ActPrintLog(&activity->queryContainer(), e, NULL); e->Release(); }
+                catch (IException *e) { ActPrintLog(&activity->queryContainer(), e); e->Release(); }
                 throw;
             }
         }
@@ -619,7 +619,7 @@ void cancelReplicates(CActivityBase *activity, IPartDescriptor &partDesc)
             catch (IException *e)
             {
                 Owned<IThorException> re = MakeActivityException(activity, e, "Error cancelling backup '%s'", dstName.str());
-                ActPrintLog(&activity->queryContainer(), e, NULL);
+                ActPrintLog(&activity->queryContainer(), e);
                 e->Release();
             }
         }
@@ -696,7 +696,7 @@ public:
                 catch (IException *)
                 {
                     try { tmpIFile->remove(); }
-                    catch (IException *e) { ActPrintLog(&activity.queryContainer(), e, NULL); e->Release(); }
+                    catch (IException *e) { ActPrintLog(&activity.queryContainer(), e); e->Release(); }
                 }
             }
             else
@@ -719,7 +719,7 @@ public:
             catch (IException *)
             {
                 try { primary->remove(); }
-                catch (IException *e) { ActPrintLog(&activity.queryContainer(), e, NULL); e->Release(); }
+                catch (IException *e) { ActPrintLog(&activity.queryContainer(), e); e->Release(); }
                 throw;
             }
             primary->remove();
@@ -798,7 +798,7 @@ StringBuffer &locateFilePartPath(CActivityBase *activity, const char *logicalFil
     {
         StringBuffer locations;
         IException *e = MakeActivityException(activity, TE_FileNotFound, "No physical file part for logical file %s, found at given locations: %s (Error = %d)", logicalFilename, getFilePartLocations(partDesc, locations).str(), GetLastError());
-        ActPrintLog(&activity->queryContainer(), e, NULL);
+        ActPrintLog(&activity->queryContainer(), e);
         throw e;
     }
     return filePath;

+ 24 - 5
thorlcr/graph/thgraph.cpp

@@ -446,6 +446,12 @@ void CGraphElementBase::ActPrintLog(IException *e, const char *format, ...)
     va_end(args);
 }
 
+void CGraphElementBase::ActPrintLog(IException *e)
+{
+    va_list args;
+    ::ActPrintLogArgs(this, e, thorlog_all, MCexception(e), NULL, args);
+}
+
 void CGraphElementBase::abort(IException *e)
 {
     CActivityBase *activity = queryActivity();
@@ -799,7 +805,7 @@ void CGraphElementBase::createActivity(size32_t parentExtractSz, const byte *par
                 break;
         }
     }
-    catch (IException *e) { ActPrintLog(e, NULL); activity.clear(); throw; }
+    catch (IException *e) { ActPrintLog(e); activity.clear(); throw; }
 }
 
 ICodeContext *CGraphElementBase::queryCodeContext()
@@ -1193,7 +1199,7 @@ void CGraphBase::executeSubGraph(size32_t parentExtractSz, const byte *parentExt
     }
     catch (IException *e)
     {
-        GraphPrintLog(e, NULL);
+        GraphPrintLog(e);
         exception.setown(e);
     }
     if (!queryOwner())
@@ -1270,7 +1276,8 @@ void CGraphBase::doExecute(size32_t parentExtractSz, const byte *parentExtract,
     }
     catch (IException *e)
     {
-        GraphPrintLog(e, NULL); exception.setown(e);
+        GraphPrintLog(e);
+        exception.setown(e);
     }
     try
     {
@@ -1301,7 +1308,7 @@ void CGraphBase::doExecute(size32_t parentExtractSz, const byte *parentExtract,
     }
     catch (IException *e)
     {
-        GraphPrintLog(e, NULL);
+        GraphPrintLog(e);
         if (!exception.get())
             exception.setown(e);
         else
@@ -1380,7 +1387,7 @@ void CGraphBase::end()
         catch (IException *e)
         {
             Owned<IException> e2 = MakeActivityException(element.queryActivity(), e, "Error calling kill()");
-            GraphPrintLog(e2, NULL);
+            GraphPrintLog(e2);
             e->Release();
         }
     }
@@ -1653,6 +1660,12 @@ void CGraphBase::GraphPrintLog(IException *e, const char *format, ...)
     va_end(args);
 }
 
+void CGraphBase::GraphPrintLog(IException *e)
+{
+    va_list args;
+    ::GraphPrintLogArgs(this, e, thorlog_null, MCdebugProgress, NULL, args);
+}
+
 void CGraphBase::setLogging(bool tf)
 {
     CGraphElementIterator iterC(containers);
@@ -2736,6 +2749,12 @@ void CActivityBase::ActPrintLog(IException *e, const char *format, ...)
     va_end(args);
 }
 
+void CActivityBase::ActPrintLog(IException *e)
+{
+    va_list args;
+    ::ActPrintLogArgs(&queryContainer(), e, thorlog_all, MCexception(e), NULL, args);
+}
+
 bool CActivityBase::fireException(IException *e)
 {
     IThorException *te = QUERYINTERFACE(e, IThorException);

+ 3 - 0
thorlcr/graph/thgraph.hpp

@@ -289,6 +289,7 @@ public:
     IThorGraphDependencyIterator *getDependsIterator() const;
     void ActPrintLog(const char *format, ...)  __attribute__((format(printf, 2, 3)));
     void ActPrintLog(IException *e, const char *format, ...) __attribute__((format(printf, 3, 4)));
+    void ActPrintLog(IException *e);
     void setBoundGraph(IThorBoundLoopGraph *graph) { loopGraph.set(graph); }
     IThorBoundLoopGraph *queryLoopGraph() { return loopGraph; }
     bool executeDependencies(size32_t parentExtractSz, const byte *parentExtract, int controlId, bool async);
@@ -606,6 +607,7 @@ public:
     IThorActivityIterator *getTraverseIterator(bool all=false); // all traverses and includes conditionals, others traverses connected nodes only
     void GraphPrintLog(const char *msg, ...) __attribute__((format(printf, 2, 3)));
     void GraphPrintLog(IException *e, const char *msg, ...) __attribute__((format(printf, 3, 4)));
+    void GraphPrintLog(IException *e);
     void createFromXGMML(IPropertyTree *node, CGraphBase *owner, CGraphBase *parent, CGraphBase *resultsGraph);
     const bool &queryAborted() const { return aborted; }
     CJobBase &queryJob() const { return job; }
@@ -991,6 +993,7 @@ public:
 
     void ActPrintLog(const char *format, ...) __attribute__((format(printf, 2, 3)));
     void ActPrintLog(IException *e, const char *format, ...) __attribute__((format(printf, 3, 4)));
+    void ActPrintLog(IException *e);
 
 // IExceptionHandler
     bool fireException(IException *e);

+ 8 - 4
thorlcr/graph/thgraphmaster.cpp

@@ -380,13 +380,13 @@ void CMasterActivity::main()
         else
             e2.setown(MakeActivityException(this, e, "Master exception"));
         e->Release();
-        ActPrintLog(e2, NULL);
+        ActPrintLog(e2, "In CMasterActivity::main");
         fireException(e2);
     }
     catch (CATCHALL)
     {
         Owned<IException> e = MakeThorFatal(NULL, TE_MasterProcessError, "FATAL: Unknown master process exception kind=%s, id=%"ACTPF"d", activityKindStr(container.getKind()), container.queryId());
-        ActPrintLog(e, NULL);
+        ActPrintLog(e, "In CMasterActivity::main");
         fireException(e);
     }
 }
@@ -2245,7 +2245,7 @@ void CMasterGraph::sendActivityInitData()
             }
             catch (IException *e)
             {
-                GraphPrintLog(e, NULL);
+                GraphPrintLog(e);
                 throw;
             }
             if (!job.queryJobComm().send(msg, w+1, mpTag, LONGTIMEOUT))
@@ -2613,7 +2613,11 @@ bool CMasterGraph::deserializeStats(unsigned node, MemoryBuffer &mb)
                     activity = (CMasterActivity *)element->queryActivity();
                     created = true; // means some activities created within this graph
                 }
-                catch (IException *_e) { e.setown(_e); GraphPrintLog(_e, NULL); }
+                catch (IException *_e)
+                {
+                    e.setown(_e);
+                    GraphPrintLog(_e, "In deserializeStats");
+                }
                 if (!activity || e.get())
                 {
                     GraphPrintLog("Activity id=%"ACTPF"d failed to created child query activity ready for progress", activityId);

+ 3 - 3
thorlcr/graph/thgraphslave.cpp

@@ -531,7 +531,7 @@ void CSlaveGraph::executeSubGraph(size32_t parentExtractSz, const byte *parentEx
     }
     catch (IException *e)
     {
-        GraphPrintLog(e, NULL);
+        GraphPrintLog(e, "In executeSubGraph");
         exception.setown(e);
     }
     if (TAG_NULL != executeReplyTag)
@@ -647,7 +647,7 @@ void CSlaveGraph::done()
     }
     catch (IException *e)
     {
-        GraphPrintLog(e, NULL);
+        GraphPrintLog(e, "In CSlaveGraph::done");
         exception.setown(e);
     }
     if (exception.get())
@@ -1204,7 +1204,7 @@ bool ensurePrimary(CActivityBase *activity, IPartDescriptor &partDesc, OwnedIFil
     }
     catch (IException *e)
     {
-        ActPrintLog(&activity->queryContainer(), e, NULL);
+        ActPrintLog(&activity->queryContainer(), e, "In ensurePrimary");
         e->Release();
     }
     unsigned l;

+ 1 - 1
thorlcr/slave/slave.cpp

@@ -120,7 +120,7 @@ void ProcessSlaveActivity::main()
             }
             _e->Release();
         }
-        ActPrintLog(e, NULL);
+        ActPrintLog(e);
         exception.setown(e);
     }
     catch (std::exception & es)

+ 21 - 1
thorlcr/thorutil/thormisc.cpp

@@ -159,6 +159,12 @@ void ActPrintLog(const CActivityBase *activity, IException *e, const char *forma
     va_end(args);
 }
 
+void ActPrintLog(const CActivityBase *activity, IException *e)
+{
+    va_list args;
+    ActPrintLogArgs(&activity->queryContainer(), e, thorlog_null, MCexception(e, MSGCLS_error), NULL, args);
+}
+
 void GraphPrintLogArgsPrep(StringBuffer &res, CGraphBase *graph, const ActLogEnum flags, const LogMsgCategory &logCat, const char *format, va_list args)
 {
     if (format)
@@ -393,6 +399,13 @@ IThorException *MakeActivityException(CActivityBase *activity, IException *e, co
     return e2;
 }
 
+IThorException *MakeActivityException(CActivityBase *activity, IException *e)
+{
+    va_list args;
+    IThorException *e2 = _MakeActivityException(activity->queryContainer(), e, NULL, args);
+    return e2;
+}
+
 IThorException *MakeActivityWarning(CActivityBase *activity, int code, const char *format, ...)
 {
     va_list args;
@@ -433,6 +446,13 @@ IThorException *MakeActivityException(CGraphElementBase *container, IException *
     return e2;
 }
 
+IThorException *MakeActivityException(CGraphElementBase *container, IException *e)
+{
+    va_list args;
+    IThorException *e2 = _MakeActivityException(*container, e, NULL, args);
+    return e2;
+}
+
 IThorException *MakeActivityWarning(CGraphElementBase *container, int code, const char *format, ...)
 {
     va_list args;
@@ -931,7 +951,7 @@ bool getBestFilePart(CActivityBase *activity, IPartDescriptor &partDesc, OwnedIF
             }
             catch (IException *e)
             {
-                ActPrintLog(&activity->queryContainer(), e, NULL);
+                ActPrintLog(&activity->queryContainer(), e, "In getBestFilePart");
                 e->Release();
             }
         }

+ 10 - 2
thorlcr/thorutil/thormisc.hpp

@@ -317,6 +317,7 @@ extern graph_decl void ActPrintLogArgs(const CGraphElementBase *container, const
 extern graph_decl void ActPrintLogArgs(const CGraphElementBase *container, IException *e, const ActLogEnum flags, const LogMsgCategory &logCat, const char *format, va_list args);
 extern graph_decl void ActPrintLog(const CActivityBase *activity, const char *format, ...) __attribute__((format(printf, 2, 3)));
 extern graph_decl void ActPrintLog(const CActivityBase *activity, IException *e, const char *format, ...) __attribute__((format(printf, 3, 4)));
+extern graph_decl void ActPrintLog(const CActivityBase *activity, IException *e);
 
 inline void ActPrintLog(const CGraphElementBase *container, const char *format, ...) __attribute__((format(printf, 2, 3)));
 inline void ActPrintLog(const CGraphElementBase *container, const char *format, ...)
@@ -342,6 +343,11 @@ inline void ActPrintLog(const CGraphElementBase *container, IException *e, const
     ActPrintLogArgs(container, e, thorlog_null, MCexception(e, MSGCLS_error), format, args);
     va_end(args);
 }
+inline void ActPrintLog(const CGraphElementBase *container, IException *e)
+{
+    va_list args;
+    ActPrintLogArgs(container, e, thorlog_null, MCexception(e, MSGCLS_error), NULL, args);
+}
 extern graph_decl void GraphPrintLogArgsPrep(StringBuffer &res, CGraphBase *graph, const ActLogEnum flags, const LogMsgCategory &logCat, const char *format, va_list args);
 extern graph_decl void GraphPrintLogArgs(CGraphBase *graph, IException *e, const ActLogEnum flags, const LogMsgCategory &logCat, const char *format, va_list args);
 extern graph_decl void GraphPrintLogArgs(CGraphBase *graph, const ActLogEnum flags, const LogMsgCategory &logCat, const char *format, va_list args);
@@ -372,11 +378,13 @@ inline void GraphPrintLog(CGraphBase *graph, const char *format, ...)
     va_end(args);
 }
 extern graph_decl IThorException *MakeActivityException(CActivityBase *activity, int code, const char *_format, ...) __attribute__((format(printf, 3, 4)));
-extern graph_decl IThorException *MakeActivityException(CActivityBase *activity, IException *e, const char *xtra=NULL, ...) __attribute__((format(printf, 3, 4)));
+extern graph_decl IThorException *MakeActivityException(CActivityBase *activity, IException *e, const char *xtra, ...) __attribute__((format(printf, 3, 4)));
+extern graph_decl IThorException *MakeActivityException(CActivityBase *activity, IException *e);
 extern graph_decl IThorException *MakeActivityWarning(CActivityBase *activity, int code, const char *_format, ...) __attribute__((format(printf, 3, 4)));
 extern graph_decl IThorException *MakeActivityWarning(CActivityBase *activity, IException *e, const char *format, ...) __attribute__((format(printf, 3, 4)));
 extern graph_decl IThorException *MakeActivityException(CGraphElementBase *activity, int code, const char *_format, ...) __attribute__((format(printf, 3, 4)));
-extern graph_decl IThorException *MakeActivityException(CGraphElementBase *activity, IException *e, const char *xtra=NULL, ...) __attribute__((format(printf, 3, 4)));
+extern graph_decl IThorException *MakeActivityException(CGraphElementBase *activity, IException *e, const char *xtra, ...) __attribute__((format(printf, 3, 4)));
+extern graph_decl IThorException *MakeActivityException(CGraphElementBase *activity, IException *e);
 extern graph_decl IThorException *MakeActivityWarning(CGraphElementBase *activity, int code, const char *_format, ...) __attribute__((format(printf, 3, 4)));
 extern graph_decl IThorException *MakeActivityWarning(CGraphElementBase *activity, IException *e, const char *format, ...) __attribute__((format(printf, 3, 4)));
 extern graph_decl IThorException *MakeGraphException(CGraphBase *graph, int code, const char *format, ...);

+ 0 - 13
tools/swapnode/swapnodelib.cpp

@@ -99,19 +99,6 @@ bool WuResubmit(const char *wuid)
     return true;
 }
 
-static bool resolveComputerName(IPropertyTree *rootEnv,const char *name,IpAddress &ip)
-{
-    StringBuffer query;
-    query.appendf("Hardware/Computer[@name=\"%s\"]",name);
-    Owned<IPropertyTree> machine = rootEnv->getPropTree(query.str());
-    const char *node = machine?machine->queryProp("@netAddress"):NULL;
-    if (!node||!*node)
-        false;
-    ip.ipset(node);
-    return true;
-}
-
-
 // SwapNode info
 //
 //  SwapNode/