Changelog
What’s new?
For information on upgrading versions, please refer to the Migration Notes below.
2.0.1
Fixed
Issue Key |
Details |
PST-708 |
Updated APM dependency version that was causing the TraceContext of DLC events to be null in the DLC Cache |
2.0.0
Known Issues
- Parsing of large files will cause null TraceContext value for HealthEvents, leading to the DLC not properly adding events to the Cache.
Changed
- AP version has been updated to 5.10.1
- The Azure Cloud Source has migrated its dependency to the Azure Blob Storage SDK from v8 to v12
1.2.1
Fixed
Issue Key |
Details |
PST-706 |
Removed NPE when checking if events have errors during Loading or Unloading of data |
1.2.0
Added
Issue Key |
Details |
PST-688 |
Integrated APM tracing for DLC health events |
Fixed
Issue Key |
Details |
PST-685 |
Fixed DLC response timeTakenMs to show ms instead of nanoseconds |
PST-690 |
Fixed DEE issue in AEnhancedDrillthroughService in case of entries with the same underlying datastore field and entries without dictionaries. Fixed export of vector |
Changed
Issue Key |
Details |
PST-684 |
Removed IScopedFetchSource interface as it causes confusion, and is functionally identical to IFetchingDataSource |
PST-670 |
Added CustomKafkaAvroDeserializerGenericRecord and CustomKafkaAvroDeserializerObjectTuple classes |
1.1.0
Fixed
Issue Key |
Details |
BAS-670 |
Removed NPE thrown when REST endpoint getTaskStatus() called after executing a DEE Order containing a bad MDX |
Added
Issue Key |
Details |
PST-662 |
Product Center’s ParquetParserBuilder has been implemented. This implementation requires AP version 5.9.2+ |
PST-668 |
Added ability to customize ordering of Topics within a given transaction. For more information, see Custom Ordering for Loading Topics |
Migration Notes
2.0.1
- No changes required from accelerator side
2.0.0
- No changes required from accelerator side
1.2.0
APM Integration
APM has been added into DLC and is used to trace events. If you were using a combined HealthEventDispatcher
of APM and DLC, this is no longer necessary as the DLC now uses APM’s IHealthEventDispatcher
. To ensure APM is configured correctly, the following configurations will need to be implemented into your project.
Required Configurations
The following Configs must be included in your project’s application config.
Required Configuration Classes |
Replaces Configuration Class |
APMTracingConfig.class |
N/A |
APMActivePivotServicesConfig.class |
ActivePivotServicesConfig |
An example of including these configuration classes can be seen as follows:
@Configuration
@Import({
// Required Configurations for Tracing and APM
APMTracingConfig.class,
APMActivePivotServicesConfig.class
})
public class ApplicationConfig {
}
Registry Setup
- APM must be defined with high precedence in ActivePivot’s
Registry
. This is because some classes are Extended Plugins or Types overriding the core code. It is important to make sure they are picked first by the Registry. Make sure you add the package com.activeviam.apm
to be picked first. The below snipit can be added to your application’s configuration.
/** Before anything else we statically initialize the ActiveViam Registry. */
static {
Registry.setContributionProvider(
new ClasspathContributionProvider(
"com.activeviam.apm", // First has highest priority
"com.qfs",
"com.quartetfs",
"com.activeviam"
)
);
}
Initial Data Load
- If you are executing any DLC tasks via Spring Beans during initialization of your application, you must ensure that the
APM_TRACING
Bean is created first either by the @DependsOn
or by Autowiring the APM_TRACING
Bean. Please see code sample below as an example:
@Bean
@DependsOn(value = {APM_TRACING})
public Void initialLoad() {
// Load data here...
}
Updated Tracing
Prior to 1.2.0, the DLC would respond to operations with a taskName, such as “LoadDataTxControllerTask-0”. Now, using APM’s tracing, the DLC will respond with a unique hex string, such as “7a8c982a87b050f2”. This hex string will act as our taskName and will still be used as the DLC’s Cache Key. This tracer hex string will be added to HealthEvent’s eventProperties map as a TraceContext object. For more information on Tracing, see Tracing.
APM_TRACING Bean must be configured before data loading
- If you are executing any DLC tasks via Spring Beans during initialization of your application, you must ensure that the
APM_TRACING
Bean is created first either by the @DependsOn
or by Autowiring the APM_TRACING
Bean. Please see code sample below as an example:
@Bean
@DependsOn(value = {APM_TRACING})
public Void initialLoad() {
// Load data here...
}