diskread optimization

Avoid resetting localOffset, if never needed.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
#2500 Create test package for jdbc driver
Remove testbed code from release code.
Create new test package for testing.

Signed-off-by: Rodrigo Pastrana <Rodrigo.Pastrana@lexisnexis.com>:q!
#2508 Add superfile support
Create dfufile container class (HPCCLogicalFiles)
HPCCLogicalFiles keeps track of superfiles in cache
Fetch operation instructs HPCCLogicalFiles to update all super class'
record definitions based on subclasses
Superclasses inherit record definition from first subfile which contains
a legitimate record definition
Add superclass test case to test package
Add param based execution of test package.

Signed-off-by: Rodrigo Pastrana <Rodrigo.Pastrana@lexisnexis.com>
#2508 Superfile support
Fix DFUFile.getSubfilescount() issue.
DFUFile.containsSubfiles() now uses getSubfilesccount()
HPCCLogicalFiles uses recursion to find first available ECL record definition
in subfiles.

Signed-off-by: Rodrigo Pastrana <Rodrigo.Pastrana@lexisnexis.com>
Merge pull request #2519 from jakesmith/disk-needoffset

diskread optimization

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
Optimize handling of no_self on rhs of an assign

Add a flag to the IHqlExpression flags to indicate it contains SELF,
instead of relying on a flag set in the parser.  It prevents the
transform being called if SELF has been used by previous vales, but
not by this one.

Minor generation speed up.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Avoid cloning expression when can just link instead

Most places already contain similar code.  Avoids type calculation
which can be significant.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Mark regress query with IFACTION TBD

There's an unresolved issue with asynchronous launch of graphs from an ifaction.
ifaction.ecl was marked tbd in gh-2400, when8.ecl also has an ifaction and should be marked TBD.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
Optimization: Add member function to avoid cloning

The code to check if a table was used by an expression cloned the
active rows and then checked for a match within it.  Moving it to
a member function avoids the clone.  Speeds up examples by ~1%.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Merge pull request #2538 from jakesmith/ifaction-tbd

Mark regress query with IFACTION TBD

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #2525 from rpastrana/gh-2508-superfile_support

Gh 2508 superfile support

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Short circuit constant replacer

Don't replace constants if the expression doesn't reference the selector

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Merge pull request #2547 from ghalliday/selfrhs

Various optimizations

Reviewed-By: Renato Golin <rengolin@hpccsystems.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Only create expression if actually used

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Stop GRAPH(expr) always hoisting (debug operator)

A minor fix to an internal undocumented operator.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Merge pull request #2556 from ghalliday/forcegraph

Stop GRAPH(expr) always hoisting (debug operator)

Reviewed-By: Renato Golin <rengolin@hpccsystems.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #2555 from ghalliday/minorfix

Only create expression if actually used

Reviewed-By: Renato Golin <rengolin@hpccsystems.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Skip applyaction while gh-2351 is not fixed
Merge pull request #2564 from rengolin/tests

Skip applyaction while gh-2351 is not fixed

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>