HPCC-10192 Add test case (could not reproduce issue)

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
HPCC-10930 Better support in regression suite for targeting specific queries

Implement
    - a handler to query a list of ECL files (with wildcards) in command line
    - a handler to execute multiple query like run a suite to generate
      final result and diff report
    - handler to use parallel execution for multiple ECL query files

Update README.rst and built-in help text.

Signed-off-by: Attila Vamos <attila.vamos@gmail.com>
HPCC-9401 Optimize query time WsEcl

The dependency on the xml schema from the query workunit to process
incoming queries greatly slows down WsECL.

Past optimizations have removed this dependency for some query paths,
but not others.  This removes the dependency for the rest of the query
paths.

Also add a toJSON function to jptree.

Also fix WsECL form, xsd, and other processing of child sets.

Also add a new type of REST input parameter.  Adding a $ to the end of
an input parameter will cause it to be treated as a \r\n delimited
input array (so that WsEcl no longer needs to use schema to process arrays on
input).

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
HPCC-3022 - Allow buildindex not to require maxlength if >4k

For legacy backward compatibility reasons, we have forced the max
key size (key+payload) to default to the max record size, which
in legacy systems used to be 4K. This can been overridden
with ,MAXLENGTH on the record structure.
However, this imposes a unnecessary restriction in the current
system, which has no default max record length and therefore
doesn't need to use a 'max' in the key header at all.

Fix by removing the max length check in the key builder, but for
continued backward compatibility, track the largest key+payload
and store it in the header. If the max is < old default legacy(4k)
set header max to 4K.
This will mean any key built on a new system with this
compatibility option on, will create a compatible key for legacy
system as long as the key+payload <= 4k.
If it is higher, it will issue a warning. Legacy systems can still
use the key, but they will need to specify MAXLENGTH.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
HPCC-9401 Update based on review and missing changes

Removed IPropTree::getIsArrayItem().  toJSON now looks ahead one child
item to determine when an element repeats.

Also reimplemented lost changes to only create a workunit if/when its
actually needed.

Also fixed various other items caught in code review.

 to delay creating workunit

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
HPCC-11044 Call a library function to copy link counted rows

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
EPE-102 DOCS:Update to ECL Plug-in for Eclipse doc

Fix EPE-102 DOCS:Update to ECL Plug-in for Eclipse doc
Update documentation for running ECL Plug in
for Eclipse using Eclipse Kepler.

Signed-off-by: g-pan <greg.panagiotatos@lexisnexis.com>
EPE-102 DOCS:Update to ECL Plug-in for Eclipse doc

Fix EPE-102 DOCS:Update to ECL Plug-in for Eclipse doc
Update documentation for running ECL Plug in
for Eclipse using Eclipse Kepler.

Signed-off-by: g-pan <greg.panagiotatos@lexisnexis.com>
HPCC-10930 Better support in regression suite for targeting specific queries

Update after review

Signed-off-by: Attila Vamos <attila.vamos@gmail.com>
HPCC-11045 Add options for ECL Watch Build

Allow SKIP, SOURCES and IF_MISSING (only build if missing)

Fixes HPCC-11045

Signed-off-by: Gordon Smith <gordon.smith@lexisnexis.com>
HPCC-9065 Restructure code while investigating optimization

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
HPCC-11060 - Support multi-qualifiers on sds subscription nodes

e.g. support querySDS().subscribe("/a/b[@a1='v1][@a2='v2']");

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
HPCC-10941 Add mechanism for finding queries that use a given file

Build a cache of files used by queries.  Update cache when DALI changes
in QuerySets, PackageMaps, or PackageSets are detected.

Add method to WsWorkunits to WUListQueriesUsingFile.

Create a report xslt for the result, and add a link to the the
context menu for roxie files listed on the browse dfu files page.

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
HPCC-10979 Fix custom tributton control handling of tab and spacebar

Allow tributton to recieve focus, and move on to next tabindex when tab
key is pressed.  Rotate tributton state when spacebar is pressed.

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>
Merge pull request #5567 from g-pan/E102-EPEUpdate3-14

EPE-102 DOCS:Update to ECL Plug-in for Eclipse doc

Reviewed-By: Gordon Smith <gordon.smith@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
HPCC-10438 WU Details Duration is Blank

The duration displayed on the WU Details page was pulled from the "process"
timer, only after the timers list was loaded.  Better to just display "Total
Thor Time".

Changed "Action" to display ActionEx.

Fixes HPCC-10438

Signed-off-by: Gordon Smith <gordon.smith@lexisnexis.com>
HPCC-10609 Support archived workunits

Added the ability to find, open and restore archived workunits.

Fixes HPCC-10609

Signed-off-by: Gordon Smith <gordon.smith@lexisnexis.com>
HPCC-11065 Graph Depth/Distance unresponsive

Change Spin Controls to fire event on every button click.  Previously event was
only fired when user tabbed away from control.

Fixes HPCC-11065

Signed-off-by: Gordon Smith <gordon.smith@lexisnexis.com>
HPCC-10579 Improve many lookup join implementation in roxie

Similar concept to the thor improvements in HPCC-9244, which can dramatically
improve performance on pathogenic cases that have many dups on RHS.

Should not slow down other cases (though may increase memory usage a little).

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
HPCC-10992 Improve cli password and INI file support

Prompt cli user for password if username is initially provided,
but password is not.

Look for INI file in users home directory.

Password can be set in INI file as eclPassword=xxxx.

Signed-off-by: Anthony Fishbeck <anthony.fishbeck@lexisnexis.com>