Fix problem with extra splitters being created

If an expression that is a spill point in a graph was refrenced with
and without an annotation, then its inputs could be counted twice
leading to splitters being introduced which weren't required.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Fix scope of transform on no_select.

The MergingHqlTransformer was processing the lhs in a new scope, when
it shouldn't have been.  The change causes no differences on the
current regression suite, but was triggered by a new optimization.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Improve cse inside nodes that can't create temps

If you have a cse within a node that can't have a temporary created
for it e.g., str[1..f()] and other[1..f()].  The no_range is common
but doesn't correspond to an expression that can be generated.  With
this fix f() is spotted as a cse.

Has a dramatic effect on a small subset of the archived queries.  A
prerequisite for another change that is comming up.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Lookup join stop race deadlock

A lookup join, that is stopped by a node before it has pulled a record,
caused a deadlock, as others expected to send/receive the RHS.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
Added some comments to clarify getRHS

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
Remove more traces of (now unnecessary) hack in prefix join

Prefix join code used to rely (unsuccessfully) on having reset the input
to point to a valid object before any calls that might crash because it
pointed to an invalid VMT (!)

This is no longer necessary, but missed removing one bit of the code to do
it. This would not cause any ill effect other than confusing future coders.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Prefix join core - previous fix not correct

Previous fix was not correct. Fix it properly this time.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Disk aggregate and index aggregate could corrupt memory

If the result of a disk aggregate or index aggregate was a variable
size row, roxie heap could get overwritten

Removed the unsafe version of the cloneRow function - which is never
 safe to use in new memory paradigms - to ensure that no other issues
remain. A couple of changes in hthor to avoid the unsafe functions
were unlikely to cause corruptions in practice.

Legacy thor does not appear to use these deprecated functions.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #1876 from jakesmith/lookupjoin-stop

Lookup join stop race deadlock

Reviewed-By: Gavin Halliday <gavin.halliday@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Fold filenames to ensure they are consistent

- Otherwise very occasiaonly the usage count could be wrong because the
  reads and writes weren't tied up correctly

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Implement LOG(MIN) and LOG(expr) for SOAPCALL

Add new options to SOAPCALL to allow minimal logging to be added to the
log file.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Allow dataset as well as LEFT inside the LOG() expr

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Add soapcall logging tests to regression suite

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
gh-1834 Remove validation before starting ConfigMgr

Remove validation of the default environment before starting Configmgr as it is legacy behaviour when ConfigMgr was working with just one file.

Signed-off-by: Sridhar Meda <sridhar.meda@lexisnexis.com>
Merge pull request #1889 from richardkchapman/roxie-aggregate-var

Disk aggregate and index aggregate could corrupt memory

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
Merge pull request #1885 from richardkchapman/prefixjoin-core

Prefixjoin core

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
Merge pull request #1896 from smeda/issue1834

gh-1834 Remove validation before starting ConfigMgr

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #1890 from ghalliday/foldfilename

Fold filenames to ensure they are consistent

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #1891 from ghalliday/soaplog

Implement LOG(MIN) and LOG(expr) for SOAPCALL

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #1862 from ghalliday/transformfix

Fix scope of transform on no_select.

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>