The 6.0 branch forked the 5.11 branch from version 5.11.4 See the 5.11 changelog for changes before the fork.Documentation Index
Fetch the complete documentation index at: https://docs.activeviam.com/llms.txt
Use this file to discover all available pages before exploring further.
6.0.14
2024-05-30Added
- PIVOT-9230 Added a default parser for
Instantclass and its correspondingILiteralType.TIMESTAMP.
Changed
- PIVOT-9257 Improved the XMLA member discovery to only send custom member properties when only one level is requested. This follows closely the XMLA specification.
Deprecated
- PIVOT-9303 The
IActivePivotContentServicecan no longer be used to store userIContextValue. Multiple methods surrounding the use of context values are removed, includinggetContextValue,setContextValue,removeContextValue, etc…
Fixed
- PIVOT-9299 Fixed
ZeroVector.cloneOnHeap()method to return a new mutable array vector instead ofthis. This issue was causingUnsupportedOperationExceptionwhen modifying vectors. - PIVOT-8867 Context values of stream measure are now propagated to
NeighborValuePostProcessor. - PIVOT-9177 Fixed error propagation from data cube to query cube when aggregates cache is enabled.
- PIVOT-9256 Resolved a bug causing the data export REST endpoint to return a 500 error code when the MDX query had an empty result. Now, it generates an empty file and returns a 200 status code to indicate success.
- PIVOT-9257 Fixed
NullPointerExceptions raised when passing unknown members to the XMLA member discovery. - PIVOT-9299 Fixed
ZeroVector.cloneOnHeap()method to return a new mutable array vector instead ofthis. This issue was causingUnsupportedOperationExceptionwhen modifying vectors. - PIVOT-9301 Context value
drillthrough.maxrowsis now taken into account in distributed: the merged result cannot exceedmaxrowsrows. - PIVOT-9317 Failing
HelloMessageno more leaves the cube in invalid state causing cube discovery failures.
Security
- PIVOT-9504 Bump
com.amazon.redshift:redshift-jdbc42to version2.1.0.28to fix CVE-2024-32888. - PIVOT-9546 Upgraded
com.amazonaws:aws-sdk-redshiftandcom.amazonaws:aws-sdk-s3to version1.12.638to fix CVE-2024-21634. - PIVOT-9546 Upgraded
org.springframework:spring-webto version5.3.34to fix CVE-2016-1000027.
6.0.13
2024-04-11Added
- PIVOT-8557 Log a message when a data node’s contributions are removed from the distribution because
removalDelayhas been exceeded. - PIVOT-8994 Added
DirectMemoryTracker.getTotalUsedMemory()to track reserved memory that is not in the cache.JvmMemoryReport.getUsedDirectMemory()now returns used memory. UseJvmMemoryReport.getReservedDirectMemory()to get reserved memory. - PIVOT-9151
activeviam.atoti.xmla.maxBufferSize, anActiveViamPropertyhas been added to set the maximum size in bytes of an XMLA result.
Changed
- PIVOT-8927 Do not retrieve context values when a user pauses or un-registers MDX queries through the WebSocket service.
- PIVOT-8959 The experimental Maven module
generic-jdbchas its groupId changed tocom.activeviam.database. - PIVOT-9151 LimitedByteArrayOutputStream doesn’t try anymore to guess if the write operation will result in an OOM. Instead, it checks if the stream to write is larger than the maximum size of the buffer set by “activeviam.atoti.xmla.maxBufferSize”.
Deprecated
- PIVOT-8849 The class
com.qfs.util.impl.InterruptionUtilis no longer deprecated and marked as internal, following feed-back stating that it was used in client code and post-processors. - PIVOT-8927 The class
com.qfs.spring.websocket.impl.ContextValueWebSocketHandlerhas been marked as deprecated without alternative. This class was internally used to apply context values for some special services and is not needed anymore. - PIVOT-8927 The bean
com.qfs.server.cfg.impl.ActivePivotWebSocketServicesConfig#contextValueWebSocketHandler()is deprecated for removal. It was used internally to apply some security and is not needed anymore. - PIVOT-9066 The class
com.activeviam.apm.logging.impl.LogbackLoggerUtilhas been marked as deprecated without alternative. This class was internally used to forward java.util.logging/JUL logs to Logback and is not needed anymore.
Fixed
- PIVOT-8522 Fixed an issue with the context value
IQueryResultLimitwhere setting one of the two limits could also change the value for the other limit. - PIVOT-8762 Fixed ArrayIndexOutOfBounds exception when using UDAF.
- PIVOT-8820 Fixed serialization of Copper calculation chains defined in the Data cube.
- PIVOT-8917 Fixed inefficiency in Planning Graph’s partial provider selection step. In particular, queries against long computation chains should no longer have a long planning phase when range sharing is enabled.
- PIVOT-8921 Fixed performance issues in MDX engine occurring when argument sets of NonEmpty MDX function have common hierarchies specified in its tuples.
- PIVOT-8950 Correct the definition of the data export REST service when used in conjunction with the module com.activeviam.apm:apm and with the profile application-monitoring enabled. This was previously failing with errors like “The mapped handler method class ‘com.activeviam.pivot.rest.dataexport.DataExportRestServiceController’ is not an instance of the actual controller bean class”.
- PIVOT-9026 Improved performance of unknown measure handling in
AAdvancedPostProcessor. This should improve startup time of polymorphic distributed applications in which some data nodes take a long time to join the cluster. - PIVOT-9043 Fixed a memory leak that could happen when Atoti Server was not properly stopping scheduled tasks.
- PIVOT-9049 DirectQuery: correctly apply the cube
IFilterDescriptionto the hierarchy feeding queries. - PIVOT-9054 Query Cube’s Health Event associated with handling
GoodByeMessagenow properly logs which node has left the cluster. - PIVOT-9066 Enable the use of another SLF4J implementation other than Logback. When Logback is used, structured logs are generated as before. When another SLF4J implementation is used, plain logs are generated.
- PIVOT-9143 Fix an issue where intersecting a
CubeFilterBuilderwith aCubeFilterthat was already previously intersected with a third filter would mutate the initialCubeFilter.
6.0.12
2024-02-29Added
- PIVOT-8761 Added a new Copper measure:
Copper.experimental().switchOn(...). - PIVOT-8787 DirectQuery: Support for inequality operators (>, >=, <, <=) in queries conditions.
Changed
- PIVOT-8283 When using the experimental Distributed Copper API, queries on a horizontally distributed cluster will now be distributed up to the first non-distributed post-processor of the operations chain (versus being distributed from the first distributed post-processor of the chain).
- PIVOT-8667 Improved partitioning algorithm of
PrimitiveAggregationNode. This should result in a better performance of queries when large analysis hierarchies are involved.
Deprecated
- PIVOT-8660
com.activeviam.source.jdbc.api.calculator.JdbcCalculatorUtilsis deprecated. Usecom.activeviam.tech.jdbc.internal.read.JdbcReaderUtilsinstead.
Fixed
- PIVOT-8132 POJOColumnCalculator is now thread safe.
- PIVOT-8228 Fixed performance issues with cell property initialization when executing MDX queries.
- PIVOT-8411 Fixed the deltas sent to update the values of continuous queries involving location shifting
post-processor measures (such as
CopperMeasure.parentValueOnetc.). - PIVOT-8419 Fixed equal and in condition on insertion time update where trigger early registration.
- PIVOT-8750 Fixed
PartitionStatistics.getMaxRowId(). - PIVOT-8782 Fixed issues when exporting Mdx query in Arrow files without COLUMNS.
Security
- PIVOT-8671 DirectQuery: Upgraded
com.clickhouse:clickhouse-http-clientto version 0.6.0 to fix CVE-2024-23689. This might change a few Clickhouse imports.
6.0.11
2024-01-16Added
- PIVOT-4994 Added new property
IDataClusterDefinition.CONCEAL_BRANCHESto hide the branches of the data cube from the query cubes. - PIVOT-6525 DirectQuery: introduce mechanism to incrementally refresh cube with data from external database. See
com.activeviam.directquery.application.api.IRefreshable#refresh(ChangeDescription)and associated documentation. - PIVOT-8437 Add experimental API to access the database in Copper:
Copper.experimental().databaseMeasure(...). - PIVOT-8478 Added a new class
com.activeviam.pivot.server.spring.api.Servicesto createIDatabaseService.
Changed
- PIVOT-8515
MINandMAXaggregation functions now support objects that implement theComparableinterface.
Deprecated
- PIVOT-8376
MdxDrillthroughToCsvConverter(MdxDrillthroughRowset, IJsonOutputConfiguration)is deprecated in favor ofMdxDrillthroughToCsvConverter(MdxDrillthroughRowset, IJsonCsvOutputConfiguration). - PIVOT-8478 Deprecated internal methods in
com.qfs.server.cfg.impl.DatabaseRestServicesConfig.
Removed
Fixed
- PIVOT-5110 Fixed
DrillthroughPropertiesdeep clone method. - PIVOT-5283 Fixed
QueryResultsProcessingTaskstatistics on aggregation duration. - PIVOT-6475 Fixed a bug in aggregates cache which might lead to producing empty results on subsequent queries involving the same location.
- PIVOT-7838 Fixed class cast in
ShiftMeasure.LevelShift#equals. - PIVOT-8316 Improved execution speed of queries with filters on partial providers.
- PIVOT-8343 Improved record query performance when run on current thread by not creating empty completion tasks for non-matching partitions.
- PIVOT-8427 Fixed null value handling in Copper UDAF
.outputFromBuffer(). - PIVOT-8480 Fixed bug in
GetAggregatesResultCellsetTesterthat caused an error while checking integer measures with.hasValues(). - PIVOT-8517 Fixed thread starvation issue when the threads of each NUMA node wait for the threads from another NUMA nodes to finish.
Security
6.0.10
2023-12-07Added
- PIVOT-8128 Added specific calculators for vectors in JDBC Source:
DoubleArrayJdbcColumnCalculator,IntegerArrayJdbcColumnCalculator,FloatArrayJdbcColumnCalculatorandLongArrayJdbcColumnCalculator. - PIVOT-8137
IReadableDatastore#getEntityResolver()now returns anIDatastoreSchemaEntityResolverto be able to get specific metadata about a Datastore. - PIVOT-8169 Added
IJdbcSourceBuilderto create anIJDBCSource. - PIVOT-8211 Added
KeyValueSourceFactoryto create anIKeyValueSource. - PIVOT-8274 Added
CsvSourceFactoryto create anICSVSource.
Changed
- PIVOT-8127 Jdbc source: convert automatically array column to datastore vector column.
Deprecated
- PIVOT-8027 DirectQuery: Static method
com.activeviam.directquery.YOUR_DATABASE.api.Session#registerUdaf()has been deprecated in favor ofcom.activeviam.directquery.YOUR_DATABASE.api.Session#registerSqlUdaf(). - PIVOT-8137 Deprecated methods
IDatastoreSchema#getPartitioningDescription(String)andIDatastoreSchema#getNumaSelectorDescription(String). - PIVOT-8169 Deprecated
AJDBCSource,ArrayJDBCSource,MapJDBCSourceandNativeJDBCSource, useIJDBCSource.builder()instead. - PIVOT-8211 Deprecated
KeyValueSource, useKeyValueSourceFactoryinstead. - PIVOT-8247
IDatastoreSchemaDescriptionPostProcessorand all the implementations are deprecated. Datastore’s description post-processors are no longer needed. Most of the transformation done in the post processors can be done directly at the schema’s description creation. - PIVOT-8274 Deprecated
CSVSource, useCsvSourceFactoryinstead.
Fixed
- PIVOT-7960 Fixed the deadlock in the
ConflationEventEnginecaused by the asynchronous processing of events of different types. - PIVOT-8182 In a distributed setup, unexpected errors that happened in one cube while sending a message should no longer cause off-heap memory leaks after failing to properly receive this message in another cube. These leaks are believed to be Netty buffers that were not properly released on error handling.
- PIVOT-8322 Fixed NotSerializableException when using
Copper.userDefinedAggon a query cube. - PIVOT-8318 Fixed NullPointerException when registering a stream for post-processed measure depending on a store lookup in a Query Cube.
- PIVOT-8359 Reduce memory footprint for hash code computation of datastore conditions.
- PIVOT-8359 Speed up hash code computation for cube conditions.
Security
- PIVOT-7805 Migrated the products to depend on Spring Boot 2.7.17, to address CVE-2023-44487.
- PIVOT-7805 Upgraded
com.google.cloud:google-cloud-bigqueryto 2.34.0 to fix CVE-2023-5072 - PIVOT-7805 Upgraded
com.google.cloud:google-cloud-bigquerystorageto 2.44.1,com.google.cloud:google-cloud-bigquerystorageto 2.29.0 andcom.google.guava:guavato 32.1.3-jre for dependencies convergence. - PIVOT-8319 Migrated the products to depend on Spring Boot 2.7.18, to address CVE-2023-4586 and CVE-2023-34062.
- PIVOT-8319 Upgrade
ch.qos.logback:logback-core,ch.qos.logback:logback-classicandch.qos.logback:logback-accessto version 1.2.13 to fix CVE-2023-6378.
6.0.9
2023-10-27Added
- PIVOT-5894 Experimental: Copper can now be used with distributed cubes. See documentation.
- PIVOT-7769 Added
CopperPostProcessor.executeInDataCube()method. - PIVOT-7236 PIVOT-7893 Improved the performance of cycle detection in the planning of a pivot query.
When printing the query plan timings, this should improve the part that falls into
Planning finalization duration, which happens before the actual execution of the query (associated withexecution time). This development impacts queries with a large query plan (several hundreds of nodes) - PIVOT-8008 Added readiness endpoint on atoti server
/actuator/health/readiness
Changed
- PIVOT-7246 DirectQuery: upgrade
com.amazon.redshift:redshift-jdbc42to 2.1.0.19.
Deprecated
Removed
Fixed
- PIVOT-7580 Fix continuous MDX query initialization issue caused by uninitialized post-processor on a query cube.
- PIVOT-7111 Fix missing
maxLevelPerHierarchyfield oncube/query/mdxendpoint.
Security
6.0.8
2023-10-18Version 6.0.8 introduced a major error in the Leaf Aggregate Provider.
Version 6.0.9 is released early to remediate this issue.
Added
- PIVOT-5875 Added the
PercentileFunctionaggregation function. See the Percentile documentation page. - PIVOT-7176 The cube filter is now used in distributed cubes to limit the number of data nodes the query is sent to.
- PIVOT-7202 Add
withTableFields(String...fieldNames)to simplify the creation of database queries. For instancewithFields(FieldPath.of("fieldName1"), FieldPath.of("fieldName2"))can now be replaced bywithTableFields("fieldName1", "fieldName2"). - PIVOT-7441 Support all signatures of InStr in MDX queries.
- PIVOT-7737 Support fields beginning by
$in update-where procedures of the database service.
Changed
- PIVOT-7737 Do not require procedures to start by
$in update-where of the database service. - PIVOT-7737 Make the database service update-where considered keys as procedures first and then as field names.
- PIVOT-7878
CopperLevel.isin(Collection<Object>)was replaced byisin(Collection<?>)to reduce ambiguities withCopperLevel.isin(Object...). - PIVOT-7931 Improved the performance of
LeafAggregateProviderwhen the majority of members of the hierarchy are included in the level filter. - PIVOT-8031 Analysis hierarchies extending
AAnalysisHierarchyV2no longer need to define anIAnalysisHierarchyDescriptionProviderif their full description is given to the new method added to the description builder:withAnalysisHierarchy(IAnalysisHierarchyDescription).
Deprecated
- PIVOT-7807 DirectQuery: Method
com.activeviam.directquery.YOUR_DATABASE.api.Database#getSchema()has been deprecated in favor ofcom.activeviam.directquery.YOUR_DATABASE.api.Database#getUserSchema(). - PIVOT-7754 Methods
withFields(String...fieldNames)have been deprecated in favor ofwithFieldsWithoutAlias(String...fieldNames).
Fixed
- PIVOT-7632 The XMLA Servlet now properly handles Excel requests to cancel a query. Excel primarily sends cancellation requests when a user types in a search bar, stops typing (a query is sent to Atoti Server), and then resumes typing.
- PIVOT-7640 Fix issue with
CurrentOrdinalmdx function not being able to operate on aliased sets. - PIVOT-7682 Fix NPE when a file was not found in content service.
- PIVOT-7732
CopperPostProcessor.withType(...)now returns aCopperPostProcessorinstead of aCopperMeasure. - PIVOT-7785 Fix issue with queries where a group-by field has an alias conflicting with the path of a field used in a measure.
- PIVOT-7822 Fix issue with datastore aggregate queries when querying for duplicate field paths and some specific conditions.
- PIVOT-7910
NeighborValuePostProcessorno longer throws anAssertionErrorif queried on a non-existing member of the shifting hierarchy. - PIVOT-8031 Fix clone method of hierarchy description.
Security
- PIVOT-7805 Upgraded
org.springframework.securityto 5.8.17. - PIVOT-7805 Migrated the products to depend on Spring Boot 2.7.16, to address as many CVEs as possible.
- PIVOT-7805 Upgraded Google libraries (
com.google.cloud:google-cloud-bigqueryto 2.33.1,com.google.cloud:google-cloud-bigquerystorageto 2.43.0,google-cloud-storageto 2.27.1,com.google.guava:guavato 32.1.2-jre) to mitigate CVE-2022-3171 and CVE-2023-32731. - PIVOT-7805 Upgraded
org.apache.arrow:arrow-vectorandorg.apache.arrow:arrow-memory-unsafeto 12.0.1 for dependency convergence with Google ecosystem. - PIVOT-7805 Upgraded
com.nimbusds:nimbus-jose-jwtto 9.35 to mitigate CVE-2023-1370. - PIVOT-7805 Upgraded
org.xerial.snappy:snappy-javato 1.1.10.5 to mitigate CVE-2023-43642. - PIVOT-7805 Upgraded
org.mybatis:mybatisto 3.5.13 to mitigate XRAY-127508 and CVE-2020-26945. - PIVOT-7805 Upgraded
org.yaml:snakeyamlto 2.0 to mitigate CVE-2022-1471. - PIVOT-7805 Upgraded
org.mozilla:rhinoto 1.7.14 to mitigate XRAY-178804. - PIVOT-7888 Upgraded libraries to connect to Microsoft Azure (
azure-sdk-bomto 1.2.17,azure-resourcemanagerto 2.31.0). - PIVOT-7888 Replaced
org.apache.velocity:velocity-toolswithorg.apache.velocity.tools:velocity-tools-generic3.1 and upgradedorg.apache.velocity:velocity-engine-coreto mitigate CVE-2015-0899, CVE-2016-1181, CVE-2018-1000632, CVE-2020-10683, CVE-2020-13936.
6.0.7
2023-08-31Added
- PIVOT-5714 Add a
DistinctCountHistoryFunctionfunction: a distinct count that properly supports removal. - PIVOT-7295 Add a CubeFilter translator to allow the cube filters to be added to the map of context values in REST queries.
- PIVOT-7563 Add support for emulated vectors (multi-row and multi-column) in DirectQuery Databricks connector.
Changed
- PIVOT-6776 Mapper functions in post-processors are no longer obliged to write
nullvalues int result cells explicitly. - PIVOT-7382 Packages can now be excluded from the
ClasspathContributionProvider’s scan. - PIVOT-7554 Copper measures that have name are now visible by default.
- PIVOT-7611 Default lifetime of session context values is increased from 10 minutes to 10 hours.
Removed
- PIVOT-7553 Maven module
composer-testnow imports its own test dependencies using<scope>test</test>. Projects relying on this module to transitively importjunit-jupiter-params,awaitilityandmockito-corewill need to add these dependencies to their own dependencies. - PIVOT-7553 Maven module
composer-testno longer importsspring-cloud-starter-sleuth.
Fixed
- PIVOT-5714 Changed the
DistinctCountFunctionto accept non-comparable types. - PIVOT-7377 Fixed a parallelism issue and improved the speed of an aggregate provider transaction in a very specific case: multiple database partitions only contribute to a unique partition of an aggregate provider.
- PIVOT-7402 The
MdxBenchmarkclass has been replaced by the now workingRestClientMDXBenchmark. - PIVOT-7570 Fix issue in SQL generation for large multi row vectors in MsSql.
- PIVOT-7644 Fix issue with Aggregate Table not being used for some databases.
- PIVOT-7693 DirectQuery: Increase timeout for creating a connection on Redshift connection pool to avoid failure at initial loading.
Security
- PIVOT-7568 Upgrade spring-boot to 2.7.14 to patch CVE-2023-20883 and CVE-2023-33008.
- PIVOT-7568 Upgrade snappy-java to 1.1.10.3 to patch CVE-2023-34453, CVE-2023-34454 and CVE-2023-34455.
6.0.6
2023-07-26Added
- PIVOT-5860 In the
MemoryAnalysisServiceMBean, added an operationDump full application memory statisticsexporting memory statistics for all versions. - PIVOT-6356 DirectQuery: add support for Databricks database.
- PIVOT-7429 DirectQuery: introduction of settings POJO for configuration purpose:
BigqueryDirectQuerySettings,ClickhouseDirectQuerySettings,DatabricksDirectQuerySettings,MsSqlDirectQuerySettings,RedshiftDirectQuerySettings,SnowflakeDirectQuerySettings,SynapseDirectQuerySettings.
Changed
- PIVOT-5860 In the
MemoryAnalysisServiceMBean, renamed the operationDump memory statisticstoDump memory statistics for most recent versionsince this operation only exports the most recent version. - PIVOT-7349
RecordFormat#getFieldNamesno longer creates a new list at each method call, thus improving its footprint.
Security
- PIVOT-7349
PropertiesRecordFormatis no longer used internally and is now deprecated, for removal in 6.1.0. - PIVOT-7429 DirectQuery: Configuration parameters for DirectQuery that were passed via
ActiveViamProperty(either JVM arguments or environment variables) have been deprecated in favor of the associated POJO (BigqueryDirectQuerySettings,ClickhouseDirectQuerySettings,DatabricksDirectQuerySettings,MsSqlDirectQuerySettings,RedshiftDirectQuerySettings,SnowflakeDirectQuerySettings,SynapseDirectQuerySettings).
Fixed
- PIVOT-7236 Fix performance issue in
CycleDetectingGraphVisitor. - PIVOT-7269 Updated
IPostProcessor#IS_PARTITIONED_ON_RANGE_LEVELS_PROPERTYjavadoc to correctly link to its default value. - PIVOT-7308 Fix unnecessary cloning of swapped vector blocks.
- PIVOT-7315 Fix overriding epoch dimension visibility with the mdx context.
- PIVOT-7316 Fix query issue when distributing field is null or “N/A”. The query engine used to skip cubes with only null distributing fields values.
- PIVOT-7321 When running
ListQueriesagainst a Datastore, the optionrunCurrentThreadno longer forks an additional task. - PIVOT-7336
Copper.storeLookupcould use a too recent Datastore version when a transaction would create a Datastore version but not an ActivePivot one. - PIVOT-7359 When asked to output the
Ktop/bottom elements of the vector, theZeroVectorclass no longer throwsIndexArrayOutOfBoundExceptionwhenK = vector.size(). - PIVOT-7367 Properly propagate context value dependencies when optimizing calculated measures with Copper.
- PIVOT-7398 Fix issue with slicing introspection analysis hierarchy and aggregate provider on DirectQuery.
- PIVOT-7413 Fix SQL for queries with Multi Row Vector tables and incomplete joins in DirectQuery.
- PIVOT-7419 Fix bug in DrilldownMember causing members to be missing in the result.
- PIVOT-7433 Filters on Member captions through XMLA were not properly taken into account.
6.0.5
2023-06-08Added
- PIVOT-6176 Add a
WebSocketSnippetto test the WebSocket server with a client call. - PIVOT-6804 Add possibility to enable aggressive check (using
ActiveVIamProperty#AGGRESSIVE_CELLSET_SIZE_CHECK_PROPERTY) on MDX CellSet axis positions during axis materialization (see andIMdxContext#getAxisPositionLimit()). - PIVOT-6953 Atoti Python SDK: Add configuration options for Hibernate
- PIVOT-6980 Allow Atoti Python SDK to specify custom distribution protocol, include S3Ping JAR
in
atoti-awsplugin. - PIVOT-7046 Added
getHierarchicalMapping()onIActivePivot. - PIVOT-7272 Allow Atoti Python SDK to specify distributing fields.
Changed
- PIVOT-6957 All Basic authentication mechanisms are replaced by Login Form authentication. Atoti Server Application users may now specify path to their own HTML login pages when using LDAP, Kerberos or Basic authentication mechanisms.
Deprecated
- PIVOT-7046
IActivePivot.getAggregateProvider()is deprecated in favor ofIActivePivot.getHierarchicalMapping()
Fixed
- PIVOT-5978
LimitedByteArrayOutputStreamnow handles specific edge cases that could cause the XMLA Servlet to still generate Out of Memory Errors. - PIVOT-6593 Improved read/write and serialization/deserialization performances on snappy-compressed files in memory statistics exports.
- PIVOT-6923 Datastore implementation of
IQueryRunner#getByKeyQuery()now accepts key fields in the order specified byIDataTable#getKeyFieldNames(). - PIVOT-7020 Correctly propagate exception to partitions of a
JITPrimitiveAggregatesRetrieval. - PIVOT-7044 Reduce the time needed to create Copper measures.
- PIVOT-7050 Inserting data into an initially empty joined store now correctly updates corresponding analysis hierarchies.
- PIVOT-7062 Fix data loading for JDBC drivers that do not support fetch size hints.
- PIVOT-7081 Fix implementation of
FastLogicalQFSBitmap#interruptibleNaiveOr(..). Previous implementation didn’t account for the append-only constraint of theQFSBitmap. - PIVOT-7078 Fix a performance regression for Vector-based Aggregations.
- PIVOT-7089 Fix data race on drop of empty results in ExecutionPlan.
- PIVOT-7145 DirectQuery: Supports a wider range of special characters in ClickHouse column names.
- PIVOT-7160 DirectQuery: Fix generated MAC dump when using an AdaptiveJit as full provider with DirectQuery.
- PIVOT-7188 DirectQuery: Fix issue during validation of DirectQuery when using distributed cube.
- PIVOT-7209 Fix NullPointerException in ActivePivot Monitoring when retrieving attributes of Query Cube MBean in distributed setup.
- PIVOT-7240 DirectQuery: Fix issue on streamed list queries which could lead to record loss.
- PIVOT-7260 Fix bug preventing java code being reused to define Copper level filtering measures.
Security
- PIVOT-7057 Upgrade snowflake-jdbc to 3.13.30 to patch a vulnerability to command injection via SSO URL authentication.
- PIVOT-7230 Upgrade spring-boot to 2.7.11 to patch CVE-2023-20873.
6.0.4
2023-04-17Added
- PIVOT-5523 The context value expiration time can now be configured by
ActiveViamProperty.CONTEXT_VALUE_MANAGER_VALUE_LIFETIME_PROPERTY. This will affect the calculated members created by Excel. - PIVOT-5964 Added builder for
GetByKeyQuery. - PIVOT-6840 Added query tags on
GetByKeyQuery. - PIVOT-7072 Added
IDatabase.getMasterHead(). It will replaceIDatastore.getHead().
Changed
- PIVOT-5446 Error messages that are printed when accessing the reserved position for
nullvalues in aNullableDictionaryare now clearer. - PIVOT-6984 DirectQuery for ClickHouse correctly reports unsupported table Engines. This was previously unchecked, causing to unknown behavior when used with incorrect engines.
Deprecated
- PIVOT-3121 Deprecating the following datastore classes as part of internal cleaning of unused classes:
com.qfs.store.query.IFieldCriterioncom.qfs.store.query.IRecordMatchercom.qfs.store.query.plan.IStoreQueryPlanToBecom.qfs.store.query.plan.impl.QueryPlanToBecom.qfs.store.record.IFieldMatchRecordProcedurecom.qfs.store.record.flatten.IRecordFlattenerFactorycom.qfs.store.transaction.ILogActioncom.qfs.store.transaction.impl.MoveLogAction
- PIVOT-6175
com.activeviam.tech.partitioning.internal.IPartitioning#getMaxPartitionId()is deprecated in favor ofPartitioningSnapshot#getMaxPartitionId(). - PIVOT-6175
com.activeviam.tech.partitioning.internal.impl.PartitioningUtil#initializePartitioning(IPartitioning, IPartitioning, TIntIntMap)is deprecated in favor ofPartitioningSnapshot#from(IPartitioning, TIntIntMap, PartitioningSnapshot).
Removed
- PIVOT-6051 DirectQuery: the property
com.activeviam.properties.impl.ActiveViamProperty.MANAGER_FEEDING_TIMEOUThas been deprecated to avoid the misconception that the query was cancelled by ActivePivot.
Fixed
- PIVOT-5288 Fix
TimeLineHandlerimpact computation for distribution. - PIVOT-5316 Fix issue with not seeing all processor cores for Windows machines with 64+ CPUs.
- PIVOT-6213
DatastoreTransactionQueryRunnerno longer creates a transaction object on a partition when there is a transaction on the store. - PIVOT-6506 Now stopping the application will wait for the cache to be discarded.
- PIVOT-6640 Atoti Python SDK: Ignore non-JSON files when loading translations.
- PIVOT-6642 Improve thread synchronization in the MDX engine.
- PIVOT-6669 Speed up query using the Mdx range operator in subselects.
- PIVOT-6792 Fix race condition in distribution. The issue appeared intermittently on consecutive branch creation and deletion.
- PIVOT-6796 Fix performance regression when feeding copper defined analysis hierarchies.
- PIVOT-6817 DirectQuery: fix issue with count in some query using multi row vector tables.
- PIVOT-6834 Fix
ClassCastExceptionwhen collecting query plan retrieval timings. - PIVOT-6917 Distributed drillthrough queries properly function when one of the application’s data nodes declares concealed hierarchies.
- PIVOT-6987 and PIVOT-7068 DirectQuery: fix issue with SQL generation when querying multi row vector tables while filtering on another table.
- PIVOT-7034 DirectQuery: fix possible deadlock when managing update-where triggers in the datastores bundled in DirectQuery applications.
- PIVOT-7053 Fix Unknown coordinate exception on Analysis hierarchy
- PIVOT-7054 DirectQuery: fix issue with SQL generation in case of joins towards multi row vector tables when the local and external table names of the target table are different.
6.0.3
2023-03-07Added
- PIVOT-5565
IJoinMeasureDescription#setMapping(Collection)is added to allow to use a level in a copper join more than once. Its corresponding getter isIJoinMeasureDescription#getMappingToCube(). - PIVOT-6168 Add execution context compute time per retrieval to query plan, only available for bitmap retrievals.
- PIVOT-5875 Added the
MedianFunctionaggregation function. - PIVOT-5929 Allow to add a prefix to the names generated in the content server with
ActiveViamProperty.CONTENT_SERVICE_NAME_GENERATOR_PREFIX. This is done to easily differentiate between artifacts and assets created on different content server instances. - PIVOT-6644 DirectQuery: Add validator on joins for external databases;
- PIVOT-6645 DirectQuery: Add validator on null values in multi-column primitive vectors.
- PIVOT-6646 DirectQuery: Add validator on null values in multi-rows primitive vectors.
Deprecated
- PIVOT-5565
IJoinMeasureDescription#getMapping()is deprecated in favor ofIJoinMeasureDescription#getMappingToCube()returning a collection of mapping between levels and fields. This allows to map the same levels multiple times to different fields. The setterIJoinMeasureDescription#setMapping(Map)has been deprecated as well. - PIVOT-6672
com.qfs.distribution.impl.QueryCubeSync#viewin favor ofcom.qfs.distribution.impl.QueryCubeSync#getView(). - PIVOT-6687
com.qfs.pivot.agg.IAggregateStore#getMeasureColumnIndex(String)is deprecated, in favor ofcom.qfs.pivot.agg.IAggregateStore#getColumnIndex(String).
Fixed
- PIVOT-5744 Wait for result size task to be done before discarding retrieval’s result.
- PIVOT-6581 Fix issue when using DirectQuery on Snowflake with a proxy.
- PIVOT-6596 Fix
NullPointerExceptionwhen querying a database with a non null condition and a null additional condition. - PIVOT-6730 MDX Calculated Members properly work again in polymorphic distributed applications.
- PIVOT-6745 Clustering fields are detected in join tables to trigger multi step queries.
6.0.2
2023-02-10Added
- PIVOT-5874 Add the
Copper#argmaxandCopper#argminfunctions. - PIVOT-5981 Support Microsoft SQL Server (mssql) version 2017, 2019 & 2022
Changed
- PIVOT-5031 Restore
printNumaConfiguration()for Aggregate Providers. - PIVOT-5693 Reduce transient memory footprint of the JIT aggregate provider. This is particularly crucial for use cases including a large number of small transactions.
- PIVOT-5317 The property
ActiveviamProperty#DATA_CUBE_REST_ENDPOINT_PROPERTYhas now been split into two properties,ActiveviamProperty#DATA_CUBE_REST_ENDPOINT_PORT_PROPERTYandActiveviamProperty#DATA_CUBE_REST_ENDPOINT_SUFFIX_PROPERTY. - PIVOT-6036
IStatisticsQueryRunner.estimateColumnCardinalitynow throwsCannotEstimateColumnCardinalityExceptionif the estimation is not possible (instead of various Exceptions). - PIVOT-6046 Now the query engine checks for interruptions during the planning phase. This is done to avoid cases where the query involving a lot of filtering blocks the session.
- PIVOT-6204 Allow users to disable the initialization of an application in DirectQuery beans. The bean method
#startApplicationfrom base configuration classes can be disabled using the propertyactiveviam.directquery.spring.enableLegacyInitialization. Users should instead do their own initialization using tools likeCommandLineRunner.
This applies toABigQueryConfig,AClickhouseConfig,ARedshiftConfig,ASnowflakeConfigandASynapseConfig. - PIVOT-6210 internal
IActivePivotSessionhave been removed from all distributed messengers and messages. - PIVOT-6210 internal the constructor parameter
Id(referring to the session id) has been removed from all messenger constructors. - PIVOT-6210 Getting/Setting the range sharing limit using JMX is now located in the pivot MBean instead of the
QueryPlanMBean. - PIVOT-6210 Distributed messages implementing the
IDatabaseAwareinterface will be injected a database. - PIVOT-6211 Database queries correctly fail when having several fields with the same alias.
- PIVOT-6436 Change packages of internal Database query objects erroneously located in public packages.
- PIVOT-6521 internal
IActivePivotSessionand its subclasses have been removed. - PIVOT-6521 The class
MdxQueryUtilprovides utility classes to execute MDX queries.
Deprecated
- PIVOT-6204 The method
#apManagerInitPrerequisitePluginInjectionsfrom DirectQuery base configuration classes has been deprecated. Users should instead do their own initialization using tools likeCommandLineRunner.
This applies toABigQueryConfig,AClickhouseConfig,AMsSqlConfig,ARedshiftConfig,ASnowflakeConfigandASynapseConfig.
Removed
- PIVOT-5317 Remove the syntax allowing to define multiple endpoint within a single application.
Fixed
- PIVOT-4134 Fix
NullPointerExceptionin the query plan caused by invalid locations or measures in Prefetchers. - PIVOT-5541 In a distributed application, a restart of a messenger will now properly free the port it was previously bound to. The freed port will be reusable, meaning that a messenger will no longer be able to use its entire dedicated range of ports.
- PIVOT-5767 Wait for the datastore to close before stopping
QfsPools. - PIVOT-5994 Children of range-sharing retrievals are correctly printed as dependency in the query plan.
- PIVOT-6009 Correctly name Spans after their creation.
- PIVOT-6015 Fix copper first objects comparator being ignored
- PIVOT-6133 Fix deadlock when allocating partition content.
- PIVOT-6196 Fix an issue where we couldn’t restart a
DistributedMessengerwhen it was already paused. - PIVOT-6203 Fix an issue with
StoreFieldMonitor#histogram()in JMX console producingClassCastExceptionon dictionarized fields. - PIVOT-6633 Fix
NullPointerExceptionduring continuous queries registration in distributed setup. - PIVOT-6500 Support KPIs in Data Export CSV tabular format.
- PIVOT-6577 Fix
ClassCastExceptionoccurring when aggregating thecontributors.COUNTmeasure.
6.0.1
2022-12-07Added
- PIVOT-6113 Add a
dictionarizemethod onFieldin DirectQuery databases.
Changed
- PIVOT-5852 The
WatcherServicewill now create itsWatcherThreadwith the same tracing context as the parent task (for example a file listener). - PIVOT-5989 Performance improvement in DirectQuery’s generated SQL queries by pushing some conditions in the join clause.
- PIVOT-6122 internal ClickHouse
DataValidatoris now package-private and final. - PIVOT-6122 internal
IStreamListenerRegistration, returned byIDataStreamer#registerListStreamView, is now correctly public. It migrated fromcom.activeviam.database.internal.viewintocom.activeviam.database.api.query. - PIVOT-6122 internal The listener type
com.activeviam.database.internal.view.IListViewListener, required byIDataStreamer#registerListStreamViewhas been made public ascom.activeviam.database.api.query.IStreamListViewListener.
The internal method#getPriority()has been removed. The internal method#onSelfFailure(Throwable)has changed not to return any value, preventing it from being able to rollback a transaction. - PIVOT-6122 internal
DatabaseIdentities, returned by various methods likeIDatabaseSchema#getDatabaseId()is now public, moving from the packagecom.activeviam.database.internal.schematocom.activeviam.database.api.schema. - PIVOT-6122 internal the following public classes have been final, to avoid internal tempering:
com.activeviam.database.api.query.PointAggregateStorecom.activeviam.database.api.query.ResultAcceptorWithoutPartitioningWrappercom.activeviam.database.api.selection.impl.Selection
Deprecated
- PIVOT-5877 The
ILocalityIdentifier#canBeLocalizedis deprecated. UseILocalityIdentifier#localMeasurePredicateinstead.
Removed
- PIVOT-6081 The
PartialProviderDefinition.NO_DIMENSION_DEFINEDflag for unspecified dimension names has been removed
Fixed
- PIVOT-5867
AHibernateContentService’s locking strategy is improved to lock smaller unit of works. This will prevent potential deadlocks. - PIVOT-5978 Prevent
OutOfMemoryErrorcrashes in the XMLA Servlet when attempting to send a message that does not fit in a byte array of sizeInteger.MAX_VALUE.RuntimeExceptionwill be thrown instead. - PIVOT-5997 Adaptive JIT is now always used instead of JIT with DirectQuery.
- PIVOT-6027 Fix APM Spring configuration.
- PIVOT-6053 Fix performance issue when reducing the number of allowed concurrent queries in the
MdxQueryBouncer. - PIVOT-6112 Fix issue in DirectQuery filtering on the wrong dates when pushing queries to Snowflake.
6.0.0
2022-11-08Added
- PIVOT-2930 Add
ICubeFormatter.getMeasureCaption(String)that will replacegetMeasureCaptions(). - PIVOT-4747 New API:
IDatabase. TheIDatastoreis now a specialization ofIDatabase. - PIVOT-4887 New Rest Bulk API for Content Server. See
RestBulkApiServerController. - PIVOT-5077 Replication is disabled by default for the
contributors.COUNTmeasure on distributed cubes. It can be re-enabled using the cube description builder, right after statingasQueryCube(). - PIVOT-5177
IPartialAggregateProviders can be filtered on certain levels (whether they are handled by the provider). - PIVOT-5180 Added
springdocdependency in the sandbox to showcase how to list all rest endpoints. - PIVOT-5181
Lead/Lag/First/Lastmeasures can be configured to shift to the exact location or the first non-null element. New builders are available in the classcom.activeviam.copper.api.Copper. - PIVOT-5183 Add rebuild operations for indexes to the datastore API.
- PIVOT-5207 New endpoint in the Database Rest API to retrieve actual number of records in the store. See
IDatabaseRestService. It replaces theIDatastoreRestService. - PIVOT-5317 Data cube now can have a unique identifier using the fluent builder API
IDataClusterDescriptionBuilderWithIdAndMessengerDefinition#withUniqueIdentifierInCluster. - PIVOT-5317 Expose remote data cube physical addresses in the query cube.
- PIVOT-5429 Introduced new interface
IAnalysisHierarchyDescriptionProviderto describe the properties of the Java-based analysis hierarchies. - PIVOT-5561 Introduce a new API to write aggregation bindings on objects and vectors. See this migration note for details.
- PIVOT-5609 Serialization of
nullvalues: introduce a new methodConditionToJsonNodeHelper.convertMapIncludeAllthat includes keys withnullvalues in the JsonNode. It relies on a dedicatedObjectMapper(seeJacksonSerializer#getObjectMapper(true)) - PIVOT-5631
ActiveUIResourceServerConfigandAdminUIResourceServerConfigare now core classes. You no longer need to copy them from the Sandbox to your projects. - PIVOT-5734
Copper#constantnow supports Object Vectors. - PIVOT-5871 New aggregation functions were added to the core product. See the what’s new page
- ADMINUI-10 In the sandbox, a /ui folder is created in the Content Server at startup if it does not exist yet. It contains the file structure necessary for ActiveUI to work correctly.
Changed
- PIVOT-3121
IPostProcessedMeasureno longer has a generic parameter. - PIVOT-4747 The Datastore API is no longer accessible from an ActivePivot. It was replaced by the Database API. See the migration notes for details.
- PIVOT-5116 In the
StoreDescriptionBuilderall operations on fields should be done before defining the partitioning. For example, you cannot calladdField()afterwithPartitioning(). - PIVOT-5135 Creating a sub-second QueriesTimeLimit will now throw an
IllegalArgumentExceptionstating that a time limit must have a duration over 1 second. - PIVOT-5145
IPluginValueandIExtendedPluginValueare notSerializableby default anymore. - PIVOT-5295
MDXCellSetnow always returns the list of default members, even if the cell set itself is empty. - PIVOT-5298 All ActivePivot named threads are now prefixed by
activeviamand suffixed byworker-iwhereiis the thread count number. - PIVOT-5333 Increase severity for full reset and pending initial discovery messages to
WARNINGin distributed clusters. - PIVOT-5349 The method
CSVSource#setFileIdentifierComparatorwas moved toICSVSourceConfiguration, which is now created through the builderCSVSourceConfigurationBuilder. - PIVOT-5373
ICursoris now auto-closeable. See migration notes. - PIVOT-5378 The
INumaNodeSelectorinterface has been separated intoINumaNodeSelectorandIDatastoreNumaNodeSelector, which live in different modules. - PIVOT-5383 Tracing has been removed from APM and is now part of the core product.
- PIVOT-5417 All rest endpoints have been migrated to Spring MVC and the
JsonResponsewrapper removed. - PIVOT-5422
IDatastoreSchemaDescription.getDictionaryGroupsnow uses sets ofStoreField. - PIVOT-5429 Numerous
ActiveViamPropertyandJwtConfigproperty values were renamed to uniformize their naming conventions (see the migration notes). - PIVOT-5429 Pivot hierarchy descriptions now use the
IHierarchyDescriptioninterface. - PIVOT-5429 Changed how the Analysis hierarchies are defined. See migration notes.
- PIVOT-5468 The Datastore REST API is now called Database REST API. Queries will behave like if the
autoDetectOuterReferencesparameter was set totruein 5.11. - PIVOT-5486 Sub-interfaces and classes of conditions are now internal.
- PIVOT-5486 The
IDictionaryCursorinterface was removed. By default,IListQueryRunner#runand similar methods will return plain values. Use the optionIListQueryRunner#withDictionarizedValues()to retrieve dictionarized values. - PIVOT-5486
DatastoreQueryHelper.selectDistinct(...)was changed to only support querying distinct values of a field belonging to a given table. - PIVOT-5486 Renamed
PARTIAL_PROVIDER_SELECTOR_PLUGIN_KEY_PROPSERTYtoPARTIAL_PROVIDER_SELECTOR_PLUGIN_KEY_PROPERTY(typo in PROPERTY). - PIVOT-5490 The methods in
HierarchiesUtilno longer throw checked exceptions. - PIVOT-5528 Change the behavior of Copper Join Hierarchies that come from a field joined with a datastore reference on the Copper store. In the past the results could be empty when the reference failed.
- PIVOT-5548 Aggregate provider’s
ProviderCoordinatenow contains the provider’s name instead of the index. RenamedMemoryStatisticConstants#ATTR_NAME_PROVIDER_INDEXtoATTR_NAME_PROVIDER_NAME. - PIVOT-5556 Provided a clearer exception message when attempting to create a hierarchy misusing
MultiVersionAxisHierarchy#FIELD_PATH_PROPERTY. This property replaces theFIELD_EXPRESSION_PROPERTY. - PIVOT-5582 Namespace and version are by default deduced from namespace prefix in
ASpringVersionedRestServerConfig. - PIVOT-5637 Partial providers can no longer be filtered on levels they do not handle.
- PIVOT-5683 Constructors of
AAggregationand its implementations were changed. Passing the type of the source is now mandatory. Implementations that can enforce their own aggregated type now do so. - PIVOT-5723 All post-processor output types are now nullable by default.
- PIVOT-5732 Changed the implementation of the
oroperator on multiple bitmaps. - PIVOT-5792 Changed the API to create Dynamic conditions on the Datastore/Database. It is now mandatory to name a parameter using the
as(String)method. - PIVOT-5820 Unify
IChunkSetCursorandIArrayReaderWithCursorinto a single concept,ITableCursor. - PIVOT-5834 Static methods in
BaseConditionshave been renamed. They are now all starting with a lower case.LesserandLessOrEqualhave been changed tolessandlessOrEqual. - PIVOT-5839
Chunks#DEFAULT_CHUNK_SIZEnow cannot exceed 65536. - PIVOT-5839 ActiveViam Property
NATIVE_MEMORY_CACHE_RATIO_PROPERTY(-Dactiveviam.nativeMemoryCacheRatio) now defaults to 0.4, instead of 0.8. - PIVOT-5840
IAxisLevelDescription’spropertyNamefield is now namedselectionFieldto clarify what it represents. ThegetPropertyName()andsetPropertyName(String)methods have been renamed accordingly. - PIVOT-5914 Sandbox applications use AdminUI version 5.0.7.
Deprecated
- PIVOT-4747 Deprecated
IDatastoreVersionin favor orIDatabaseVersion - PIVOT-4747 Deprecated
IReadableDatastore#getHead()in favor ofgetHead(String)andIReadableDatastore#getBranches()in favor ofgetHeads(). - PIVOT-4747 Deprecated several of the signatures of
DatastoreQueryHelper#createGetByKeyQuery. - PIVOT-5429 Several methods from
AAnalysisHierarchyhave been deprecated, useIAnalysisHierarchyDescriptionProviderinstead (see migration notes). - PIVOT-5429 Deprecated the ability to have introspecting levels in
AAnalysisHierarchy. - PIVOT-5486
DistinctAcceptoris now considered in internal class. Its signature changed to work on plain records without dictionary values and don’t require the number of partitions. - PIVOT-5536 The name of the ActivePivotManager’s monitoring bean is now a constant:
ActivePivotManager. - PIVOT-5561 The following abstract classes are deprecated:
AGenericBaseAggregationFunction,AGenericAggregationFunction,AGenericVectorAggregationFunction,AVectorAggregationFunction. - PIVOT-5905 The method
hasNextinICursorhas been deprecated, usenextdirectly. - PIVOT-5905 The method
rewindofICursorwill become an internal method.
Removed
- PIVOT-4437 Remove
ActivePivotDatastorePostProcessor,NumaSelectorPostProcessorandWeightMaximizingNumaSelectorPostProcessor. - PIVOT-5175 Dropped SOAP services.
- PIVOT-5180 Dropped CXF.
- PIVOT-5320 Removed legacy post-processors. See the migration notes for details.
- PIVOT-5590 Removed realtime drillthrough feature from Excel Add-in.
- PIVOT-5590 Removed native output type “Excel” from the list of supported drillthrough output types.
- PIVOT-5378 Removed
getDatastoremethods fromISchemaSelectionSessionandIActivePivotSchemaSelectionSession - PIVOT-5413 Removed
IActivePivotDescription.IDescriptionPostProcessor. Description post-processing does not need to be handled by the core product. - PIVOT-5413 Removed the ability to define an Analysis aggregation procedures in a hierarchy description.
- PIVOT-5468 Removed the
autoDetectOuterReferencesparameter in Database service. - PIVOT-5561 Removed internal attributes and methods to use when writing an aggregation binding for Objects. For example, it is not required nor possible to manually call
#write(int, Object)andwriteBoolean(int, boolean)when doing vector aggregation usingAAggregationBindingCloneable,AVectorAggregationBindingor derivatives ofSumVectorAggregationBinding. See [this migration note](./migration_notes#Aggregation module changes) for details. - PIVOT-5561 Removed
ABasicAggregationBindingCloneable, replaced by a refactoredAAggregationBindingCloneable. - PIVOT-5574 Removed Reporting and Scheduling Service.
- PIVOT-5605 Removed class
SecurityFromCubeToDatabaseFilterHook. - PIVOT-5668 Removed
IStreamPublisherformIStreamSnapshotService. The snapshot service now uses the same publisher as the streaming service. - PIVOT-5680 Removed
KeepLastBranchEpochPolicy. - PIVOT-5785 Removed
getNamemethod fromICursor, usegetFieldNameonIRecordFormat. - PIVOT-5792 Removed the ability to give an index to a Dynamic condition. One should now give a name.
- PIVOT-5834 Removed
BaseConditions.True()andBaseConditions.False(), useBaseConditions.TRUEandBaseConditions.FALSEinstead. - PIVOT-5840
AxisLevelDescription(String levelName)was removed. AselectionField(formerlypropertyName) must now be specified to avoid unexpected behavior.
Fixed
- PIVOT-5416 Fix
computeAggregationProcedureTimingfor cached retrievals. - PIVOT-5622 Correctly define constructors for generated Bean property accessors.
- PIVOT-5809 Fix ArrayIndexOutOfBounds exceptions in
ActivePivotAggregatesRetriever. - PIVOT-5774 Fix a
DiscardedDataExceptionpotentially occurring in Vector aggregation operations - PIVOT-5783 Fix the toString() method for CsvCharacterCodingError.
- PIVOT-5813 Fix NullPointerException that could occur with Copper’s window.
- PIVOT-5873 Fix thread vector allocator un-consistency. Previously, a thread requesting a transient allocator could end-up with a direct memory allocator.
- PIVOT-5887 Arrange for a spare thread for continuous MDX updates. Previous implementation could cause live locks in case of work-stealing.