Sure, +1 non-binding. On Wed, Mar 12, 2025 at 11:18 PM Jungtaek Lim <kabhwan.opensou...@gmail.com> wrote:
> Russell, > > Of course, we hear people' voices who aren't having binding votes as well. > Personally I think it's more important than committers/PMC members' VOTE > this time since we can be biased and be far from user experience. > > Could you please explicitly cast your vote, like +1 (non-binding)? You > seem to agree with the proposal. Thanks! > > On Thu, Mar 13, 2025 at 3:15 PM Russell Jurney <russell.jur...@gmail.com> > wrote: > >> I'm just a lurker and aspiring contributor, but as a Spark user upgrading >> twice is very confusing and would cause many or most users to fail to >> upgrade successfully to Spark 4 on a first go. That seems like a very bad >> user experience. I thought it was worthwhile stating this out loud. >> >> Russell >> >> On Wed, Mar 12, 2025 at 11:05 PM Xiao Li <gatorsm...@gmail.com> wrote: >> >>> this vote is to allow streaming queries which had been ever run in Spark >>>> 3.5.4 to be upgraded with Spark 4.0.x, "without having to be upgraded with >>>> Spark 3.5.5+ in prior". >>> >>> >>> In the history of Apache Spark, have we ever required users to upgrade >>> to the next maintenance release before moving to a new feature or major >>> release? >>> >>> Xiao >>> >>> Adam Binford <adam...@gmail.com> 于2025年3月11日周二 09:08写道: >>> >>>> +1 (non-binding) >>>> >>>> It's a pretty in the weeds issue with how Structured Streaming works >>>> under the hood that's kinda hard to understand if you're not familiar with >>>> it. The migration logic doesn't mean users can still use the old config, >>>> it's purely behind the scenes to fix checkpoint metadata in streams created >>>> in 3.5.4. The 5 lines of code it takes to address a weird edge case for >>>> certain users that's already gone from master shouldn't be a huge deal. >>>> >>>> On Tue, Mar 11, 2025 at 1:43 AM Yang Jie <yangji...@apache.org> wrote: >>>> >>>>> >>>>> To Sean, you're right, I'm very sorry. >>>>> >>>>> From the perspective of compatibility and migratability, I think we >>>>> should migrate this logic to 4.0.0 and keep it in the codebase for a >>>>> longer >>>>> time (or permanently), because we can't predict which version users of >>>>> 3.5.4 will choose next. >>>>> >>>>> >>>>> I don't want to discuss the so-called vendor issue. >>>>> >>>>> I withdraw my previous -1. >>>>> >>>>> Jie Yang. >>>>> >>>>> On 2025/03/11 04:42:25 Wenchen Fan wrote: >>>>> > Guys, let’s be honest about what we’re discussing here. >>>>> > >>>>> > If this is a migration issue, why would we even need a vote? We’ve >>>>> been >>>>> > consistently adding configurations to restore legacy behavior >>>>> instead of >>>>> > removing them because we understand the challenges of upgrading Spark >>>>> > versions. Our goal has always been to make upgrades easier, even if >>>>> it >>>>> > means carrying some technical debt. I don’t think we want to change >>>>> that >>>>> > culture now. >>>>> > >>>>> > If the concern is about vendor names appearing in the codebase, then >>>>> why is >>>>> > it a big deal this time when vendor names are already present >>>>> elsewhere? If >>>>> > we’ve failed to follow a policy, let’s correct it, but can someone >>>>> point to >>>>> > the specific policy we’re violating? >>>>> > >>>>> > If the vote is about adding migration logic to ease the upgrade from >>>>> 3.5.4 >>>>> > to 4.0.0, then +1, why not? >>>>> > >>>>> > Thanks, >>>>> > Wenchen >>>>> > >>>>> > >>>>> > >>>>> > On Mon, Mar 10, 2025 at 8:49 PM Jungtaek Lim < >>>>> kabhwan.opensou...@gmail.com> >>>>> > wrote: >>>>> > >>>>> > > Well said, Sean. Sorry I made you keep around here since it might >>>>> not be >>>>> > > clearly stated. My bad. >>>>> > > >>>>> > > Yang, how could we ever tolerate the fact there are "other" >>>>> occurrences of >>>>> > > vendor names in the codebase? Please go and search "databricks" in >>>>> the >>>>> > > codebase and be surprised. >>>>> > > >>>>> > > If we believe that having vendor names in the codebase will >>>>> increase >>>>> > > the occurrence of making mistakes, why didn't we have a discussion >>>>> thread >>>>> > > earlier to remove all occurrences altogether? This is super tricky >>>>> because >>>>> > > I can even start to argue we have "Apple" as a vendor name in >>>>> Apache Spark >>>>> > > codebase. I'm not saying we use "apple" in the test data. See >>>>> > > `isMacOnAppleSilicon` in Utils. Is it unavoidable? No, >>>>> `isMacOnMSeries` or >>>>> > > `isMacOnSilicon` is enough. >>>>> > > >>>>> > > We really need to draw a line where we disallow vendor names on it >>>>> - if >>>>> > > it's the entire codebase, I don't really think it is realistic. >>>>> > > >>>>> > > This was really a mistake, and it was definitely not from >>>>> referring to the >>>>> > > existing codebase. Not having a vendor name does not change >>>>> anything on the >>>>> > > chance of encountering this issue again. If we really care, we >>>>> should think >>>>> > > about style checking, which is the only viable way to catch the >>>>> mistake. >>>>> > > Again, I'd argue we have to have a bunch of vendor names in that >>>>> style >>>>> > > check, not just the problematic vendor name. >>>>> > > >>>>> > > >>>>> > > On Tue, Mar 11, 2025 at 12:17 PM Sean Owen <sro...@gmail.com> >>>>> wrote: >>>>> > > >>>>> > >> Doesn't the migration code 'clear' the debt? >>>>> > >> The proposal is not to continue to support the config. >>>>> > >> I feel like people are not quite understanding the change, and >>>>> objecting >>>>> > >> to something that doesn't exist. >>>>> > >> It's a shame, as this seems like something not even worth >>>>> discussing. I >>>>> > >> don't know why this triggered this much discussion. We have kept >>>>> deprecated >>>>> > >> methods without blinking, which is in comparison much bigger. >>>>> > >> Can we maybe ask you review the actual change in question? >>>>> > >> >>>>> > >> On Mon, Mar 10, 2025, 10:02 PM Yang Jie <yangji...@apache.org> >>>>> wrote: >>>>> > >> >>>>> > >>> -1 >>>>> > >>> Remove migration logic of incorrect `spark.databricks.*` >>>>> configuration >>>>> > >>> in Spark 4.0.0 because I think this configuration was initially >>>>> introduced >>>>> > >>> accidentally in Spark 3.5.4, lacking a clear design intent. >>>>> Although the >>>>> > >>> immediate maintenance cost of retaining this configuration >>>>> currently seems >>>>> > >>> limited, as subsequent versions iterate and user habits form, it >>>>> may lead >>>>> > >>> to the continuous accumulation of technical debt. When users >>>>> come to view >>>>> > >>> this configuration as one that can be relied on long-term, >>>>> future removal >>>>> > >>> may face greater resistance from users and could potentially >>>>> become an >>>>> > >>> entrenched and redundant configuration in the codebase. >>>>> Therefore, promptly >>>>> > >>> correcting this historically accidental configuration not only >>>>> maintains >>>>> > >>> the normativity of the Spark configuration system but also >>>>> prevents >>>>> > >>> unintended configurations from becoming de facto standards, >>>>> thereby >>>>> > >>> reducing long-term maintenance risks. >>>>> > >>> >>>>> > >>> Jie Yang >>>>> > >>> >>>>> > >>> On 2025/03/10 14:52:52 Dongjoon Hyun wrote: >>>>> > >>> > -1 because there exists a feasible migration path for Apache >>>>> Spark >>>>> > >>> 3.5.4 via Apache Spark 3.5.5. >>>>> > >>> > >>>>> > >>> > It's obvious that this Databricks' mistake already causes a >>>>> huge >>>>> > >>> communication cost in the Apache Spark community and is >>>>> suggesting a burden >>>>> > >>> to enforce us to handle at least two more PRs at 4.0.0 and 4.1.0. >>>>> > >>> > >>>>> > >>> > Given that, I don't think >>>>> > >>> > - This is an inevitable or >>>>> > >>> > - This is 0 cost >>>>> > >>> > >>>>> > >>> > Dongjoon. >>>>> > >>> > >>>>> > >>> > On 2025/03/10 12:46:16 Jungtaek Lim wrote: >>>>> > >>> > > Starting from my +1 (non-binding). >>>>> > >>> > > >>>>> > >>> > > In addition, I propose to retain migration logic till Spark >>>>> 4.1.x and >>>>> > >>> > > remove it in Spark 4.2.0. >>>>> > >>> > > >>>>> > >>> > > On Mon, Mar 10, 2025 at 9:44 PM Jungtaek Lim < >>>>> > >>> kabhwan.opensou...@gmail.com> >>>>> > >>> > > wrote: >>>>> > >>> > > >>>>> > >>> > > > Hi dev, >>>>> > >>> > > > >>>>> > >>> > > > Please vote to retain migration logic of incorrect >>>>> > >>> `spark.databricks.*` >>>>> > >>> > > > configuration in Spark 4.0.x. >>>>> > >>> > > > >>>>> > >>> > > > - DISCUSSION: >>>>> > >>> > > > >>>>> https://lists.apache.org/thread/xzk9729lsmo397crdtk14f74g8cyv4sr >>>>> > >>> > > > ([DISCUSS] Handling spark.databricks.* config being >>>>> exposed in >>>>> > >>> 3.5.4 in >>>>> > >>> > > > Spark 4.0.0+) >>>>> > >>> > > > >>>>> > >>> > > > Specifically, please review this post >>>>> > >>> > > > >>>>> https://lists.apache.org/thread/xtq1kjhsl4ohfon78z3wld2hmfm78t9k >>>>> > >>> which >>>>> > >>> > > > explains pros and cons about the proposal - proposal is >>>>> about >>>>> > >>> "Option 1". >>>>> > >>> > > > >>>>> > >>> > > > Simply speaking, this vote is to allow streaming queries >>>>> which had >>>>> > >>> been >>>>> > >>> > > > ever run in Spark 3.5.4 to be upgraded with Spark 4.0.x, >>>>> "without >>>>> > >>> having to >>>>> > >>> > > > be upgraded with Spark 3.5.5+ in prior". If the vote >>>>> passes, we >>>>> > >>> will help >>>>> > >>> > > > users to have a smooth upgrade from Spark 3.5.4 to Spark >>>>> 4.0.x, >>>>> > >>> which would >>>>> > >>> > > > be almost 1 year. >>>>> > >>> > > > >>>>> > >>> > > > The (only) cons in this option is having to retain the >>>>> incorrect >>>>> > >>> > > > configuration name as "string" in the codebase a bit >>>>> longer. The >>>>> > >>> code >>>>> > >>> > > > complexity of migration logic is arguably trivial. (link >>>>> > >>> > > > < >>>>> > >>> >>>>> https://github.com/apache/spark/blob/4231d58245251a34ae80a38ea4bbf7d720caa439/sql/core/src/main/scala/org/apache/spark/sql/execution/streaming/OffsetSeq.scala#L174-L183 >>>>> > >>> > >>>>> > >>> > > > ) >>>>> > >>> > > > >>>>> > >>> > > > This VOTE is for Spark 4.0.x, but if someone supports >>>>> including >>>>> > >>> migration >>>>> > >>> > > > logic to be longer than Spark 4.0.x, please cast +1 here >>>>> and leave >>>>> > >>> the >>>>> > >>> > > > desired last minor version of Spark to retain this >>>>> migration logic. >>>>> > >>> > > > >>>>> > >>> > > > The vote is open for the next 72 hours and passes if a >>>>> majority +1 >>>>> > >>> PMC >>>>> > >>> > > > votes are cast, with a minimum of 3 +1 votes. >>>>> > >>> > > > >>>>> > >>> > > > [ ] +1 Retain migration logic of incorrect >>>>> `spark.databricks.*` >>>>> > >>> > > > configuration in Spark 4.0.x >>>>> > >>> > > > [ ] -1 Remove migration logic of incorrect >>>>> `spark.databricks.*` >>>>> > >>> > > > configuration in Spark 4.0.0 because... >>>>> > >>> > > > >>>>> > >>> > > > Thanks! >>>>> > >>> > > > Jungtaek Lim (HeartSaVioR) >>>>> > >>> > > > >>>>> > >>> > > >>>>> > >>> > >>>>> > >>> > >>>>> --------------------------------------------------------------------- >>>>> > >>> > To unsubscribe e-mail: dev-unsubscr...@spark.apache.org >>>>> > >>> > >>>>> > >>> > >>>>> > >>> >>>>> > >>> >>>>> --------------------------------------------------------------------- >>>>> > >>> To unsubscribe e-mail: dev-unsubscr...@spark.apache.org >>>>> > >>> >>>>> > >>> >>>>> > >>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe e-mail: dev-unsubscr...@spark.apache.org >>>>> >>>>> >>>> >>>> -- >>>> Adam Binford >>>> >>>