Replacing TAKtemptable for TAKinlinetable

Code generation now creating inline tables (rather than
temp tables), including temp rows, since numRows() is
being used by the engine to limit size.

Added some deprecated comments, so we can easily find
and remove all deprecated code in the next major release.
Always add a U suffix to an unsigned constant

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Increase ECL and Activity versions

Due to the new construct DATASET(COUNT) and the recent changes
in InlineTable (respectively), both the ECL and the Activity
version numbers are being increased.

Increase the MIN_ACTIVITY_INTERFACE_VERSION to match once the
old TempTableArg interface is removed for good.
Various index count and aggregate fixes

Remove projects from count(keyed-limit(project(index)))
  A missing case from a switch statement meant projects weren't
  stripped when there was a keyed limit on the index read.

Reduce the generated code size for an index count/exists
  The numValid(size, ptr) member was never called for an index, so default
  it to throwing an exception in the base class, and clean up numValid(ptr)
  code.

CHOOSEN(LIMIT(index-read))
  The choosen was not being combined within the compound indexread if there
  was a limit.  It is however valid to do so since the choosen is done last.
  (A limit cannot be combined when there is an existing choosen.)
  This was unfortunate because it was frustrating  another optimization.
  count(index-read) > n being converted to count(choosen(index-read,n+1)) > n
  (This is temporarily retained, but will be removed in a subsequent commit).

IF(count(x) > 0, x, y) optimization
  Currently the intention is to perform a count-index on x before reading x.
  However if x contains a limit,skip it is going to need to read the entire
  result, so don't perform the count separately.

Don't generate count(index) if there is a skip limit

Optimize count(x) > 0 to exists(x)
  Instead of (count(x) > 0) becoming count(choosen(x, 1)) > 0 it is now
  transformed to exists(x) - which is either as efficient, or more
  efficient as the count representation.

Remove no_notexists since never created

Terminate hthor exists aggregate activity early

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Merge latest changes from candidate-3.6.x into candidate-3.6.2

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Community Edition 3.6.2 Release Candidate 3

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Update HDFS script with lost changes
An old version of HDFSPIPE was originaly submited, this commit contains
the latest script. The changes missing addressed support for multi-node
per machine topology. This includes creating hpcc node specific named pipe
and log file.

Signed-off-by: Rodrigo Pastrana <Rodrigo.Pastrana@lexisnexis.com>
gh-1995 Encrypt attributes of view type password

When encrypting attributes that were of the view type password, ConfigMgr was relying on attribute name rather than the view type. Hence some attributes like esp's passphrase were not encrypted causing issues at runtime. Fixed this by encrypting attribute values based on view type rather than attribute name.

Signed-off-by: Sridhar Meda <sridhar.meda@lexisnexis.com>
Remove debug code from index.xslt

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Better handling of out of memory reallocating a buffer

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Merge pull request #2004 from wangkx/extra_code_index_xslt

Remove debug code from index.xslt

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #2002 from rpastrana/update_hdfswrite

Update HDFS script with lost changes

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Merge pull request #2003 from smeda/issue1995

gh-1995 Encrypt attributes of view type password

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Check and/or report the version of CE used in EE builds

Clean up the code for checking git tags match on a build, to allow other
editions to check it when building systems that are based on CE builds.

See also hpcc-systems/LN#407

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
gh-1966 Roxie memory manager cache-line aligmnent

Roxie memory manager should ensure that the base of each heaplet is
aligned to a cacheline boundary to reduce false sharing between
adjacent rows.

Fixes gh-1966.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Refactor EclDirect in EclWatch with security and extended features

Signed-off-by: Anthony Fishbeck <Anthony.Fishbeck@lexisnexis.com>
Merge latest changes from candidate-3.6.x to candidate-3.6.2

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Join overflow partition crash

When the RHS of a join overflows, the partitioning code would crash, unless
the RHS had the same meta as the LHS.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
ISSUE:#1714 Restrict special chars from comp names

configgen will indicate and error when encountering
special characters in component names.

configmgr will pop-up an error when users attempt
to enter special characters for component names

Signed-off-by: Gleb Aronsky <gleb.aronsky@lexisnexis.com>
datastream should be build and packaged independent from the platform
The CMAKE process does not currently allow buiding multiple packages,
until that feature is introduced to cmake, datastream will have its own
cmake process which generates an install package following the same
naming and versioning standards as the platform.
This forces a seperate set of version cmake vars which have to be kept
in synch with the toplevel vars.

Signed-off-by: Rodrigo Pastrana <Rodrigo.Pastrana@lexisnexis.com>