Fix gh-2860 https connection to EclWatch failed

This only happens on Linux. The error comes from
openssl lib. Browser is trying to create multiple
SSL connections to ESP. ESP creates multiple threads
and each thread uses openssl lib to accept the
connections. To make openssl thread-safe, ESP has to
provide a callback fucntion: CRYPTO_set_id_callback().

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Fix gh-2888 add superfile operations to esp log

Superfile operations (add/remove) should be logged
into esp log. This fix also cleans ESP code for
superfile operations, including the method
SuperfileAddRaw() which has not been used for years.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Revised based on review.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Fix gh-2649 Configmgr - duplicate component
  - Add 'Duplicate Componenet/Service' to context menu
  - Duplicate components and assign unique name

Signed-off-by: Gleb Aronsky <gleb.aronsky@lexisnexis.com>
Fix for pull request #2593
- Fix for center context menu not accepting clicks

Signed-off-by: Gleb Aronsky <gleb.aronsky@lexisnexis.com>
Fix based on feedback.
- Removed ForEach loop since only 1 iteration is needed
- Cleaned up StringBuffer assignment
- Add check for NULL pointer and will throw an exception if encountered

Signed-off-by: Gleb Aronsky <gleb.aronsky@lexisnexis.com>
Fix and enhancement for configmgr pull request #2601 and for issue gh-2386
- Add highlight to indicate staged envrionment in table triggered from open
  environment button
- Fix IE specific display

Signed-off-by: Gleb Aronsky <gleb.aronsky@lexisnexis.com>
Fix for out of bounds array index based on feedback
Properly handling of multiple configuration files matching
staged configuration.  All will be highlighted.

Signed-off-by: Gleb Aronsky <gleb.aronsky@lexisnexis.com>
Minor for-loop restructure based on feedback.

Signed-off-by: Gleb Aronsky <gleb.aronsky@lexisnexis.com>
Not more than 10 files per log line

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
gh-2161 Only 1 package can be active per queryset / packagemap

Package add needs to make sure that there is only 1 active package
at a time for a queryset.  Roxie will only process the first active
package, so when adding a package (or activating an exisiting package)
the code needs to deactivate the currently active package first

Signed-off-by: Stuart Ort <stuart.ort@lexisnexis.com>
gh-2161 Package add queryset shortcut parameter should be -qs

Signed-off-by: Stuart Ort <stuart.ort@lexisnexis.com>
gh-2998 Remove some getRecordSize(NULL) calls

Remove some calls to getRecordSize(NULL) in Roxie (all results were unused).

Note that I no longer pass the (code) record size to createKeyMerger - this
means that mismatches won't be deteced at this point, but Roxie should have
picked them up earlier anyway (with a full meta compare).

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Consistently use queryname to generate root tags in WsEcl

Previously WuWebView would sometimes default to using the jobname
instead of the queryname.

Fixes gh-2896

Signed-off-by: Anthony Fishbeck <Anthony.Fishbeck@lexisnexis.com>
Replace const char** with PointerArrayOf

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Unified ClientTools Packaging for OSX, Linux and Windows.
Changed default install location for ClientTools (???/HPCCSystems/3.8.0/clienttools)
Added third party dlls to windows + OSX install.
Removed invalid dependencies from DFU Plus
Removed OSSDIR from child projects and appended it to
CMAKE_INSTALL_PREFIX as needed.
Required folders now calculated relative to eclcc.
Include examples.

Signed-off-by: Gordon Smith <gordon.smith@lexisnexis.com>
Reducing eclcc memory consumption

* Use template classes for implementing the linkcounts.
  This avoids having an extra VMT for CInterface - it can reuse the
  vmt of the interface.

* Change attributes so they are stored as linked list of entries
  instead of an array.  Reduces size if an expression has no attributes
  and allows firther changes later.

* Don't create an extra attribute for unadorned attribute

* Simplify format of serialized form

* Use an attribute to store location independent expression

* Optimize the representation of referenced tables
  Reduce from 24 bytes to 12 bytes in 32bit, 32 to 16 in 64bit
  Optimize the storage of a single table

* Clean up symbol code

* Improve statistics for opcode counts

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Change a few more common classes to use CInterfaceOf

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>

A
H
re
eclcc memory savings - move type field

Rather more drastic than some of the other changes, but
CHqlConstant, CHqlAnnotation and CHqlSelectExpr don't need to store
the type field.  Since they make up quite a large proportion of the
expressions (especially with upcoming change) it is worth removeing
them.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Optimize some representations of no_select

The vast majority of the no_select expressions are stored
as the normalized form.  Using a different calss for these saves
8 bytes for a common case.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>