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

Tests throw a stack overflow #8557

Closed
DartBot opened this issue Feb 15, 2013 · 13 comments
Closed

Tests throw a stack overflow #8557

DartBot opened this issue Feb 15, 2013 · 13 comments

Comments

@DartBot
Copy link

DartBot commented Feb 15, 2013

This issue was originally filed by ngeoffray@google.com


Running dart2js with the VM in checked mode triggers a stack overflow, but not in production mode:

http://build.chromium.org/p/client.dart.fyi/builders/dart2js-linux-release-host-checked/builds/480/steps/dart2js%20tests%20--host-checked%20failures/logs/stdio

There are 15000 frames on the stack, so it's not surprising it may hit a stack overflow. But if checked mode takes up more stack, should the VM increase the stack space for checked mode?

@karlklose
Copy link
Contributor

Issue #8591 has been merged into this issue.

@iposva-google
Copy link
Contributor

Stack space for the main thread is not set by the VM, but by the OS on launch. The problem seems to be a reliance on recursion. The fact that this test does not overflow in non-checked mode is pure luck, a different Dart program triggering a deeper recursion will suffer the same fate even in production mode.


Removed Area-VM label.
Added Area-Dart2JS label.

@peter-ahe-google
Copy link
Contributor

Thank you for your opinion about the implementation of dart2js. It is not relevant for this bug report, we already have a bug to track that.

This bug report is about checked mode using more stack space than production mode.


Removed Area-Dart2JS label.
Added Area-VM label.

@iposva-google
Copy link
Contributor

The actual size of stack frames relies on different possible optimizations available at runtime. Checked mode obviously behaves differently than production mode.


Added AsDesigned label.

@peter-ahe-google
Copy link
Contributor

We still need to track the recursion problem in dart2js. I remembered wrong, we do not already have a bug report to track the recursion issue in dart2js.

I'll repurpose this as a bug report against dart2js since we already added this issue number to the status files.


Removed Area-VM label.
Added Area-Dart2JS, Triaged labels.

@kasperl
Copy link

kasperl commented Apr 22, 2013

Added this to the Later milestone.

@kasperl
Copy link

kasperl commented May 23, 2013

Added TriageForM5 label.

@kasperl
Copy link

kasperl commented May 28, 2013

Removed TriageForM5 label.

@peter-ahe-google
Copy link
Contributor

This may also happen in production mode after new optimizations have been implemented in the Dart VM.

@peter-ahe-google
Copy link
Contributor

Changed the title to: "Tests throw a stack overflow".

@kasperl
Copy link

kasperl commented Jul 10, 2014

Removed this from the Later milestone.
Added Oldschool-Milestone-Later label.

@kasperl
Copy link

kasperl commented Aug 4, 2014

Removed Oldschool-Milestone-Later label.

@karlklose
Copy link
Contributor

There are no references from the status files to this issue anymore and I think we should track individual recursive algorithms that we know are a problem instead. Please reopen with more specific information or mark as enhancement if you think we should keep it.

@kevmoo kevmoo removed the triaged label Mar 1, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants