-
Notifications
You must be signed in to change notification settings - Fork 82
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
Crash on a simple POM file #597
Comments
If you restart and ensure As a workaround, you could try setting the preference @angelozerr , have you ever run into such a case ? I've seen OOM before, but the file was ~24MB. |
Here's the trace: Click to expand
There are no "project settings, I just open the POM file directly |
Many thanks @alexolog to have taken time to share your trace. I suspect it's a problem with XSD downloading (perhaps it's a problem with some proxy or right to write in your /home)? @alexolog could you download with your browser the maven-4.0.0.xsd and store it at /home/alexolog/.lemminx/cache/http/maven.apache.org/xsd/maven-4.0.0.xsd please. Is it working better? |
Bingo, I'm able to reproduce as well. It started happening the moment I cleared my |
@rgrunber I cannot reproduce it with my Windows OS -( Do you think you could have time to investigate the problem? |
Thanks so much @rgrunber for your help. The download is done here https://github.com/eclipse/lemminx/blob/4233e9bd5612997a07a97fde04b4d396b863b513/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/uriresolver/CacheResourcesManager.java#L165 |
The workaround stopped the crashing, |
Ok thanks for your feedback. The problem comes from downloading. By waiting a fix for that, you can enjoy with vscode-xml features (diagnostic, completion,etc). Hope you will like it. |
@alexolog is it working without binary? If it doesn't work could you share your traces please. Thanks. |
Although I'm not entirely sure, I seem unable to reproduce on vscode-xml 0.16.0, and can easily can reproduce on any version 0.16.1 or above. One interesting thing that happened between those releases was we started building the native binary as a static library (instead of dynamic). Maybe some statically linked library just isn't working on our system. I would guess the failure happens somehwere in https://github.com/eclipse/lemminx/blob/master/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/uriresolver/CacheResourcesManager.java#L168-L176 because the last communication from the server is right above that line, and I'm unable to detect a GET request coming from the process (according to wireshark). Update : Attaching to the LemMinX binary with gdb :
|
Using This is the ldd for a fully dynamically linked LemMinX binary :
This is the ldd for a statically linked except for glibc LemMinX binary :
Looks like we'd be regressing #457, so I'll have to test what the situation is like on an Alpine container. We added the static build specifically for glibc, and so this would remove exactly that. |
On Windows os it works but what about with mac os? @fbricon is download is working for you? |
Looks like making it dynamic would break Alpine, so we'll have to see if there's a another way. |
Might be similar to https://bugs.gentoo.org/763585#c1 ? Seems like an additional workaround is to add libmusl to the build environment and use |
- Fixes redhat-developer#597 - Use -H:+StaticExecutableWithDynamicLibC to statically link everything except libc Signed-off-by: Roland Grunberg <[email protected]>
I've also tried the statically generated binaries in our validation builds (Ubuntu 20.04.3, glibc 2.31), and even those fail the same way. |
Once this issue is addressed (which should regress support for Alpine Linux, or any platform not providing libc), we can address that with #593 . According to https://code.visualstudio.com/api/working-with-extensions/publishing-extension#platformspecific-extensions , there is support for targeting |
- Fixes #597 - Use -H:+StaticExecutableWithDynamicLibC to statically link everything except libc Signed-off-by: Roland Grunberg <[email protected]>
In case anyone would like to use/test the binary until we get a release out, I've just tested and confirmed that the following should work :
You can also (optionally) add
|
The language server crashes and I get the following message:
The file in question is:
The text was updated successfully, but these errors were encountered: