The opt-in approach seems reasonable to me. +1 to include the profiles in 1.8 and 1.9 without changing the default versions (including the default version of flink-shaded).
As far as I can tell, the next steps would be: 1) Release flink-shaded with upgraded Jackson 2a) Bump the flink-shaded version by default in master 2b) Create opt-in profiles for 1.8 and 1.9 (the opt-in profiles should also cover the upgrade to the most recent flink-shaded version) @Chesnay: is this a correct summary? Note this would block the 1.8.3 release on step 1. As an upside, we might get some additional feedback until the 1.10 release with these profiles in case users make use of them with 1.8/1.9. – Ufuk On Fri, Nov 15, 2019 at 12:08 PM Chesnay Schepler <ches...@apache.org> wrote: > > The opt-in approach would only be used for 1.8.3 / 1.9.2; on master (and > thus starting from 1.10.0) it's not opt-in. > > I have only proposed it as an opt-in because a) we usually do not bump > dependencies in bugfix releases and b) it's a short-term change that we > aren't allowing to mature properly. > In contrast, the 1.10 release is significantly further away, hence no > opt-in. > > Hence, I'm not concerned about such kind of ugprades being more common > in the future. > > We can certainly support every jackson version that fixes these > vulnerabilities; individual modules can always use a different version > (that hopefully includes the fixes). > Ideally of course we'd only be using 1 version, but that may or may not > be feasible. > > On 15/11/2019 04:07, Hequn Cheng wrote: > > Hi Chesnay, > > > > Great to hear that jackson-2.10.1 works well on master. Really a good job! > > > > - Whether backport this change to 1.8/1.9 > > I had taken a quick look at the security vulnerabilities, some of them > > seem can lead to high-security problems, thus from my point of view, > > I'm in favor of adding the fix into 1.9/1.8. However, I would like to > > trust your judgment as you are more professional at this problem. > > > > - How to port this change to 1.8/1.9 > > I think providing an opt-in upgrade is a good idea. Another question > > here is whether do we plan to support multi jackson versions that have > > eliminated the security vulnerabilities. If we only plan to support > > 2.10.1, I would like to make it a non-opt-in upgrade. As an option, > > users can downgrade the flink version if meet problems using the new > > version. Of course, we will try our best to make the new release out > > of question. > > Another concern of making it an opt-in upgrade is, it will make our > > build unlikely convergence as more and more build options will be > > added when we upgrade a commonly used lib like this one. > > > > What do you think? > > > > Best, Hequn > > > > On Thu, Nov 14, 2019 at 6:00 PM Chesnay Schepler <ches...@apache.org > > <mailto:ches...@apache.org>> wrote: > > > > So here's the state of things: > > > > > > The master of flink-shaded now uses jackson 2.10.1, which > > eliminates a whole category of security vulnerabilities. > > The flink master works perfectly fine with that version; 1.9 will > > likely do so too and 1.8 would require a minor adjustment. > > > > Hence, there may be value in first doing a flink-shaded release so > > we can eliminate these vulnerabilities in 1.8.3 and 1.9.2 . > > > > > > As for other jackson dependencies (coming from calcite, kafka, > > kinesis), I ran the unit and end-to-end tests of master yesterday > > will /all /jackson dependencies set to 2.10.1, and they passed. I > > will open a PR soon-ish for making this change on master. > > > > The question now is whether we want to backport this change to > > 1.8/1.9 . > > Some code paths /may /not be covered by our tests, and transitive > > jackson users /might /run into issues. > > Alternatively, we could set this up as an opt-in upgrade, by > > adding a separate profile that bumps the versions. This would > > present users/providers who are concerned about the > > vulnerabilities an easy workaround, at the risk of /some /things > > /maybe /not working. > > > > On 14/11/2019 03:16, Hequn Cheng wrote: > >> Hi Chesnay, Jincheng > >> > >> Sure, I think it's good to have these fixes. > >> Thanks a lot for providing the information about the security > >> vulnerabilities! @Chesnay > >> > >> Best, Hequn > >> > >> On Thu, Nov 14, 2019 at 10:07 AM jincheng sun< sunjincheng...@gmail.com> <mailto:sunjincheng...@gmail.com> > >> wrote: > >> > >>> +1 for try to eliminate the security vulnerabilities. Great thanks for > >>> doing this important work, Chesnay! > >>> What do you think Hequn ? > >>> > >>> Best, > >>> Jincheng > >>> > >>> Chesnay Schepler<ches...@apache.org> <mailto:ches...@apache.org> 于2019年11月13日周三 下午5:17写道: > >>> > >>>> It would be great if you could give me a day or 2 to check how easy it > >>>> would be to bump the various jackson dependencies to eliminate a few > >>>> security vulnerabilities. > >>>> > >>>> On 09/11/2019 05:10, jincheng sun wrote: > >>>>> Hi Flink devs, > >>>>> > >>>>> It has been more than 2 months since the 1.8.2 released. So, What do > >>> you > >>>>> think about releasing Flink 1.8.3 soon? > >>>>> > >>>>> We already have many important bug fixes in the release-1.8 branch (29 > >>>>> resolved issues). > >>>>> > >>>>> Most notable fixes are: > >>>>> > >>>>> - FLINK-14010 Dispatcher & JobManagers don't give up leadership when AM > >>>> is > >>>>> shut down > >>>>> - FLINK-14315 NPE with JobMaster.disconnectTaskManager > >>>>> - FLINK-12848 Method equals() in RowTypeInfo should consider > >>> fieldsNames > >>>>> - FLINK-12342 Yarn Resource Manager Acquires Too Many Containers > >>>>> - FLINK-14589 Redundant slot requests with the same AllocationID leads > >>> to > >>>>> inconsistent slot table > >>>>> > >>>>> Furthermore, the following critical issues is in progress, maybe we can > >>>>> wait for it if it is not too much effort. > >>>>> > >>>>> - FLINK-13184 Starting a TaskExecutor blocks the YarnResourceManager's > >>>> main > >>>>> thread > >>>>> > >>>>> Please let me know what you think? > >>>>> > >>>>> Best, > >>>>> Jincheng > >>>>> > >