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

Cannot start a nested transaction #15255

Closed
deepan83 opened this issue May 19, 2017 · 18 comments
Closed

Cannot start a nested transaction #15255

deepan83 opened this issue May 19, 2017 · 18 comments

Comments

@deepan83
Copy link
Contributor

Upgrading to 2.13.1 and see the following errors,

vendor.js:formatted:30800 Uncaught Error: Cannot start a nested transaction
    at Object.debugAssert [as assert] (vendor.js:formatted:30800)
    at Environment.begin (vendor.js:formatted:29098)
    at Environment.begin (vendor.js:formatted:41133)
    at InteractiveRenderer._renderRoots (vendor.js:formatted:43915)
    at eval (eval at begin (vendor.js:formatted:29098), <anonymous>:1:7)
    at Environment.begin (vendor.js:formatted:29098)
    at Environment.begin (vendor.js:formatted:41133)
    at InteractiveRenderer._renderRoots (vendor.js:formatted:43915)
    at InteractiveRenderer._renderRootsTransaction (vendor.js:formatted:43982)
    at InteractiveRenderer._revalidate (vendor.js:formatted:44025)

I suppose this is related to the back tracking issues but the error message makes it hard to work back towards the cause. Any ideas on how we would go about debugging this?

@deepan83
Copy link
Contributor Author

glimmerjs/glimmer-vm#484

@RobIsHere
Copy link

Can someone please explain the meaning of this assertion? Against what type of error does it guard? A usage problem to fix in the app or a glimmer internal problem?

@jonathanhudak
Copy link

I am encountering this issue as well. Only when using ember.min.js when I used the un-minified ember I do not see this error at all. It would be awesome to hear if anyone has advice on debugging this.

@joshjeppson
Copy link

joshjeppson commented May 24, 2017

Same issue here. Slightly different symptoms.

  • It only occurs in my project when embedded into another site, specifically WordPress.
  • When run locally via ember serve or directly via index.html, no issue.
  • It only occurs in IE11 and goes away if IE's emulation mode is set to IE10 or earlier.
  • Disabling minification does not seem to make a difference.
  • Rolling back to previous versions changes the error output but does solve the problem (Tried 2.13.2, 2.13.1, 2.12.3, 2.11.1 and a few others).
  • I was briefly able to reproduce the error in Chrome locally while updating some packages but unfortunately didn't record the package combo that achieved that.
  • Speculatively, it seems to happen when an ajax request returns and the result is parsed.

@stefanpenner
Copy link
Member

Can someone please explain the meaning of this assertion?

When I have ran into this, it has been a red herring of sorts. Basically some other error occurs during render, putting the VM into a bad state, which results in this error.

So although glimmer also needs to address being able to recover correctly, you may want to look for other errors in the console and address them. (my example was someone trying to use nodeList.forEach on IE edge.

@stefanpenner
Copy link
Member

hypothetical fix: glimmerjs/glimmer-vm#505 (i need to actually write tests and confirm, so don't get too exited yet)

@stefanpenner
Copy link
Member

stefanpenner commented May 25, 2017

beta channel: #15283
release channel: #15284

@AlexanderKapelyukhovskiy

is there some news about this issue? is not, could you please guys provide some workaround? it blocks our company migration from 1.13.12 to 2.13.2

@elwayman02
Copy link
Contributor

elwayman02 commented May 31, 2017 via email

@stefanpenner
Copy link
Member

@elwayman02 thanks! I forgot to close.

@sauravj
Copy link

sauravj commented Jun 1, 2017

Is 2.13.3 going to be released on NPM?

@rwjblue
Copy link
Member

rwjblue commented Jun 1, 2017

Yep, it was released to npm at the same time as it was to bower (roughly 21 hours ago).

@AlexanderKapelyukhovskiy

@rwjblue, could you please clarify which packages I need to update to fix Cannot start a nested transaction console error in my created by ember-cli app? Thanks.

@stefanpenner
Copy link
Member

stefanpenner commented Jun 1, 2017

@AlexanderKapelyukhovskiy ember-source should be at-least 2.13.3 i believe

@rwjblue
Copy link
Member

rwjblue commented Jun 1, 2017

Confirm

@AlexanderKapelyukhovskiy

As I didn't have ember-source in npm dependencies I've updated bower ember package to 2.13.3 and looks like it helped with Cannot start a nested transaction error. However some strange error left. I think it doesn't connect with subject of this issue.

Only one question I have - was this issue due to usage of bower package and if not how can I fix it if I remove bower from our project.

@RobIsHere
Copy link

@AlexanderKapelyukhovskiy I upgraded some time ago like you did and I noticed that all of the bower packages were moved to npm.

You can get a list of changes of your bower.json and package.json like this:
ember-cli/ember-new-output@v1.13.12...v2.13.2

It looks like there is no ember-new-output for the v2.13.3 yet, but basically it's the same

@stefanpenner
Copy link
Member

@RobIsHere / @AlexanderKapelyukhovskiy ah i forgot about bower, but the 2.13.3 version of ember in bower should also resolve the issue.

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

No branches or pull requests

9 participants