Update spark_postgres.py removing quoting around sql statement parameterized with sql.Identifier since quotes are added naturally if needed, and removing conn.close() and cursor.close() for memoized connections

Handle case of using float/double ranges in classbreak when the data is int/long

KGEO-656

Added a new show/graph/grammar no-doc api for returning all the graph grammar for end-points and options with its defaults so that these could be used to generate the graph UI widgets without async with the native graph code

KGEO-658

Added the new match_supply_demand choice option to the /match/graph endpoint as well as the option partial_loading. The endpoint now has the capability to schedule multiple supply demand optimizations

Added new option chunk_skipping to the visualise_image Endpoint. Worker is enhanced to do chunk skipping while processing the chunks by looking at the Min/Max or Bounding Box of a chunk. Chunk skipped information i.e Processed chunks to Total chunks, from every Rank and Tom is returned in the Response message

KOLAP-1399

Disabling chunk skipping of visualize Endpoints by DEFAULT

KOLAP-1399

Fix minor issue with the tests for visualize image chart

KOLAP-1399

Fixed a wms issue for visualize Endpoints by adding conversion logic from meters to lon/lat - Handled syncing between workers and GL renderer even when the chunk is skipped in image, image_chart and classbreak Endpoints - Added logic to check if the Min/Max or BoundingBox is set in the chunk. If not set, chunk skipping is disabled

KOLAP-1430

Explain analyze to show explain output even if the query fails. The succeeded endpoints will have all the info and failed endpoint to show the error message. inflight endpoints, unscheduled endpoints will show the default request data

Use boost::try_lexical_cast rather than sscanf to parse unsigned longs

KOLAP-1490

Add expressions to window function range frames add general expressions to window function frame beginning and ending add interval expressions for date types check intervals for overlap add tests for lots of variations of expressions and date intervals allow plural interval values like HOURS and MINUTES for now we don't allow intervals for TIME and DATE because TIMESTAMPDIFF does not support them, but as soon as we modify TIMESTAMPDIFF to support them, support can be turned on

KOLAP-1558

SQL showview statement will show the SQL definition if the materialized views are created through SQL path

/aggregate/unique just calls /aggregate/groupby. This gets all the improvements that groupby has (such as using dict encoding) without reimplementation. Since unique did support operating on collections and groupby does not now unique does not as well tests have been updated to reflect that

Fix problem where error is detected in parsing bad timestamp month value but we don't throw

KOLAP-1602

is_date_string, is_time_string and is_datetime_string no longer use try/catch to determine return value

KOLAP-1608

Add left_join filter-key decorator to primary-key joins and equi-joins moved functions to do this from Worker_predicate_join_filter to FilterPlanner eliminated primary-key attribute-index path from Worker_primary_key_join_filter

KOLAP-1608

Add some more extend_chunk_filter_key functions to the join filters #ifdef out all new chunk-filter-key functions while they are under construction to avoid compiler warnings and unused function calls

All FilterPlans that take expressions new extend the chunk-filter-cache. Added new test that tests each filter-plan type. Added new create_join_table option, 'show_filters_in_explain', to show filter keys between filter-plan steps. Removed ifdefs to comment out new filter cache key creation and instead use the chunk_cache_enabled gpudb.conf parameter to disable

KOLAP-1608

Begin creation of m_chunk_filter_key_map to store keys for joined stencils

KOLAP-1608

Change conf parameter enabling new filter-keys to shadow_cube_enabled. Modify chunk function used in key generation to include set_indices and adjust the set_indies parameter during concatenation adding the set_index_offset

KOLAP-1608

Filter endpoint called on GaiaSet now updates chunk_filter_keys, Fixed problem with forwarding filter keys between joins, added more tests

Make FilterPlanner note set_nullability of left join minimize or maximize plan add tests to test_join_asof.py:test_asof_kolap1616

KOLAP-1618

Fix asof join where data types of expressions being compared are not the same

KOLAP-1619

Change calls to ghp->get_copied_mem_block to ghp->get_mem_block in GaiaSet::update_records_with_map. There was no need to copy the memblock as the ownership of the geometry pointers was not getting transferred to the updated table

KOLAP-1625

Add support for UNSIGNED BIGINT in show sql statement

KOLAP-1627

Fixed error Minimize filter plan when in using hardwired values of 0 and 1 for foreign_key_set_index and primary_key_set_index

Improved method of determining if expression is skippable that as byproduct produces a simplified version of the expression that can be used in filter caching

KOLAP-1629

Initial commit supporting chunk skipping for unary filters

KOLAP-1633

Added and tested new chunk skipping framework. Tested on JoinedSet constructor between filter-plan chunk skipping. Commented out. Can be used as a starting point for the unary filter chunk-skipping. Already handles the 'or' condition but needs to be extended to handle in clauses

KOLAP-1633

Corrected conditions for GE_OP and EQ_OP in new skip_chunk function

KOLAP-1639

Add support for multiple keys in LIST partitions parse nested parentheses to support a LIST of multiple values print nested parens for show table generate filter of multiple keys when adding partition to move from default added tests for multikey list expressions add support for INCREMENT keyword for INTERVAL partitions to avoid redundancy

Fix window function test to handle UTC time test was initialized for eastern time zone, didn't handle when the machine was set to UTC. changed the method of determining time since epoch and reinitialized the test to be timezone-independent

KOLAP-1656

Add PKLookupTable::isMultiChunk function that doesn't require lookup table to be pinned use this in place of lookup->getChunkIndices().size() != 0

KOLAP-1656

Remove TierExecutionContext member from JoinedSetChunk, pass authUserId to its get_datatype() func instead

KOLAP-1659

Accelerate chunk skipping for between plans by using original method to determine if chunk is all_false

KOLAP-1659

Add chunk-skipping tests for charN types and indexed column * New skip algorithm for in clause where we preprocess in operators before looping through chunks convert in operator vector constant to typed vector and record info in RpnElement m_skip_in_dt, m_skip_in_vector Use this information in skip_chunk_for_in_clause to more efficiently process in clauses for chunks Add more tracers to * Parser.h added RpnElement m_skip_in_dt, m_skip_in_vector and handle in copy and assignment operators * Parser.cpp fast return from evaluate_skip if we determine apply_skip_to_rpn tree returns with single constant value do not go through simplifier and evaluator

KOLAP-1659

Add lock to protect the FilterPlan skip info map. Move lock in Type::get_column_name_in_base_set to more correctly protect concurrent access to the m_name_to_base_set_name_map

Fix problem with using create_join_table filtering when get_records_by_column has derived columns

KOLAP-1659

Get GaiaSet count without pinning stencils if possible improves JoinedSet constructor performance for many chunks - Split out chunk skipping in JoinedSet constructor into its own parallized loop required plumbing Worker into JoinedSet constructor - Modified Worker_create_join_table, Worker_join_filter and Worker_incremental_join to pass in Worker to JoinedSet constructor and extend function - WorkerChunker now has Tracer for onProcessChunkImpl

KOLAP-1659

Get_records_by_column now calls create_join_table rather than filter to implement filtering dictated by the expression option