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

Suggest some fine-tuning for another PR #128

Conversation

hiddenalpha
Copy link

I would like to merge this commit to PR_127 but I could not find a way to do so.
Therefore I opened this (yet another) pull request. Basically it
is the same but adding one more commit.

In PR_127 we got miscellaneous improvements. But we do no longer use
poll and therefore are back to the FD_SETSIZE limit of select.

This commit suggests some fine-tuning to PR_127. It does so by
replacing a possible SEGFAULT (aka crashing the whole JVM) by throwing a
java exception instead. This improves the reported error and even
enables user code to react to the situation.

Still not perfect. But IMHO would allow to merge PR_127 if we apply this
addition. We can still improve later (for example as soon there's enough time
to do so).

This does not touch stuff discussed in the java part. It only adds the checks
around FD_SETSIZE.

I did not find that much time for testing.

Roel and others added 6 commits May 30, 2022 22:46
In [PR_127] we got miscellaneous improvements. But we do no longer use
poll and therefore are back to the FD_SETSIZE limit of *select*.

This commit suggests some fine-tuning to [PR_127]. It does so by
replacing a possible SEGFAULT (aka crashing the whole JVM) by throwing a
java exception instead. This improves the reported error and even
enables user code to react to the situation.

Still not perfect. But IMHO good enough for now. We can still improve
later (for example as soon there's enough time to do so).

[PR_127]: java-native#127
@tresf
Copy link

tresf commented Dec 10, 2023

@hiddenalpha,

@pietrygamat would like to begin the next release. Since you've been working on most of the CPP issues, I was hoping we could get some help on what's open, what's closed and if there's anything you'd like to see in the next release from a CPP perspective. :)

@hiddenalpha
Copy link
Author

hiddenalpha commented Dec 13, 2023

Nothing pressing pending for a release from my point of view. Everything should be at least as good as in the previous release -> IMHO go on.

This specific PR here was a draft to contain a few suggestions for another PR which suggested to go back to 'select'. But this causes trouble in our use-case (see SEGFAULT in case of large FDs). For the infinite loop we reported related behavior in #94 and #95 . Back then I concluded that those arise from missing error handling in native code. But I did not further investigate on this. Because as already said, customer had no further interest.

As there was no paying customer left, I decided to instead fix the missing error handling unrelated to the original issue. Just for fun, whenever I was bored.

Maybe I'll cherry-pick some ideas from here over to separate PRs somewhen. But as I do this just-for-fun, there has to be a boring enough evening :)

Contact hiddenalpha

@pietrygamat pietrygamat removed this from the 2.9.6 milestone Dec 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants