-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
--language:js seems to disable inlining in native images #4473
Comments
Thank you for reporting this, we will take a look and get back to you, in the meantime could you share the steps to reproduce the issue |
Pull newest from repository first: Check if you have any Redis port opening: Kill the redis if you have any exists: Then run the following: After done container run: |
Can be reproduced without that with just a simple Spring webapp. |
Thank you @sdeleuze, could you please share the simple Spring webapp for clarity? |
Sure:
|
Hi @sdeleuze ,
the output I get:
Am I missing something? what version of GraalVM did you reproduce with? jdk11 or 17? CE or EE? which OS? (I tested on Linux amd64 Ubuntu 18.04) |
The problem when testing my Spring application comes to a similar problem as @sdeleuze mentioned. What are my steps:
starting the executable it get this output:
|
Tracked internally on GR--38563 |
@sdeleuze Yes, currently method inlining before analysis is not supported when a Truffle language is in the image. This requires a pretty big rewrite of how we compile the deoptimization entry points. We know how to do it, but just did not have the time yet to get it implemented. So the main question is: how important is that for you? Do you have use cases where you want to integrate JavaScript into Spring applications? |
@christianwimmer There is a Java library GraphViz that creates diagrams using a Javascript engine and this could live in a Spring project. There could be several use-cases to generate a graph in your application. Imagine all the applications that want to have a pie chart from tables or similar things. |
@christianwimmer I guess there are some use cases like the one mentioned by @michelu89, but i am not sure how frequent they are. Concretely, the impact is that Spring Boot 3 will document that |
I have this issue on the list to be addressed over the next months, I hope we get it done for the 22.3 release in fall. |
This issue is still pending and prevents any Spring Boot 3 application to enable the language support, see https://github.com/eregon/truffleruby-embed-spring. Any chance you could remove this limitation? |
We are actively working on removing this limitation, but it requires many changes. I'll post an update here when InlineBeforeAnalysis is compatible with Truffle languages |
just faced the same problem, currently trying the js support in a native image with Spring Boot 3 |
Any chance to fix that in next major release? |
We have been working on the necessary changes for a while, so there is a good chance it will be ready for GraalVM 23.1 in fall. But until everything is working, we cannot guarantee it. |
Will --language:js use with native build work with latest Quarkus based apps? |
Facing this problem with |
Hello @christianwimmer, based on the lack of activity for almost a year, I understand that this was not fixed yet nor you're planning to include a fix soon. |
Hi, with the release of 23.1, InlineBeforeAnalysis is compatible with Truffle languages. |
Based on what we discussed in this Spring Native issue, using
--language:js
seems to disable inlining like if-H:-InlineBeforeAnalysis
was applied, breaking Spring Boot applications compiled with Spring Native.Please tag this issue with the
spring
label.The text was updated successfully, but these errors were encountered: