HPCC-9304 Add PID into Process/eclagent entries of ECL WU xml

Existing ECL WU xml contains only one agentPID. EclWatch uses the
agentPID to identify the log lines for the workunit from eclagent
log. When a WU runs on two different eclagents, EclWatch can only
find out the log lines in one eclagent log using the agentPID. In
this fix, the agentPID of each eclagent is added into the <Process>
<EclAgent><eclagent> entry of the WU xml. EclWatch uses the agentPID
and the log name to read WU log lines from each eclagent log.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
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>
HPCC-8869 Moves the existing onActivity code into three methods

This is the first step of Refactoring Eclwatch activity code. To make
the refactoring easier to review, I move (no change for process logic)
the existing code for super users (displaying Banner and/or Chat) into
two new methods: readBannerAndChatRequest() and setBannerAndChatData().
For backward compatible, I also move the existing code for retrieving
information about servers and WUs into a new memthod: getServersAndWUs().

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
HPCC-8869 Refactor Eclwatch activity code

Five new methods are added to read/set workunits on clusters and
servers. 2 Minor changes: a. collect and display better information
about clusters and workunits; b. collect and display WUs on the
servers (ECL Server and ECL Agent) which do not belong to any
target cluster.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
HPCC-8869 Revise based on review comments

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
HPCC-9487 ESP should set IE=edge for certain ECLIDE HTTP responses

For certain content, ECLIDE need ESP to set the HTTP header
X-UA-Compatible to "IE=edge" and add <!DOCTYPE html> to the content.

This triggers the IE activex plugin to render in the proper content
mode.

Signed-off-by: Anthony Fishbeck <Anthony.Fishbeck@lexisnexis.com>
HPCC-9419 WIP: clean existing code before fixing the issue

Only remove duplicated code and the code never being used. No
programming logic change.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
HPCC-9420 Pass Roxie directory settings to file copy function

This fix adds Roxie directory settings to file copy function because
those settings define the destinations of the file being copied.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
HPCC-9487 ESP should set IE=edge for certain ECLIDE HTTP responses

Move code affecting content buffer out of shared routine to make sure
anyone making changes in the future is explicitly aware of any
content buffer manipulation made for the ECLIDE.

Signed-off-by: Anthony Fishbeck <Anthony.Fishbeck@lexisnexis.com>
HPCC-9420 Clean more duplicated code

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
HPCC-9535 Rationalize Roxie topology info

Ensure that all components use only the information really needed - this will
be backward compatible on all environments that are internally consistent,
i.e. those generated by configmgr. Duplicate nodes in the server list will be
ignored, port information will be taken from RoxieFarmProcess nodes, and
RoxieSlaveProcess and RoxieSlave nodes will be ignored.

This commit does not update configmgr to stop it generating the additional
info (yet).

Remove the creation of the (unused, as far as I can see) 'farm' group for a
roxie when environment is loaded to Dali. All roxie schemes now generate
groups that contain all nodes, just once - as far as I can tell the previous
code would have done so for schemes other than 'full redundancy', which would
have generated a group with most of the servers missing.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
HPCC-9535 Rationalize Roxie topology info

Minor changes following code review.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
HPCC-9535 Rationalize Roxie topology info

Further cleanup

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
HPCC-9420 Rename three variables

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
HPCC-9532 Fix code generator for reading dataset from another wuid

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
HPCC-9420 Pass offset setting to remote copy

This is a bug in the existing code.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
HPCC-9544 ecl-packagemap-add should report unresolved files

ecl-packagemap-add listing the files it could not locate would
allow this type of packagemap issue to be resolved much more
quickly and no longer one at a time.

Signed-off-by: Anthony Fishbeck <Anthony.Fishbeck@lexisnexis.com>
Merge pull request #4540 from afishbeck/packagemapAddFilesNotFound9544

HPCC-9544 ecl-packagemap-add should report unresolved files

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #4526 from afishbeck/ideUserAgentSpecialResponse9487

HPCC-9487 ESP should set IE=edge for certain ECLIDE HTTP responses

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #4456 from wangkx/h9304a

HPCC-9304 Add PID into Process/eclagent entries of ECL WU xml

Reviewed-By: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>