The Apache Flink community released the next bugfix version of the Apache Flink 1.12 series.
This release includes 73 fixes and minor improvements for Flink 1.12.2. The list below includes a detailed list of all fixes and improvements.
We highly recommend all users to upgrade to Flink 1.12.3.
Updated Maven dependencies:
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-java</artifactId>
<version>1.12.3</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-java_2.11</artifactId>
<version>1.12.3</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-clients_2.11</artifactId>
<version>1.12.3</version>
</dependency>
You can find the binaries on the updated Downloads page.
List of resolved issues:
Bug
- [FLINK-18071] - CoordinatorEventsExactlyOnceITCase.checkListContainsSequence fails on CI
- [FLINK-20547] - Batch job fails due to the exception in network stack
- [FLINK-20654] - Unaligned checkpoint recovery may lead to corrupted data stream
- [FLINK-20722] - HiveTableSink should copy the record when converting RowData to Row
- [FLINK-20752] - FailureRateRestartBackoffTimeStrategy allows one less restart than configured
- [FLINK-20761] - Cannot read hive table/partition whose location path contains comma
- [FLINK-20977] - USE DATABASE & USE CATALOG fails with quoted identifiers containing characters to be escaped in Flink SQL client
- [FLINK-21008] - Residual HA related Kubernetes ConfigMaps and ZooKeeper nodes when cluster entrypoint received SIGTERM in shutdown
- [FLINK-21012] - AvroFileFormatFactory uses non-deserializable lambda function
- [FLINK-21133] - FLIP-27 Source does not work with synchronous savepoint
- [FLINK-21148] - YARNSessionFIFOSecuredITCase cannot connect to BlobServer
- [FLINK-21159] - KafkaSourceEnumerator not sending NoMoreSplitsEvent to unassigned reader
- [FLINK-21178] - Task failure will not trigger master hook's reset()
- [FLINK-21289] - Application mode ignores the pipeline.classpaths configuration
- [FLINK-21387] - DispatcherTest.testInvalidCallDuringInitialization times out on azp
- [FLINK-21388] - Parquet DECIMAL logical type is not properly supported in ParquetSchemaConverter
- [FLINK-21431] - UpsertKafkaTableITCase.testTemporalJoin hang
- [FLINK-21434] - When UDAF return ROW type, and the number of fields is more than 14, the crash happend
- [FLINK-21497] - JobLeaderIdService completes leader future despite no leader being elected
- [FLINK-21515] - SourceStreamTaskTest.testStopWithSavepointShouldNotInterruptTheSource is failing
- [FLINK-21518] - CheckpointCoordinatorTest.testMinCheckpointPause fails fatally on AZP
- [FLINK-21523] - ArrayIndexOutOfBoundsException occurs while run a hive streaming job with partitioned table source
- [FLINK-21535] - UnalignedCheckpointITCase.execute failed with "OutOfMemoryError: Java heap space"
- [FLINK-21550] - ZooKeeperHaServicesTest.testSimpleClose fail
- [FLINK-21552] - The managed memory was not released if exception was thrown in createPythonExecutionEnvironment
- [FLINK-21606] - TaskManager connected to invalid JobManager leading to TaskSubmissionException
- [FLINK-21609] - SimpleRecoveryITCaseBase.testRestartMultipleTimes fails on azure
- [FLINK-21654] - YARNSessionCapacitySchedulerITCase.testStartYarnSessionClusterInQaTeamQueue fail because of NullPointerException
- [FLINK-21661] - SHARD_GETRECORDS_INTERVAL_MILLIS wrong use?
- [FLINK-21685] - Flink JobManager failed to restart from checkpoint in kubernetes HA setup
- [FLINK-21691] - KafkaSource fails with NPE when setting it up
- [FLINK-21707] - Job is possible to hang when restarting a FINISHED task with POINTWISE BLOCKING consumers
- [FLINK-21710] - FlinkRelMdUniqueKeys gets incorrect result on TableScan after project push-down
- [FLINK-21725] - DataTypeExtractor extracts wrong fields ordering for Tuple12
- [FLINK-21733] - WatermarkAssigner incorrectly recomputing the rowtime index which may cause ArrayIndexOutOfBoundsException
- [FLINK-21746] - flink sql fields in row access error about scalarfunction
- [FLINK-21753] - Cycle references between memory manager and gc cleaner action
- [FLINK-21817] - New Kafka Source might break subtask and split assignment upon rescale
- [FLINK-21833] - TemporalRowTimeJoinOperator.java will lead to the state expansion by short-life-cycle & huge RowData, although config idle.state.retention.time
- [FLINK-21889] - source:canal-cdc , sink:upsert-kafka, print "select * from sinkTable", throw NullException
- [FLINK-21922] - The method partition_by in Over doesn't work for expression dsl
- [FLINK-21933] - [kinesis][efo] EFO consumer treats interrupts as retryable exceptions
- [FLINK-21941] - testSavepointRescalingOutPartitionedOperatorStateList fail
- [FLINK-21942] - KubernetesLeaderRetrievalDriver not closed after terminated which lead to connection leak
- [FLINK-21944] - AbstractArrowPythonAggregateFunctionOperator.dispose should consider whether arrowSerializer is null
- [FLINK-21969] - PythonTimestampsAndWatermarksOperator emitted the Long.MAX_VALUE watermark before emitting all the data
- [FLINK-21980] - ZooKeeperRunningJobsRegistry creates an empty znode
- [FLINK-21986] - taskmanager native memory not release timely after restart
- [FLINK-21992] - Fix availability notification in UnionInputGate
- [FLINK-21996] - Transient RPC failure without TaskManager failure can lead to split assignment loss
- [FLINK-22006] - Could not run more than 20 jobs in a native K8s session when K8s HA enabled
- [FLINK-22024] - Maven: Entry has not been leased from this pool / fix for release 1.12
- [FLINK-22053] - NumberSequenceSource causes fatal exception when less splits than parallelism.
- [FLINK-22055] - RPC main thread executor may schedule commands with wrong time unit of delay
- [FLINK-22061] - The DEFAULT_NON_SPLITTABLE_FILE_ENUMERATOR defined in FileSource should points to NonSplittingRecursiveEnumerator
- [FLINK-22081] - Entropy key not resolved if flink-s3-fs-hadoop is added as a plugin
- [FLINK-22082] - Nested projection push down doesn't work for data such as row(array(row))
- [FLINK-22124] - The job finished without any exception if error was thrown during state access
- [FLINK-22172] - Fix the bug of shared resource among Python Operators of the same slot is not released
- [FLINK-22184] - Rest client shutdown on failure runs in netty thread
- [FLINK-22191] - PyFlinkStreamUserDefinedFunctionTests.test_udf_in_join_condition_2 fail due to NPE
- [FLINK-22327] - NPE exception happens if it throws exception in finishBundle during job shutdown
- [FLINK-22339] - Fix some encoding exceptions were not thrown in cython coders
- [FLINK-22345] - CoordinatorEventsExactlyOnceITCase hangs on azure
- [FLINK-22385] - Type mismatch in NetworkBufferPool
Improvement
- [FLINK-20533] - Add histogram support to Datadog reporter
- [FLINK-21382] - Standalone K8s documentation does not explain usage of standby JobManagers
- [FLINK-21521] - Pretty print K8s specifications
- [FLINK-21690] - remove redundant tolerableCheckpointFailureNumber setting in CheckpointConfig
- [FLINK-21735] - Harden JobMaster#updateTaskExecutionState()
- [FLINK-22051] - Better document the distinction between stop-with-savepoint and stop-with-savepoint-with-drain
- [FLINK-22142] - Remove console logging for Kafka connector for AZP runs
- [FLINK-22208] - Bump snappy-java to 1.1.5+
- [FLINK-22297] - Perform early check to ensure that the length of the result is the same as the input for Pandas UDF