Release Notes
For the release notes of previous versions, or of other components of Jethro, visit Jethro Product Documentation.
To make sure all your Jethro components are compatible with each other, visit the Product Compatibility Matrix page.
Version 2.0.5
RELEASE DATE: JAN 31TH, 2017
Including LDAP authentication (beta), optimization for union queries, additional minor improvements, bug fixes and
New Features
JD-3632 LDAP Authentication (beta)
Improvements
JD-2855 Rewrite: push where predicate to union all
JD-3668 Add timestamps to dmesg output
JD-3669 Add show version to collect logs sql script
JD-3698 Auto cubes: allow cube to match agg(if…) expressions which are decomposed when there is more than one column in the condition
JD-3742 Send earlier status from JethroLoader to the system table
JD-3813 Add SHOW CUBES to collect logs
JD-3817 Add monitor.log to collect logs
JD-3843 Add crontab list to collect logs
Bug Fixes
JD-3670 Select with count(distinct) over cube can cause server failure
JD-3687 Cube matching stops following exception at reading schema
JD-3704 Mishandling of null values in the JDBC driver
JD-3741 Generate cubes – ORDER BY mistakenly added to the cube expression
JD-3750 Cube generation queue is limited to 1000
JD-3751 Update cubes – ID 0.0.0 is mistakenly printed to log as an indication for every query execution
JD-3752 Update Cubes – Update cube should be executed for each key (the cube) instead of executing the original query
JD-3753 Update Cubes – When changing entry type to CUBE we original query SQL is not updated
JD-3754 CASE with aggregation function expression in condition/results fail with “function not found” exception
JD-3762 Jethro ODBC, wrong vendor name.
JD-3771 JethroAdmin create-instance’ doesn’t start the instance automatically when performed using ssh
JD-3785 JethroMaint service failure with: “Too many open files…” messages
JD-3787 Push where wrong write when NOT operator is above AND – possbile occuracy issue
JD-3789 Select with count(distinct) using per partition UKI optimization can cause server failure
JD-3799 Upgrade ODBC SDK
JD-3805 ODBC minor fixes
JD-3806 Tableau TDC – jethro requires explicit cast of null literals
JD-3831 Loader – $LOAD_START load wrong values
JD-3836 Adaptive is not copied to local cache (adaptive fetch to local cache is enabled as global parameter)
JD-3840 Adjust Jethro ODBC to support known escape sequence for outer join {oj ….}
JD-3849 Significant memory leak overtime when enabling cubes
Version 2.0.4
RELEASE DATE: JAN 4TH, 2017
Instruction for upgrade existing instances to 2.0.4
Version 2.0.4 enables system tables events creation by default. The mandatory requirement for system tables is to have loads scheduler services (JethroLoadsScheduler) run automatically. The service must be started and enabled to run automatically as follows:
1. Edit the service.ini file and set the third parameter for all active instances to yes
> vi $JETHRO_HOME/instances/services.ini
–> {instance-name}:port:yes:yes:yes
2. Start the Jethro loads scheduler service:
> service jethro start {instance-name} loadscheduler
New Features
JD-3593 Enable system table events creation by default
Improvements
JD-2784 Flatten query write: remove sub-queries and merge it into the upper query to reduce multi-level queries overheads and avoid where on external queries (optimization not enabled by default)
JD-3591 Count distinct optimization for high cardinality columns: evaluate count distinct per partition to reduce memory footprint and enable using fast bitmap based evaluation
JD-3697 Show cubes – add status column
Bug Fixes
JD-2873 Push where – not performed if contains IN clause
JD-3173 Fix issues with local cache statistics
JD-3129 Push where – Potential server failure following applying push where optimization
JD-3607 Slow query execution with count distinct
JD-3677 Push where – serve failure following partial push where (one of the where expressions is IN expression)
JD-3691 Accuracy issue: when where expression contains NOT IN and join index defined on the NOT IN column
JD-3700 Adaptive cache – adaptive cache results not being invalidated after dim table append
Version 2.0.3
RELEASE DATE: DEC 16TH, 2016
Bugs fixes and improvements.
Issues list:
Improvements
JD-3329 Utility to reconstruct column index from column data
JD-3622 Expand cubes with where support to allow complex WHERE clauses
JD-3662 Generate cube – additional informative message in jethroserver.log when cube is not generated
JD-3675 Enable hi performance count distinct execution mode via count distinct container for CSN128 and Value Hash group by plans
Bug Fixes
JD-3297 Query with HAVING is not finding a cube match
JD-3404 Cube not found by Cube Generator while cube gen query sent to server find a cube
JD-3597 Query hangs – join with right table is sub-query that returns very big result set
JD-3617 Server failure due to query retry as a result of adaptive fingerprint mismatch exception
JD-3649 Memory leak on cubes generation
JD-3654 Adaptive incremental mode not active if new partition was added
JD-3664 Local cache does not update itself with new events (since 2.0.2)
JD-3681 Memory leak at count distinct queries using count distinct container
Version 2.0.2
RELEASE DATE: NOV 25TH, 2016
Bugs fixes and minor improvements.
Issues list:
Improvements
JD-3401 ODBC: Enhancements for copy TDC file in ODBC installation
Bug Fixes
JD-3458 Jethro server failure during active load while frequent queries sent to the system table (adaptive problem)
JD-3606 Maint service fail and stop due to problem in garbage collection
JD-3608 Maint service fail to initialize in case it fails to commit session configuration
JD-3619 ODBC: fix issue that cause Tableau to fail when disconnect is called without connect
Version 2.0.1
RELEASE DATE: NOV 17TH, 2016
Fixes for 2.0.0 known limitations/bugs.
Issues list:
Improvements
JD-3574 Stop/start of cubes generation/update via set command (no maint restart required)
Bug Fixes
JD-3416 Cubes with avg(if) are not matched
JD-3585 Auto cubes – read from cube accuracy issue when two different aggregations encapsulate an identical CASE/IF expression
JD-3586 SHARED.WHERE WARN Release shared object cannot found a relevant object in map
JD-3587 Auto cubes – read from cube accuracy issue when AVG aggregation encapsulate CASE/IF expression
JD-3588 JethroClient does not exit gracfully after failure (exception handling issue)
Version 2.0.0
RELEASE DATE: NOV 15TH, 2016
Jethro 2.0 introduces auto micro cubes.
Jethro auto micro cubes brings the great performance value of pre-aggregated cubes, combined with the ability to automatically generate and transparently maintain those cube.
Cubes can be useful to accelerate performance for certain set of queries, mainly queries that are not highly filter and would normally scan large parts of the data set. Jethro optimizer combines cubes with indexing and caching technology to ensure interactive queries response time on wide range of use cases.
Issues list:
New Features
JD-2590 Auto Micro Cubes – Match and rewrite dynamic aggregations
JD-2609 Adaptive incremental – Expend support for additional queries types (CSH Hash)
JD-2786 System Tables
JD-2788 System Table for loader events
JD-2919 Auto Micro Cubes – Dynamic aggregation of count distinct queries
JD-2921 Auto Micro Cubes – Support hierarchy levels for timestamp columns
JD-2937 Auto Micro Cubes – Auto generate dynamic aggregations from incoming queries
JD-3110 Auto Micro Cubes – Manual cubes generation via GENERATE CUBES
JD-3111 Auto Micro Cubes – Support cube with where
JD-3112 Auto Micro Cubes – Find match for aggregators that has internal case expression
JD-3118 Auto Micro Cubes – Match count distinct aggregation queries without group by to cubes
JD-3411 Auto Micro Cubes – Allow aggregation queries without group by and with where to generate and match cubes
JD-3345 Auto Micro Cubes – Generate and match cubes for queries without measures
JD-3348 Auto Micro Cubes – SHOW CUBES and related cubes management commands
Improvements
JD-2838 Enable fetch and read adaptive cache files to/from local cache
JD-2839 Add section separators to the jethro loader report file
JD-2878 Add watchdog for JethroMaint
JD-2918 Optimized count distinct for CASE/IF in distinct aggregator
JD-2938 New instances parameters should be set with Yes as default in Service.ini
JD-3043 Count Distinct Optimization: Allow push group by functions and joins to upper query with count distinct using distinct values bitmaps and support adaptive incremental for count distinct
JD-3085 Improve adaptive write efficiency via large write chunks
JD-3183 Adaptive cache read: split each column read according to the size of current TupleSet parameter
JD-3210 Update incremental cubes by maint
JD-3285 Show active queries – add new option to status column: caching
Bug Fixes
JD-2204 Server failure when query is VERY long and includes text after “;”
JD-3137 Memory leak – related to IN with sub-query in outer query
JD-3142 Memory leak of Global UKI
JD-3363 Possible deadlock/leak in buckets merge
JD-3370 Join index not used when where clause contains OR not null
JD-3379 Server failure when query reads all adaptive columns into single buffer
JD-3467 Query failed with error – limit issue
JD-3507 Jethro server failed to execute query with IN literal left operand
JD-3514 Jethro Server failure – query hit partition holder internal error