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

Ship with vendored liburing #62

Open
lolgab opened this issue Apr 13, 2023 · 1 comment
Open

Ship with vendored liburing #62

lolgab opened this issue Apr 13, 2023 · 1 comment
Labels
enhancement New feature or request

Comments

@lolgab
Copy link
Collaborator

lolgab commented Apr 13, 2023

Can we ship a jar containing the c sources for liburing so the Scala Native tools can compile it together with applications and users don't need to install/configure anything?
I'm not sure it is possible. Would you accept such a PR? I can be a build script which adds liburing files to managed resources.

@lolgab lolgab changed the title Ship with liburing Ship with vendored liburing Apr 13, 2023
@armanbilge armanbilge added the enhancement New feature or request label Apr 13, 2023
@armanbilge
Copy link
Owner

Yes, it's an interesting idea, and a very plausible one!! I am definitely interested in it, it would make it much easier to use this library :)

I can be a build script which adds liburing files to managed resources.

I'd have to see how this works, but if it's robust and we are not sacrificing any performance trying to compile it ourselves then it seems good.

Along those lines, I wonder if we should offer it as a separate opt-in/opt-out jar, so if someone wants to do it themselves that's still an option. (Btw, would be interesting if we can do this for s2n-tls as well, but that's another story)

One more note: another option would be if we could remove the liburing dependency altogether. One of the GSoC projects is calling io_uring from Java, which can't using liburing because the cost of JNI is so high. So it will be implementing all of the helpers in Scala. In theory we could re-use that work here and drop the liburing dependency completely. But also I watched a talk from Jens Axboe where they say "don't be a hero, use liburing" lol 😅

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants