Github user spmallette commented on the pull request:
https://github.com/apache/incubator-tinkerpop/pull/109#issuecomment-148808152
> I am still figuring it out. Do you have any suggestions?
I think we should add a configuration to manage epoll or not epoll somehow.
Maybe you add something to `Settings` called `useEpollIfPossible` that is
`true` or `false` (default as `false`). Then in your code, you use that
setting on startup to use epoll if on linux (otherwise just use java nio) or if
directly set to `false` just use java nio regardless of OS.
Now for tests, we could add an environment variable, like
`GREMLIN_SERVER_EPOLL` which is `true` or `false`. in
`AbstractGremlinServerIntegration` test you check for that variable (defaulted
to `false`) in the `overrideSettings` method. If `true` then flip the
`Setting` to `true` and return it. That will make all the tests work against
Gremlin Server configured in "epoll mode".
Lastly, we add a new maven profile to the gremlin-server `pom.xml` that
adds your `GREMLIN_SERVER_EPOLL` environment variable to the failsafe plugin
config so that the integration tests will get that. In this way we can
optionally run those tests as needed. I think it is sufficient to not
constantly run those tests, but if we decide that is so, we could move it out
of a profile and into a second failsafe execution.
This change would also entail an update to the documentation to describe
the `epollIfPossible` setting.
What do you think? Still interested in working on it? Sad that you got
sucked into this? :wink:
> I just subscribed to the mailing list.
cool - welcome. feel free to start up a thread on the CI issue. @mhfrantz
and i can will join in from there.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---