Fixed issues and improvements
Learn about the fixed issues, improvements, and changes functionality in this release of Cloudera Streaming Analytics - Kubernetes Operator.
Fixed issues
- CSA-5622: Project sync doesn't sync Kubernetes config for jobs
- Fixes an issue where the project synchronization mechanism in Cloudera Streaming Analytics - Kubernetes Operator did not correctly sync Kubernetes configurations for Flink jobs.
- CSA-5751: Bug in
SecuredPropertyConverter - Fixes an issue where the
SecuredPropertyConverterclass caused an infinite encryption loop when itsconvertToDatabaseColumnmethod mutated the attribute argument, resulting in exceptions when the data became too long. - CSA-5770: Fix intermittent
Job Not Founderror while deploying Flink jobs - Fixes an issue with prematurely failed Flink jobs due to recoverable errors to ensure jobs only fail if they reach a globally terminal state or encounter an unrecoverable error.
- CSA-5780: Upgrade
jackson-databindinflink-cdcto version 2.13.4.2 or above - Upgrades outdated
jackson-databindversions in transitive dependencies for Flink artifacts. - CSA-5703: Secure environment variables are broken
- Fixes an issue with secure environment variables inadvertently overwriting their original values masking process, leading to data source validation failures and infinite encryption loops.
- CSA-5711: Environment importing loader is stuck when there is an error with importing
- Fixes an issue where the environment importing loader remained stuck after an import operation failed and users confirmed the error pop-up.
- CSA-5658: Postgresql does not start when installing the operator on RKE2
- Fixes an issue where the Postgresql init container failed to start for non-root users when installing Cloudera Streaming Analytics - Kubernetes Operator operator on RKE2 due to lack of permissions for the
ssb_adminuser.
Improvements
- Unify default Flink job log4j rolling configuration
-
For jobs deployed through both Cloudera SQL Stream Builder and Flink, the log4j configuration now by default:
- Applies compression
- Keeps the last 5 entries
- Triggers rollover when size reaches 100MB
For more information on configuring logging, see Adjusting logging configuration in Advanced Settings.
- Configurable checkpoint and savepoint directories in the Cloudera SQL Stream Builder UI
- The savepoint and checkpoint paths are displayed and editable in the Job Settings window.
- Ensure OpenTelemetry dependencies are included in Cloudera Streaming Analytics - Kubernetes Operator
-
Cloudera Streaming Analytics - Kubernetes Operator includes all required dependencies to configure the OTel exporter.
To enable the Flink OpenTelemetry Metrics Exporter for a working Flink Java application, launch the application with the following additional FlinkDeployment options:
spec: flinkConfiguration: metrics.reporters: otel metrics.reporter.otel.factory.class: org.apache.flink.metrics.otel.OpenTelemetryMetricReporterFactory metrics.reporter.otel.exporter.endpoint: [*** ENDPOINT ***]:[*** PORT ***] metrics.reporter.otel.service.name: [*** SERVICE NAME ***] metrics.reporter.otel.service.version: [*** VERSION ***]To enable the Flink OpenTelemetry Metrics Exporter for a job in Cloudera SQL Stream Builder, add the following
SETcommands to the job:set metrics.reporters=otel; set metrics.reporter.otel.factory.class=org.apache.flink.metrics.otel.OpenTelemetryMetricReporterFactory; set metrics.reporter.otel.exporter.endpoint=[*** ENDPOINT ***]:[*** PORT ***]; set metrics.reporter.otel.service.name=[*** SERVICE NAME ***]; set metrics.reporter.otel.service.version=[*** VERSION ***];For more information, see Using the OpenTelemetry Collector [Technical Preview].
- More flexible error handling when executing jobs in Cloudera SQL Stream Builder
- Implementing more flexible error handling for jobs executing on Kubernetes. Unrecoverable error checks parse errors to determine if the Flink job's main method was the source of an exception. Cloudera SQL Stream Builder jobs are only marked as failed if their state reaches a globally terminal state or if the error explicitly indicates that they're unrecoverable.
- Configurable Kafka sampling settings at runtime in Cloudera SQL Stream Builder
-
Users can add the settings of the sampling Kafka instance on the global configuration UI in Cloudera SQL Stream Builder, previously only configurable through configuration files, which will be passed to Flink jobs.
The settings are only configurable in Cloudera SQL Stream Builder UI, and settings added to the configuration YAML files will be ignored.
To learn how to configure sampling in Cloudera SQL Stream Builder, see Sampling.
- Temporary table and view support
-
Users can create and manage temporary tables and views in Cloudera SQL Stream Builder to define temporary objects suitable for session-scoped operations or intermediate results. Temporary tables and views simplify complex SQL queries and making job definitions more modular without affecting the global catalog.
To create a temporary table:
CREATE TEMPORARY TABLE [*** TABLE NAME ***] ( id INT, name STRING, event_time TIMESTAMP(3) ) WITH ( 'connector' = 'datagen', 'rows-per-second' = '1', 'fields.id.kind' = 'sequence', 'fields.id.start' = '1', 'fields.id.end' = '100', 'fields.name.length' = '10' );To create a temporary view:
CREATE TEMPORARY VIEW [*** VIEW NAME ***] AS SELECT order_id, SUM(amount) AS total_amount FROM [*** PERSISTENT TABLE NAME ***] GROUP BY order_id;
