You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Ying Z (Jira)" <ji...@apache.org> on 2020/01/21 09:59:00 UTC
[jira] [Created] (FLINK-15719) Exceptions when using scala types
directly with the State Process API
Ying Z created FLINK-15719:
------------------------------
Summary: Exceptions when using scala types directly with the State Process API
Key: FLINK-15719
URL: https://issues.apache.org/jira/browse/FLINK-15719
Project: Flink
Issue Type: Bug
Components: API / State Processor
Affects Versions: 1.9.1
Reporter: Ying Z
I followed these steps to generate and read states:
# implements the example[1] `CountWindowAverage` in Scala(exactly same), and run jobA => that makes good.
# execute `flink cancel -s ${JobID}` => savepoints was generated as expected.
# implements the example[2] `StatefulFunctionWithTime` in Scala(code below), and run jobB => failed, exceptions shows that "Caused by: org.apache.flink.util.StateMigrationException: The new key serializer must be compatible."
ReaderFunction code as below:
{code:java}
// code placeholder
class ReaderFunction extends KeyedStateReaderFunction[Long, (Long, Long)] {
var countState: ValueState[(Long, Long)] = _
override def open(parameters: Configuration): Unit = {
val stateDescriptor = new ValueStateDescriptor("average", createTypeInformation[(Long, Long)])
countState = getRuntimeContext().getState(stateDescriptor)
} override def readKey(key: Long, ctx: KeyedStateReaderFunction.Context, out: Collector[(Long, Long)]): Unit = {
out.collect(countState.value())
}
}
{code}
1: [https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/stream/state/state.html#using-managed-keyed-state]
2: [https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/libs/state_processor_api.html#keyed-state]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)