Weijie Guo created FLINK-30189:
----------------------------------

             Summary: HsSubpartitionFileReader may load data that has been 
consumed from memory
                 Key: FLINK-30189
                 URL: https://issues.apache.org/jira/browse/FLINK-30189
             Project: Flink
          Issue Type: Bug
          Components: Runtime / Network
    Affects Versions: 1.16.0, 1.17.0
            Reporter: Weijie Guo
            Assignee: Weijie Guo


In order to solve the problem that data cannot be read from the disk correctly 
after failover, we changed the calculation logical of the buffer's readable 
state in FLINK-29238.  Buffers that are greater than consumingOffset and have 
been released can be pre-load from file. However, the update of consumingOffset 
is asynchronous, If it lags behind the actual consumption progress, the buffer 
will have a chance to be load from the disk again. 

IMO, we can record the consumed status of buffer by each consumer in the 
InternalRegion. Only the buffers that have not been consumed and have been 
released will be considered as readable. In the case of failover, a new 
consumerId will be generated, so all buffers will be considered as unconsumed 
and can be correctly read from the disk too.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to