You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Galen Warren (Jira)" <ji...@apache.org> on 2022/01/28 18:31:00 UTC

[jira] [Created] (FLINK-25873) Using RocksDB state backend causes java.lang.ClassNotFoundException: org.apache.flink.runtime.state.CheckpointStreamFactory$CheckpointStateOutputStream

Galen Warren created FLINK-25873:
------------------------------------

             Summary: Using RocksDB state backend causes java.lang.ClassNotFoundException: org.apache.flink.runtime.state.CheckpointStreamFactory$CheckpointStateOutputStream
                 Key: FLINK-25873
                 URL: https://issues.apache.org/jira/browse/FLINK-25873
             Project: Flink
          Issue Type: Bug
          Components: Runtime / State Backends
    Affects Versions: 1.15.0
            Reporter: Galen Warren
             Fix For: 1.15.0


From the current master branch, attempting to use the RocksDb state backend yields this error when a checkpoint write is attempted:
{quote}{{Caused by: java.lang.NoClassDefFoundError: org/apache/flink/runtime/state/CheckpointStreamFactory$CheckpointStateOutputStream}}
{{    at org.apache.flink.contrib.streaming.state.snapshot.RocksIncrementalSnapshotStrategy.asyncSnapshot(RocksIncrementalSnapshotStrategy.java:180)}}
{{    at org.apache.flink.contrib.streaming.state.snapshot.RocksIncrementalSnapshotStrategy.asyncSnapshot(RocksIncrementalSnapshotStrategy.java:83)}}
{{    at org.apache.flink.runtime.state.SnapshotStrategyRunner.snapshot(SnapshotStrategyRunner.java:80)}}
{{    at org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend.snapshot(RocksDBKeyedStateBackend.java:551)}}
{{    at org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.snapshotState(StreamOperatorStateHandler.java:242)}}
{{    at org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.snapshotState(StreamOperatorStateHandler.java:170)}}
{{    at org.apache.flink.streaming.api.operators.AbstractStreamOperator.snapshotState(AbstractStreamOperator.java:348)}}
{{    at org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.checkpointStreamOperator(RegularOperatorChain.java:227)}}
{{    at org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.buildOperatorSnapshotFutures(RegularOperatorChain.java:212)}}
{{    at org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.snapshotState(RegularOperatorChain.java:192)}}
{{    at org.apache.flink.streaming.runtime.tasks.SubtaskCheckpointCoordinatorImpl.takeSnapshotSync(SubtaskCheckpointCoordinatorImpl.java:647)}}
{{    at org.apache.flink.streaming.runtime.tasks.SubtaskCheckpointCoordinatorImpl.checkpointState(SubtaskCheckpointCoordinatorImpl.java:320)}}
{{    at org.apache.flink.streaming.runtime.tasks.StreamTask.lambda$performCheckpoint$12(StreamTask.java:1251)}}
{{    at org.apache.flink.streaming.runtime.tasks.StreamTaskActionExecutor$1.runThrowing(StreamTaskActionExecutor.java:50)}}
{{    at org.apache.flink.streaming.runtime.tasks.StreamTask.performCheckpoint(StreamTask.java:1239)}}
{{    at org.apache.flink.streaming.runtime.tasks.StreamTask.triggerCheckpointOnBarrier(StreamTask.java:1196)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.CheckpointBarrierHandler.notifyCheckpoint(CheckpointBarrierHandler.java:147)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.triggerCheckpoint(SingleCheckpointBarrierHandler.java:287)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.access$100(SingleCheckpointBarrierHandler.java:64)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler$ControllerImpl.triggerGlobalCheckpoint(SingleCheckpointBarrierHandler.java:493)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.AbstractAlignedBarrierHandlerState.triggerGlobalCheckpoint(AbstractAlignedBarrierHandlerState.java:74)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.AbstractAlignedBarrierHandlerState.barrierReceived(AbstractAlignedBarrierHandlerState.java:66)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.lambda$processBarrier$2(SingleCheckpointBarrierHandler.java:234)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.markCheckpointAlignedAndTransformState(SingleCheckpointBarrierHandler.java:262)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.processBarrier(SingleCheckpointBarrierHandler.java:231)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.CheckpointedInputGate.handleEvent(CheckpointedInputGate.java:181)}}
{{    at org.apache.flink.streaming.runtime.io.checkpointing.CheckpointedInputGate.pollNext(CheckpointedInputGate.java:159)}}
{{    at org.apache.flink.streaming.runtime.io.AbstractStreamTaskNetworkInput.emitNext(AbstractStreamTaskNetworkInput.java:110)}}
{{    at org.apache.flink.streaming.runtime.io.StreamOneInputProcessor.processInput(StreamOneInputProcessor.java:65)}}
{{    at org.apache.flink.streaming.runtime.tasks.StreamTask.processInput(StreamTask.java:517)}}
{{    at org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.runMailboxLoop(MailboxProcessor.java:203)}}
{{    at org.apache.flink.streaming.runtime.tasks.StreamTask.runMailboxLoop(StreamTask.java:802)}}
{{    at org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:751)}}
{{    at org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:948)}}
{{    at org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:927)}}
{{    at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:741)}}
{{    at org.apache.flink.runtime.taskmanager.Task.run(Task.java:563)}}
{{    at java.lang.Thread.run(Thread.java:748)}}
{quote}
 

{{It looks to me that [CheckpointStreamFactory|https://github.com/apache/flink/blob/e2f609c92918d669f2a1c0b69184878d691e3097/flink-runtime/src/main/java/org/apache/flink/runtime/state/CheckpointStreamFactory.java#L31] does not contain a nested type CheckpointStateOutputStream, but that it is rather a top-level class now ([here|[http://example.com])|http://example.com]%29/] per this [commit|[https://github.com/apache/flink/commit/72b0e9f2b0ab8478268a26845719791a7f25834c].]}}

 

{{When I get this error, I'm configuring the backend in code, i.e.:}}
{quote}env.setStateBackend(new EmbeddedRocksDBStateBackend(true))
{quote}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)