[
https://issues.apache.org/jira/browse/FLINK-9373?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16478857#comment-16478857
]
Stefan Richter commented on FLINK-9373:
---------------------------------------
Well, but we are also at risk to have only a partial fix. Ok, I suggest that we
introduce a wrapper and check status there for all the methods mentioned in the
documentation:
{{Seek()}}, {{Next()}}, {{SeekToFirst()}}, {{SeekToLast()}}, {{SeekForPrev()}},
and {{Prev()}}. To be on the safe side, and see if there is any performance
change. If it turns out that that is too much, we can still drop it again. {{}}
> Fix potential data losing for RocksDBBackend
> --------------------------------------------
>
> Key: FLINK-9373
> URL: https://issues.apache.org/jira/browse/FLINK-9373
> Project: Flink
> Issue Type: Bug
> Components: State Backends, Checkpointing
> Affects Versions: 1.5.0
> Reporter: Sihua Zhou
> Assignee: Sihua Zhou
> Priority: Blocker
> Fix For: 1.6.0, 1.5.1
>
>
> Currently, when using RocksIterator we only use the _iterator.isValid()_ to
> check whether we have reached the end of the iterator. But that is not
> enough, if we refer to RocksDB's wiki
> https://github.com/facebook/rocksdb/wiki/Iterator#error-handling we should
> find that even if _iterator.isValid()=true_, there may also exist some
> internal error. A safer way to use the _RocksIterator_ is to always call the
> _iterator.status()_ to check the internal error of _RocksDB_. There is a case
> from user email seems to lost data because of this
> http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/Missing-MapState-when-Timer-fires-after-restored-state-td20134.html
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)