[ https://issues.apache.org/jira/browse/FLINK-19223?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stephan Ewen closed FLINK-19223. -------------------------------- > Simplify Availability Future Model in Base Connector > ---------------------------------------------------- > > Key: FLINK-19223 > URL: https://issues.apache.org/jira/browse/FLINK-19223 > Project: Flink > Issue Type: Improvement > Components: Connectors / Common > Reporter: Stephan Ewen > Assignee: Stephan Ewen > Priority: Critical > Fix For: 1.12.0 > > > The current model implemented by the {{FutureNotifier}} and the > {{SourceReaderBase}} has a shortcoming: > - It does not support availability notifications where the notification > comes before the check. IN that case the notification is lost. > - One can see the added complexity created by this model also in the > {{SourceReaderBase#isAvailable()}} where the returned future needs to be > "post-processed" and eagerly completed if the reader is in fact available. > This is based on queue size, which makes it hard to have other conditions. > I think we can do something that is both easier and a bit more efficient by > following a similar model as the > {{org.apache.flink.runtime.io.AvailabilityProvider.AvailabilityHelper}}. > Furthermore, I believe we can win more efficiency by integrating this better > with the {{FutureCompletingBlockingQueue}}. > I suggest to do a similar implementation as the {{AvailabilityHelper}} > directly in the {{FutureCompletingBlockingQueue}}. -- This message was sent by Atlassian Jira (v8.3.4#803005)