Sorry for that, i like them too 

If you have any other idea what we can do here let me know

Sent from mobile device

Am 06.03.2014 um 18:37 schrieb Wojtek Wysocki <[email protected]>:

> Thanks for the information Michael
> 
> That is really unfortunate. I hope this functionality will be introduced 
> later. I really like the concept of labels.
> 
> Wojtek
> 
> On Thursday, March 6, 2014 6:25:18 PM UTC+1, Michael Hunger wrote:
>> 
>> Hi Wojtek,
>> 
>> unfortunately labels are not returned from any of the endpoints with the 
>> nodes automatically, so they have to be fetched separately.
>> 
>> Sorry for that.
>> 
>> You can return to the Indexed type-representation strategy with using this 
>> config:
>> 
>>     <bean id="typeRepresentationStrategyFactory" 
>> class="org.springframework.data.neo4j.support.typerepresentation.TypeRepresentationStrategyFactory">
>>         <constructor-arg index="0" ref="graphDatabase"/>
>>         <constructor-arg index="1" value="Indexed"/>
>>     </bean>
>> 
>>     <neo4j:config storeDirectory="graph.db" 
>> base-package="com.example.domain,com.example.domain2"/>
>>     <neo4j:repositories base-package="com.example.repositories"/>
>> 
>> 
>> 
>> Am 06.03.2014 um 18:07 schrieb Wojtek Wysocki <[email protected]>:
>> 
>>> Hi
>>> 
>>> I am the author of mentioned stackoverflow question (and BTW new to this 
>>> group)
>>> 
>>> I understand the need for labels to be fetched but how it is handled now is 
>>> just a show stopper for me.
>>> We are talking about tens of additional REST requests which increase method 
>>> run time significantly.
>>> 
>>> some questions
>>> - can labels be fetched with node data? I don't know why it is not so 
>>> already since labels are such crucial information for nodes. Is it 
>>> something we can expect to be implemented in future releases?
>>> - can this data be at least fetched in bulk for all nodes in returned list?
>>> side question
>>> - if this implementation is here to stay can I go back to previous 
>>> functionality where class name was stored in the node property without 
>>> going back to some previous releases?
>>> 
>>> Thanks
>>> Wojtek
>>> 
>>> On Thursday, March 6, 2014 4:36:15 PM UTC+1, Michael Hunger wrote:
>>>> 
>>>> Yep,
>>>> 
>>>> my question was how would you imagine it to be configured.
>>>> 
>>>> Michael
>>>> 
>>>> Am 06.03.2014 um 16:35 schrieb Gwendal Mousset <[email protected]>:
>>>> 
>>>>> Thanks Michael, 
>>>>> 
>>>>> I understand the need to check the label directly on db. I hadn't think 
>>>>> about inheritance.
>>>>> Do you think this check could became optional (with configuration) to 
>>>>> choose between fully operational inheritance and better performances ?
>>>>> 
>>>>> 
>>>>> Gwendal
>>>>> 
>>>>> On Thursday, March 6, 2014 4:13:51 PM UTC+1, Michael Hunger wrote:
>>>>>> 
>>>>>> Imagine you have a class hierarchy like Person and Developer
>>>>>> 
>>>>>> And you have a person repo but the nodes in the db are actually 
>>>>>> developers.
>>>>>> 
>>>>>> Then you would want to get the correct instances back (Developer) but 
>>>>>> requested target type is Person
>>>>>> 
>>>>>> How would you imagine to configure it so that it doesn't look what the 
>>>>>> node is in the graph but just takes the requested type?
>>>>>> 
>>>>>> 
>>>>>> Michael
>>>>>> 
>>>>>> Am 06.03.2014 um 15:54 schrieb Gwendal Mousset <[email protected]>:
>>>>>> 
>>>>>>> Hi everyone, 
>>>>>>> 
>>>>>>> I use neo4j 2.0.1 with rest api. 
>>>>>>> To obtain better performances in my webapp, I refactor my code by using 
>>>>>>> @QueryResult objects and do more "big" requests instead of many small 
>>>>>>> requests.
>>>>>>> But the logs show me than each time I get an object from the query 
>>>>>>> result, a request is sent:
>>>>>>> 
>>>>>>> 2014-03-06 15:15:43,208 - DEBUG: SpringRestCypherQueryEngine - 
>>>>>>> Executing remote cypher query: match (n) where id(n)={nodeId} return 
>>>>>>> labels(n) as labels params {nodeId=509}
>>>>>>> 
>>>>>>> This request only get the labels of a node, and it seems there is no 
>>>>>>> cache, the request can be sent several time for a same node.
>>>>>>> On a collection, dozens of requests are sent...
>>>>>>> 
>>>>>>> I seek in SDN code what are the reason, and i found 
>>>>>>> Neo4jEntityConverterImpl :
>>>>>>> 
>>>>>>> public <R extends T> R read(Class<R> requestedType, S source, 
>>>>>>> MappingPolicy mappingPolicy, final Neo4jTemplate template) {
>>>>>>>         // 1) source -> type alias
>>>>>>>         // 2) type alias -> type
>>>>>>>         // 3) check for subtype matching / enforcement
>>>>>>>         final TypeInformation<R> requestedTypeInformation = 
>>>>>>> requestedType == null ? null : ClassTypeInformation.from(requestedType);
>>>>>>>         final TypeInformation<? extends R> targetType = 
>>>>>>> typeMapper.readType(source, requestedTypeInformation); <-- causes get 
>>>>>>> labels request
>>>>>>> 
>>>>>>> ...... //
>>>>>>> }
>>>>>>> 
>>>>>>> If I correctly understand, this code determines which classes must be 
>>>>>>> instantiate. But what i don't understand is that 
>>>>>>> requestedTypeInformation and targetType have the same value.
>>>>>>> So would it be possible to bypass the db check and only take the 
>>>>>>> requestedTypeInformation value ?
>>>>>>> 
>>>>>>> I found a quite similar question on stakoverflow: 
>>>>>>> http://stackoverflow.com/questions/22209220/unnecessary-additional-label-requests-for-nodes
>>>>>>> 
>>>>>>> Thanks
>>>>>>> 
>>>>>>> -- 
>>>>>>> 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.
>>>>> 
>>>>> 
>>>>> -- 
>>>>> 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.
>>> 
>>> 
>>> -- 
>>> 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.
> 
> -- 
> 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.

-- 
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.

Reply via email to