Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Limit the width of reified objects to 50 by default. #5518

Merged
merged 3 commits into from May 15, 2019

Conversation

@headius
Copy link
Member

commented Dec 13, 2018

This relates to #5511 but is not a fix. This only limits how wide
these object will be, so we're not generating extremely wide
classes for weirdly dynamic objects that create lots of new
instance variables.

This will be improved once we make objects know about their own
shapes, so they can evolve to handle the right number of variables
that are actually used.

Limit the width of reified objects to 50 by default.
This relates to #5511 but is not a fix. This only limits how wide
these object will be, so we're not generating extremely wide
classes for weirdly dynamic objects that create lots of new
instance variables.

This will be improved once we make objects know about their own
shapes, so they can evolve to handle the right number of variables
that are actually used.

@headius headius added this to the JRuby 9.2.6.0 milestone Dec 13, 2018

@headius

This comment has been minimized.

Copy link
Member Author

commented Dec 13, 2018

@headius

This comment has been minimized.

Copy link
Member Author

commented Dec 13, 2018

Ok looks like additional work needed...it's trying to grab vars at widths outside the max.

@headius headius modified the milestones: JRuby 9.2.6.0, JRuby 9.2.7.0 Dec 18, 2018

@headius headius modified the milestones: JRuby 9.2.7.0, JRuby 9.3.0.0 Apr 9, 2019

headius added some commits May 14, 2019

Use clamped size for reification to avoid walking off object.
This fixes the remaining issues with the previous change.

@headius headius merged commit 493822c into jruby:master May 15, 2019

2 checks passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details
jruby.jruby Build #20190515.3 succeeded
Details

@headius headius modified the milestones: JRuby 9.3.0.0, JRuby 9.2.8.0 May 15, 2019

@headius headius deleted the headius:limit_reified_width branch May 15, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant
You can’t perform that action at this time.