Yeah, should really have thought a long time ago about what might be 
happening internally and why @Fetch would really make all this difference. 
Not a lot you can do with an object full of nulls, and objects full of 
proxies would end up fetching everything in order to test for equality. 
*sigh* indeed, I have given myself a mountain to climb..

M

On Tuesday, 20 May 2014 13:27:56 UTC+1, Michael Hunger wrote:
>
> Oh, that's the solution? *sigh*
>
> It's kinda hard to define other equality if you don't have more 
> information available than just the GraphId.
>
>
> On Tue, May 20, 2014 at 2:20 PM, Mark Findlater 
> <[email protected]<javascript:>
> > wrote:
>
>> Ha, you know what, whilst I have been disappeared I have had a thought 
>> and I'm going to guess that the problem (for me) stems from not performing 
>> equality/hash based on the graphId field and therefore ending up with a 
>> load of nodes that are "equal" and subsequently occupy a single slot in the 
>> set. Well I wish I'd realised that when I started, there is a lot of 
>> behaviour to modify now!
>>
>> M
>>
>>
>> On Monday, 28 April 2014 14:37:30 UTC+1, Mark Findlater wrote:
>>>
>>> Sorry, I didn't see this reply! Interestingly I just came across the 
>>> problem again, I can write a unit test, I have unit tests but it is quite a 
>>> lot of code to reproduce, so I can trim it down. In the meantime should I 
>>> assume that this is not a problem that anyone other than myself and Michael 
>>> A are experiencing?
>>>
>>> Thanks,
>>>
>>> M
>>>
>>> On Thursday, 17 April 2014 05:49:10 UTC+1, Michael Hunger wrote:
>>>>
>>>> As simple mode is detached from the db you should need to save it again 
>>>> to persist changes
>>>>
>>>> Mark could you create a unit test for that fetching/loading behavior?
>>>>
>>>> Thanks a lot
>>>>
>>>> Sent from mobile device
>>>>
>>>> Am 17.04.2014 um 02:31 schrieb Michael Azerhad <[email protected]>:
>>>>
>>>> Oh, so the problem should not be tied exclusively to Scala..
>>>>
>>>> I don't find the root cause.. I just use a workaround:
>>>>
>>>> instead of neo4jTemplate.fetch method, I wrote a repository method to 
>>>> fetch the whole.   Not pretty, but working..
>>>>
>>>> I would be curious too to know the exact reason of the issue..
>>>>
>>>> Michael
>>>>
>>>> On Tuesday, April 15, 2014 2:13:50 PM UTC+2, Mark Findlater wrote:
>>>>>
>>>>> I am interested in this too. I am using Neo4j 2.0.1 and SDN 
>>>>> 3.0.0.RELEASE . I am experiencing the same behaviour:
>>>>>
>>>>> //When the Node is retrieved images.size() is 3 and the correct images 
>>>>> are present.
>>>>> @NodeEntity
>>>>> public class SponsorNode {
>>>>>     
>>>>>     @RelatedTo(type="BRAND_IMAGE", direction=Direction.OUTGOING)
>>>>>     @Fetch
>>>>>     private Set<ImageNode> images;
>>>>> }
>>>>>
>>>>> //If I now fetch the sponsor node images.size() == 1, if I run 
>>>>> template.fetch(images) then images.size() == 1 (but all attributes are 
>>>>> populated).
>>>>> @NodeEntity
>>>>> public class SponsorNode {
>>>>>     
>>>>>     @RelatedTo(type="BRAND_IMAGE", direction=Direction.OUTGOING)
>>>>>     private Set<ImageNode> images;
>>>>> }
>>>>>
>>>>> Did you find the root of your problem Michael?
>>>>>
>>>>> On Sunday, 2 February 2014 22:27:56 UTC, Michael Azerhad wrote:
>>>>>>
>>>>>> Maybe it's an incompatibility with Scala. 
>>>>>>
>>>>>> I spent all day long to explain a possible reason why fetching only 
>>>>>> returns the first collection's element.
>>>>>>
>>>>>> Could anyone confirm me this assumption:
>>>>>> I precise I use SDN 3.0.0-RC1 with the simple object mapping:
>>>>>>
>>>>>> *If my first action is to create and save a `Meeting` object, *
>>>>>> *then I don't need to save it anymore to be able to fetch the future 
>>>>>> relationships made by adding some `Participation`s independently.*
>>>>>> *In other word, does fetching for last values require the Meeting 
>>>>>> object to be saved/updated again after Participations were added?*
>>>>>>
>>>>>> Thanks a lot
>>>>>>
>>>>>> On Sunday, February 2, 2014 3:29:45 PM UTC+1, Michael Azerhad wrote:
>>>>>>>
>>>>>>> I use Scala.
>>>>>>>
>>>>>>> In my class Meeting, I have this relation:
>>>>>>>
>>>>>>> @RelatedTo(`type` = "TO", direction = Direction.INCOMING)
>>>>>>>   var _participants: java.util.Set[Participation] = _
>>>>>>>
>>>>>>> Participation is another node entity, linked to Meeting with an 
>>>>>>> outgoing relationship "TO".
>>>>>>>
>>>>>>> What I do is a simple test saving firstly a Meeting, and then saving 
>>>>>>> three distinct Participations related to it.
>>>>>>>
>>>>>>> I expect then to have a size of 3 when I do at the end of the 
>>>>>>> process:  
>>>>>>> neo4jTemplate.fetch(meetingRepository.findById(justSavedMeetingId).
>>>>>>> _participants)
>>>>>>>
>>>>>>> However, it only returns the first Participation that was linked to. 
>>>>>>> Not the two others....
>>>>>>>
>>>>>>> Note that it well works (size of 3 retrieved) when I add @Fetch, 
>>>>>>> without explicitly using neo4jtemplate.fetch:
>>>>>>>
>>>>>>> @Fetch @RelatedTo(`type` = "TO", direction = Direction.INCOMING)
>>>>>>>   var _participants: java.util.Set[Participation] = _  //works
>>>>>>>
>>>>>>> I tested it in the same transaction and in distinct transaction. 
>>>>>>>
>>>>>>> Am I missed something obvious?
>>>>>>>
>>>>>>> Thanks,
>>>>>>>
>>>>>>> Michael
>>>>>>>
>>>>>>> On Sunday, February 2, 2014 3:53:54 AM UTC+1, Michael Azerhad wrote:
>>>>>>>>
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> My question is pretty simple:  
>>>>>>>> May it be a normal scenario when neo4jTemplate.fetch returns ALWAYS 
>>>>>>>> the first collection's element?  (concerning a @RelatedTo collection's 
>>>>>>>> field without any @Fetch annotation)
>>>>>>>>
>>>>>>>> On the contrary, when @Fetch is placed, the whole collection is 
>>>>>>>> well retrieved.
>>>>>>>>
>>>>>>>> I did a workaround by rather use a Cypher Query (annotation in my 
>>>>>>>> repository) to load the collection, but I would like to know if this 
>>>>>>>> scenario could be explained.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> Michael
>>>>>>>>
>>>>>>>>
>>>>>>>>  -- 
>>>> 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/d/optout.
>>>>
>>>>
>

-- 
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/d/optout.

Reply via email to