-
Notifications
You must be signed in to change notification settings - Fork 5.9k
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
Investigate node-js performance and delays on exiting #9297
Comments
An interesting point is that manually calling |
Oh, wow, interesting! I did use |
Pinging @cameel here since he seems to be looking into this as well. |
Looking at this again superficially, I think nodejs/node#36616 (comment) may be responsible for this. The issue is open and active, so we can hope that this will finally be resolved on the node end eventually... |
Actually, these days I do see this issue even with explicit |
Given the most recent comment in the linked nodejs issue, it might be worthwhile to double check if this is fixed in the latest node versions. |
Indeed this seems fixed on Node 18! Seeing this very clearly in the test suite for solidity-ast ( |
Closing this as fixed on the node side. |
@frangio first reported that the loading times of soljson.js in node-js increased significantly between 0.6.8 and 0.6.9 (along with the size increase due to adding Z3). This indeed seems to be the case for node 10, which has quite high loading times in general.
We probably don't need to care too much about node 10, which is rather old by now - but node > 10 has an even weirder issue.
Some benchmarks by @frangio https://gist.github.com/frangio/e70e524e3357ea143df77b7d3197c0a7
Apparently neither loading the file, nor compiling it, nor executing it is what actually causes the slow execution. At least I personally would be fine with the increase from 200ms to 600ms there, because it's still "fast enough" - but apparently exiting the node-js process causes a significant delay and 2.5 vs 7.3 seconds is really not nice, especially if it looks like it could just be ~200ms and the rest is wasted process shutdown time.
The text was updated successfully, but these errors were encountered: