openinx commented on pull request #3434: URL: https://github.com/apache/iceberg/pull/3434#issuecomment-961587324
> I would ask we also duplicate the code in 1.12 and 1.13 too. FLIP-27 Flink source will have different code in 1.13. We may even skip 1.12 for FLIP-27 source. Then I can start with the FLIP-27 source in 1.13 only. The FLIP-27 API changes between 1.12 and 1.13 is caused by this [FLINK-22133](https://issues.apache.org/jira/browse/FLINK-22133), the flink changed the basic snapshotState API, that means when @stevenzwu develop the flip-27 source reader , he will encounter the same problem as I have encountered in this issue. If we plan to keep the flink common codes in `iceberg-flink`, then we need to pick up all the upper layer classes which is built on top of `snapshotState` API to the `:iceberg-flink:iceberg-flink-1.12` and `:iceberg-flink:iceberg-flink-1.13`. I have tried to do the pick up when supporting flink 1.14, this is a very tedious and error-prone work. so finally, I gave up the picking up work and turned to clone a same code base for flink 1.14. As the increase of newly introduced features for flink+iceberg integration work, I think we will encounter more and more under layer API changes , that means we will need to copy more and more classes from the common flink module to the specific versioned module. Rather than splitting the work among different Flink contributors (It is very easy to miss classes during development and review, resulting in missing tests and features), I will prefer to clone the separate code base for each flink specified version. In last week, I prefer to share the common code for flink 1.12 & flink1.13. But I changed my mind when I port the integration work for flink1.14 and release that @stevenzwu 's flip-27 is encountering the similar issue. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
