OK so the return should be
RETURN player, invitedBy, declinedBy, mutedBy, friends
And what do you mean by variable length starting at 0? Is that in reference
to the 0..1 in the MATCH clauses. I was just copying from what I found
online. Should it be 1..1 then?
Thanks again Michael.
Mark S.
On Tuesday, February 4, 2014 3:07:22 PM UTC-8, Michael Hunger wrote:
>
> Your lookup is wrong. You are passing in your uuid string, but instead you
> want to do an index lookup
>
> @Query("""START player=node:Player(playerId={0})
>
>
> So you are just retrieving the player and for the other 3 relationships
> you're actually just checking that the exist?
> Then probably move them into the WHERE part, or did you just not return
> them here, b/c you were testing?
>
> Also your variable length starting at 0 will return the player himself as
> friend, mutedby etc.
>
> Am 04.02.2014 um 23:58 schrieb Bytor99999 <[email protected]<javascript:>
> >:
>
> So I was trying to write a single query that can populate a Node with all
> of its related nodes, via 4 different relationship types into one domain
> object with Collections for each relationship.
>
> Here is the Cypher query that I have written
>
> @Query("""START player=node({0})
> MATCH (player)<-[:playerInvited*0..1]-(invitedBy),
> (player)<-[:playerDeclined*0..1]-(declinedBy),
> (player)<-[:playerMuted*0..1]-(mutedBy),
> (player)<-[:playerActive*0..1]-(friends)
> RETURN player""")
> public PlayerPresenceGraph getPlayerWithAllFriends(String playerID)
>
> And I get the following error
>
> 2014-02-04 14:35:09,451 ERROR
> com.hdpoker.data.actionhandlers.AbstractHandler - Unable to Handler
> request through Handler
> org.springframework.data.redis.RedisSystemException: Unknown jedis
> exception; nested exception is org.neo4j.rest.graphdb.RestResultException:
> Expected a propertycontainer or number here, but got:
> 1eb7f292-b67d-46e6-a38f-16f194bb61c8 at
> BadInputException
>
>
> org.neo4j.server.rest.repr.RepresentationExceptionHandlingIterable.exceptionOnHasNext(RepresentationExceptionHandlingIterable.java:50)
>
>
> org.neo4j.helpers.collection.ExceptionHandlingIterable$1.hasNext(ExceptionHandlingIterable.java:60)
>
> org.neo4j.helpers.collection.IteratorWrapper.hasNext(IteratorWrapper.java:42)
>
>
> org.neo4j.server.rest.repr.ListRepresentation.serialize(ListRepresentation.java:58)
> org.neo4j.server.rest.repr.Serializer.serialize(Serializer.java:75)
>
> I know I have something wrong in the query, but can't figure out what it
> is. I haven't been able to find an example that tries to retrieve 4
> different collections. In other code, I tried
>
> PlayerPresenceGraph playerPresenceGraph =
> playerPresenceGraphRepository.findByPlayerID(playerID)
> if (playerPresenceGraph) {
> neo4jTemplate.fetch(playerPresenceGraph.getInvited())
> neo4jTemplate.fetch(playerPresenceGraph.getDeclined())
> neo4jTemplate.fetch(playerPresenceGraph.getMuted())
> neo4jTemplate.fetch(playerPresenceGraph.getInviteToTable())
>
> And that works, but we have noticed that Neo4J ends up taking 200% CPU
> usage for the query and it is slow. We need this really fast, one player
> and all their invitedFriends, declinedFriends, muted players and actual
> Friends in one query that is really fast.
>
> Thanks
>
> Mark
>
> --
> You received this message because you are subscribed to the Google Groups
> "Neo4j" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected] <javascript:>.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>
--
You received this message because you are subscribed to the Google Groups
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.