JRuby does not support BasicSocket#sendmsg (connecting via Bolt on JRuby crashed with a NotImplementedError), but it does support BasicSocket#send. send requires flags to be specified, but sendmsg defaults them to 0, so I just used that since we weren't overriding that default here anyway.
This all started as an experiment to see if JRuby would run Bolt faster than HTTP, but that's not the case, unfortunately. JRuby Bolt is indeed over 2.5x as fast as CRuby Bolt, but still lags behind JRuby HTTP and CRuby HTTP (which are actually pretty close to each other) by about 37%.
Tested with JRuby 9.1.12.0 on Java 8 on queries deserializing 18k nodes.
Coverage remained the same at 73.68% when pulling 74082a1f8851889b81eb25488ab49be79f96700d on jgaskins:jruby-bolt into ef747869b9c259db816b655afec6f48e65720230 on neo4jrb:master.
Coverage remained the same at 73.68% when pulling 74082a1f8851889b81eb25488ab49be79f96700d on jgaskins:jruby-bolt into ef747869b9c259db816b655afec6f48e65720230 on neo4jrb:master.
JRuby does not support
BasicSocket#sendmsg
(connecting via Bolt on JRuby crashed with aNotImplementedError
), but it does supportBasicSocket#send
.send
requires flags to be specified, butsendmsg
defaults them to0
, so I just used that since we weren't overriding that default here anyway.This all started as an experiment to see if JRuby would run Bolt faster than HTTP, but that's not the case, unfortunately. JRuby Bolt is indeed over 2.5x as fast as CRuby Bolt, but still lags behind JRuby HTTP and CRuby HTTP (which are actually pretty close to each other) by about 37%.
Tested with JRuby 9.1.12.0 on Java 8 on queries deserializing 18k nodes.
Pings: @cheerfulstoic @subvertallchris