Skip to content

Conversation

bdrillard
Copy link

What changes were proposed in this pull request?

This is a backport patch for Spark 2.2.x of the class splitting feature over excess generated code as was merged in #18075.

How was this patch tested?

The same test provided in #18075 is included in this patch.

@cloud-fan
Copy link
Contributor

ok to test

@SparkQA
Copy link

SparkQA commented Jun 21, 2017

Test build #78393 has finished for PR 18377 at commit 8998ee5.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@cloud-fan
Copy link
Contributor

thanks, merging to 2.2!

asfgit pushed a commit that referenced this pull request Jun 22, 2017
…ol Limit - Class Splitting

## What changes were proposed in this pull request?

This is a backport patch for Spark 2.2.x of the class splitting feature over excess generated code as was merged in #18075.

## How was this patch tested?

The same test provided in #18075 is included in this patch.

Author: ALeksander Eskilson <[email protected]>

Closes #18377 from bdrillard/class_splitting_2.2.
@sameeragarwal
Copy link
Member

@bdrillard @cloud-fan given that this is not a regression and 2.2 is in code-freeze, do you think this is safe to merge it in the 2.2 branch? More specifically, could the new code path affect (or regress) classes that would otherwise not grow beyond 1600k limit? Thanks!

@bdrillard
Copy link
Author

@sameeragarwal @cloud-fan If I understand well what you mean by affect/regress, this patch would induce no change at all on the code generated for any class below the 1600k limit. For such classes smaller than the limit, all functions are inlined to the OuterClass, which the declareAddedFuctions method now references. Structurally, there would be no change to classes with code generated below the threshold. I don't know if this explanation suffices to address your concerns, but I'd say the patch is pretty passive in that code generation is only affected for cases over the 1600k threshold.

@rxin
Copy link
Contributor

rxin commented Jun 22, 2017

Why did we backport this? This seems too risky.

@cloud-fan
Copy link
Contributor

as we are very close to 2.2, and this patch is not trivial(200+ lines), I'm going to revert it and merge it back after 2.2 release, so this patch can be in 2.2.1 and we can have plenty of time to test it. cc @bdrillard what do you think?

@cloud-fan
Copy link
Contributor

reverted, @bdrillard ping me if you have any other concerns, thanks!

@bdrillard
Copy link
Author

@cloud-fan Sure! That makes perfect sense to me.

@sameeragarwal
Copy link
Member

Thanks guys!

@rxin
Copy link
Contributor

rxin commented Jun 23, 2017

Hm I'm not even sure if we should backport this in branch-2.2. Let's wait and see ...

@bdrillard
Copy link
Author

@cloud-fan @rxin @sameeragarwal What can we say is the status of these backports? Including this PR, #18354, and #18579, it was decided to revert the changes until the 2.2.0 release was finished. Will all the backports remain reverted? Or can we find a way to get these merged? It seems some people would find backports useful (see SPARK-18016 jira discussion), but naturally I'd want to make sure the patches fit your testing requirements/release schedule.

@gatorsmile
Copy link
Member

@bdrillard Sorry, we do not plan to backport this PR to the maintenance branch 2.2. Could you please close this PR? Thanks!

@srowen srowen mentioned this pull request Nov 6, 2017
@asfgit asfgit closed this in ed1478c Nov 7, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants