invesdwin / invesdwin-context-integration

invesdwin-context modules that provide integration features
GNU Lesser General Public License v3.0
1 stars 0 forks source link

implement channel for infinileap #48

Closed subes closed 1 year ago

subes commented 1 year ago

https://github.com/hhu-bsinfo/infinileap

subes commented 1 year ago

infinileap is too experimental right now, requiring java 19 FFI and: System.setProperty("de.hhu.bsinfo.hadronio.Configuration.PROVIDER_CLASS", InfinileapProvider.class.getName());. Then add environment variables: UCX_ERROR_SIGNALS="" UCX_TCP_CM_REUSEADDR=y

de.hhu.bsinfo.hadronio.HadronioProvider.HadronioProvider() constructor provider initialization needs to be done in debugger "step over" or else JVM crashes.

Then it fails because stdc++ can not be found by linker path:

java.lang.UnsatisfiedLinkError: no stdc++ in java.library.path: /usr/java/packages/lib:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2444)
    at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:848)
    at java.base/java.lang.System.loadLibrary(System.java:2047)
    at org.unix.RuntimeHelper.<clinit>(RuntimeHelper.java:40)
    at org.unix.constants$3.<clinit>(constants$3.java:15)
    at org.unix.Linux.htons$MH(Linux.java:355)
    at org.unix.Linux.htons(Linux.java:358)
    at de.hhu.bsinfo.infinileap.common.network.NativeInetSocketAddress.setPort(NativeInetSocketAddress.java:51)
    at de.hhu.bsinfo.infinileap.common.network.NativeInetSocketAddress.convert(NativeInetSocketAddress.java:93)
    at de.hhu.bsinfo.infinileap.binding.EndpointParameters.setRemoteAddress(EndpointParameters.java:37)
    at de.hhu.bsinfo.hadronio.infinileap.InfinileapEndpoint.connect(InfinileapEndpoint.java:67)

Can fix that with:

cd /lib/x86_64-linux-gnu
sudo ln -s libstdc++.so.6 libstdc++.so

Though after that the connect attempt with still crash the JVM. So I guess JFFI (Panama) and/or Infinileap is not yet ready.

subes commented 1 year ago

Because of that, won't do for now.