Skip to content

Conversation

@davies
Copy link
Contributor

@davies davies commented Aug 7, 2015

Currently, generated UnsafeProjection can reach 64k byte code limit of Java. This patch will split the generated expressions into multiple functions, to avoid the limitation.

After this patch, we can work well with table that have up to 64k columns (hit max number of constants limit in Java), it should be enough in practice.

cc @rxin

@SparkQA
Copy link

SparkQA commented Aug 7, 2015

Test build #1408 has finished for PR 8044 at commit 358bd42.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Aug 8, 2015

Test build #40207 has finished for PR 8044 at commit 75ccd01.

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

@SparkQA
Copy link

SparkQA commented Aug 8, 2015

Test build #1409 has finished for PR 8044 at commit 358bd42.

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

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should do 8 byte alignment here

@rxin
Copy link
Contributor

rxin commented Aug 8, 2015

Going to take another look tomorrow.

Davies Liu added 3 commits August 8, 2015 08:42
Conflicts:
	sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/codegen/GenerateSafeProjection.scala
@SparkQA
Copy link

SparkQA commented Aug 8, 2015

Test build #40241 timed out for PR 8044 at commit 1b95be4 after a configured wait of 175m.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you document what "input" is here?

@SparkQA
Copy link

SparkQA commented Aug 10, 2015

Test build #40284 timed out for PR 8044 at commit ffcd132 after a configured wait of 175m.

@yhuai
Copy link
Contributor

yhuai commented Aug 10, 2015

test this please

@SparkQA
Copy link

SparkQA commented Aug 10, 2015

Test build #40302 has finished for PR 8044 at commit d1ef81a.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds the following public classes (experimental):
    • class PoissonSampler[T: ClassTag](
    • class SpecificMutableProjection extends $

@SparkQA
Copy link

SparkQA commented Aug 10, 2015

Test build #40297 timed out for PR 8044 at commit ffcd132 after a configured wait of 175m.

@SparkQA
Copy link

SparkQA commented Aug 10, 2015

Test build #40308 has finished for PR 8044 at commit 9192e6c.

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

@rxin
Copy link
Contributor

rxin commented Aug 10, 2015

I've merged this.

@asfgit asfgit closed this in fe2fb7f Aug 10, 2015
asfgit pushed a commit that referenced this pull request Aug 10, 2015
…umns or large exressions

Currently, generated UnsafeProjection can reach 64k byte code limit of Java. This patch will split the generated expressions into multiple functions, to avoid the limitation.

After this patch, we can work well with table that have up to 64k columns (hit max number of constants limit in Java), it should be enough in practice.

cc rxin

Author: Davies Liu <davies@databricks.com>

Closes #8044 from davies/wider_table and squashes the following commits:

9192e6c [Davies Liu] fix generated safe projection
d1ef81a [Davies Liu] fix failed tests
737b3d3 [Davies Liu] Merge branch 'master' of github.com:apache/spark into wider_table
ffcd132 [Davies Liu] address comments
1b95be4 [Davies Liu] put the generated class into sql package
77ed72d [Davies Liu] address comments
4518e17 [Davies Liu] Merge branch 'master' of github.com:apache/spark into wider_table
75ccd01 [Davies Liu] Merge branch 'master' of github.com:apache/spark into wider_table
495e932 [Davies Liu] support wider table with more than 1k columns for generated projections

(cherry picked from commit fe2fb7f)
Signed-off-by: Reynold Xin <rxin@databricks.com>
CodingCat pushed a commit to CodingCat/spark that referenced this pull request Aug 17, 2015
…umns or large exressions

Currently, generated UnsafeProjection can reach 64k byte code limit of Java. This patch will split the generated expressions into multiple functions, to avoid the limitation.

After this patch, we can work well with table that have up to 64k columns (hit max number of constants limit in Java), it should be enough in practice.

cc rxin

Author: Davies Liu <davies@databricks.com>

Closes apache#8044 from davies/wider_table and squashes the following commits:

9192e6c [Davies Liu] fix generated safe projection
d1ef81a [Davies Liu] fix failed tests
737b3d3 [Davies Liu] Merge branch 'master' of github.com:apache/spark into wider_table
ffcd132 [Davies Liu] address comments
1b95be4 [Davies Liu] put the generated class into sql package
77ed72d [Davies Liu] address comments
4518e17 [Davies Liu] Merge branch 'master' of github.com:apache/spark into wider_table
75ccd01 [Davies Liu] Merge branch 'master' of github.com:apache/spark into wider_table
495e932 [Davies Liu] support wider table with more than 1k columns for generated projections
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.

4 participants