Remove CWrappedTransaction

This patch removes CWrappedTransaction and makes removeSubFile
in line with future transaction work (auto-commit). There is also
a small change in how addSubFile works in a transaction, by linking
the file only if it's not in the cache already.
addSubFile with auto-commit feature

Following removeSubFile, addSubFile also has auto-commit
feature, paving the was to refactor swapSubFiles and PromoteSuperFile.
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>
Multislave setups were ignoring nodeGroup

The nodeGroup setting was being ignored in multi-slave and local setups.
Instead, it forced the nodeGroup to equal the thor name group.

Signed-off-by: Jake Smith <jake.smith@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>
Fix gh-1860 typo in eclcc help text

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Remove casts that have no effect

These are very occasionally generated when no_select are expanded.  If
they remain they can generate unnecessary temporaries.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Fix ecl command line should default to not limiting results

Defaulting to 100 can cause issues with queries published to roxie,
and roxie regression testing... and I prefer to handle the --limit
command line option consistently in all cases.

Signed-off-by: Anthony Fishbeck <Anthony.Fishbeck@lexisnexis.com>
Roxie core in self-join with prefix match optimization

The prefixjoin.ecl test case in regression suite cores if executed
with a choosen on the output datasets, as prefixed selfjoin was
not correctly handling the case where not all data was pulled.

Code was casting a pointer to a more derived type incorrectly, then
attempting to avoid the resulting issues by copying a valid pointer
back in before any virtual calls that migth crash were made. Yuk!

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #1873 from afishbeck/default_unlimited

Ecl command line should default to not limiting results

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #1872 from ghalliday/eclcctypo

Fix gh-1860 typo in eclcc help text

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #1869 from jakesmith/multislave-group

Multislave setups were ignoring nodeGroup

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #1875 from richardkchapman/prefixjoin-core

Roxie core in self-join with prefix match optimization

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.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>
Fix very obscure bug in folding case() = value

case(x,a1=>'a',a1=>'b','a')='a' was incorrectly converted to
x not in a1 because it wasn't taking into account previous (duplicate)
values that had matched - they differed only by an annotation.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Fix resource permissions display on FireFox

It is found that resource permissions cannot display
on FireFox (but, good on IE/Chrome). Looks like FireFox
does not allow a html form to be created under row tag
tr. I have to move the form under column tag td.

I also deleted several javascript functions which are
not used now.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Added some comments to clarify getRHS

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
Merge pull request #1882 from wangkx/gh1880

Fix resource permissions display on FireFox

Reviewed-By: Richard Chapman <rchapman@hpccsystems.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>