Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

Rails model objects do not compare with '==' under jRuby 1.7.1 #225

Closed
ayqazi opened this Issue · 2 comments

2 participants

Asfand Yar Qazi Andreas Ronge
Asfand Yar Qazi

Hello,

This is a weird problem - I don't know if it's related to neo4j or jRuby, but I thought I'd mention it here. Using neo4j.rb 2.2.0 and jRuby 1.7.1, I found that comparing 2 objects that represent the same node return false when comparing with '=='. However, when I switch to the old version of jRuby I was using, jRuby 1.6.7.2, it works. I am running jRuby 1.6.7.2 in 1.9 mode with --1.9.

Basically, I was just doing a 'Person.first == Person.first', and it was true under 1.6.7.2, and false under 1.7.1 .

Any idea what's up? jRuby 1.6.7.2 emulates Ruby 1.9.2, wherever jRuby 1.7.1 emulates Ruby 1.9.3. Could that be the problem?

I'm switching back to jRuby 1.6 for now, as comparing 2 different objects that represent the same node in the graph DB and getting a return value of 'true' just seems the right thing to do.

Thanks

Andreas Ronge
Owner

Hmm, really strange.
The implementation is here:
https://github.com/andreasronge/neo4j-core/blob/master/lib/neo4j-core/equal/equal.rb
The above mixin is used to extend the Neo4j Node/Relationship Java classes

The Neo4j Rails models delegates to the Java Node and Relationship objects
see https://github.com/andreasronge/neo4j-wrapper/blob/master/lib/neo4j-wrapper/node_mixin/delegates.rb

Not sure when I will have to time to investigate this more. But I'm curious ...

Andreas Ronge andreasronge closed this issue from a commit
Andreas Ronge andreasronge Fix for JRuby 1.7.1, closes #225
Use the neo4j-wrapper impl. of equal instead of the neo4j-core java equals
e1efebe
Asfand Yar Qazi

Thanks so much for fixing that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.