WIP: add partial libuv support #6902
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem: as discussed in #3969, it is hard to embed the flux reactor in another event loop because it doesn't expose an interface for notification when events are pending (such as a file descriptor). It cannot, because libev does not. libuv does, hence the interest in replacing libev with libuv.
This PR adds a new configure option:
When configured that way, libev is replaced with libuv. However, this is still a WIP due to:
flux_watcher_set_priority()isn't implemented (we support it for check watchers only)Given the experimental label, perhaps we could merge this if we could do the following:
Then when the reactor embedding issue priority goes up again at some point, perhaps someone can pick this up and resolve any remaining issues.
See also