Jelajahi Sumber

HPCC-9304 Modify code based on review comments

Change PID type to unsigned; remove old setAgentPID(); rename a
'component' to 'instance'.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Kevin Wang 12 tahun lalu
induk
melakukan
70b81bbf4b

+ 1 - 10
common/workunit/workunit.cpp

@@ -640,7 +640,7 @@ public:
     virtual unsigned __int64 getHash() const;
     virtual IStringIterator *getLogs(const char *type, const char *component) const;
     virtual IStringIterator *getProcesses(const char *type) const;
-    virtual IPropertyTreeIterator& getProcesses(const char *type, const char *component) const;
+    virtual IPropertyTreeIterator& getProcesses(const char *type, const char *instance) const;
 
     virtual bool getWuDate(unsigned & year, unsigned & month, unsigned& day);
     virtual IStringVal & getSnapshot(IStringVal & str) const;
@@ -706,7 +706,6 @@ public:
     void setState(WUState state);
     void setStateEx(const char * text);
     void setAgentSession(__int64 sessionId);
-    void setAgentPID(unsigned pid);
     void setSecurityToken(const char *value);
     void setTimerInfo(const char * name, const char * instance, unsigned ms, unsigned count, unsigned __int64 max);
     void setTracingValue(const char * propname, const char * value);
@@ -1169,8 +1168,6 @@ public:
             { c->setStateEx(text); }
     virtual void setAgentSession(__int64 sessionId)
             { c->setAgentSession(sessionId); }
-    virtual void setAgentPID(unsigned pid)
-            { c->setAgentPID(pid); }
     virtual void setTimerInfo(const char * name, const char * instance, unsigned ms, unsigned count, unsigned __int64 max)
             { c->setTimerInfo(name, instance, ms, count, max); }
     virtual void setTracingValue(const char * propname, const char * value)
@@ -3666,12 +3663,6 @@ void CLocalWorkUnit::setAgentSession(__int64 sessionId)
     p->setPropInt64("@agentSession", sessionId);
 }
 
-void CLocalWorkUnit::setAgentPID(unsigned pid)
-{
-    CriticalBlock block(crit);
-    p->setPropInt("@agentPID", pid);
-}
-
 bool CLocalWorkUnit::aborting() const 
 {
     CriticalBlock block(crit);

+ 0 - 1
common/workunit/workunit.hpp

@@ -957,7 +957,6 @@ interface IWorkUnit : extends IConstWorkUnit
     virtual void setState(WUState state) = 0;
     virtual void setStateEx(const char * text) = 0;
     virtual void setAgentSession(__int64 sessionId) = 0;
-    virtual void setAgentPID(unsigned pid) = 0;
     virtual void setTimerInfo(const char * name, const char * instance, unsigned ms, unsigned count, unsigned __int64 max) = 0;
     virtual void setTracingValue(const char * propname, const char * value) = 0;
     virtual void setTracingValueInt(const char * propname, int value) = 0;

+ 0 - 1
ecl/eclagent/eclagent.cpp

@@ -1837,7 +1837,6 @@ void EclAgent::doProcess()
                 throw MakeStringException(0, "Ecl agent started in 'no retry' mode for failed workunit, so failing");
             w->setState(WUStateRunning);
             w->addTimeStamp("EclAgent", GetCachedHostName(), "Started");
-            w->setAgentPID(GetCurrentProcessId());
             if (isRemoteWorkunit)
             {
                 w->setAgentSession(myProcessSession());

+ 1 - 1
esp/scm/ws_workunits.ecm

@@ -115,7 +115,7 @@ ESPStruct [nil_remove] ECLHelpFile
     [min_ver("1.32")] string IPAddress;
     [min_ver("1.32")] string Description;
     [min_ver("1.43")] int64 FileSize;
-    [min_ver("1.44")] string PID;
+    [min_ver("1.44")] unsigned PID(0);
 };
 
 //  ===========================================================================

+ 4 - 5
esp/services/ws_workunits/ws_workunitsHelpers.cpp

@@ -530,11 +530,10 @@ void WsWuInfo::getHelpers(IEspECLWorkunit &info, unsigned flags)
                         h->setFileSize(fileSize);
                     if (version >= 1.44)
                     {
-                        eclAgents.query().getProp("@pid",agentPID);
-                        if (!agentPID.length())
-                            agentPID.append(cw->getAgentPID());
-                        if (agentPID.length())
-                            h->setPID(agentPID.str());
+                        if (eclAgents.query().hasProp("@pid"))
+                            h->setPID(eclAgents.query().getPropInt("@pid"));
+                        else
+                            h->setPID(cw->getAgentPID());
                     }
                 }
                 helpers.append(*h.getLink());