Ok! Thank you for your answer!

Regards

On Friday, March 7, 2014 5:22:25 PM UTC+1, Andrey Lomakin wrote:
>
> Hi,
> That is current disadvantage of remote storage but we will fix it 
> https://github.com/orientechnologies/orientdb/issues/1894<https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2Forientechnologies%2Forientdb%2Fissues%2F1894&sa=D&sntz=1&usg=AFQjCNFOswse4xl3Bc3qu068Y3Q-XXGOfw>
>
>
> On Fri, Mar 7, 2014 at 4:59 PM, Emanuele Milani 
> <[email protected]<javascript:>
> > wrote:
>
>> Dear all,
>>
>> This same message is posted on both the OrientDB and Gremlin-users 
>> groups, as I do not know whether this issue is related to Blueprints or 
>> OrientDB.
>> For quite some time I have been using KeyIndexes (as in 
>> KeyIndexableGraph) with an embedded (database url starting with (p)local:) 
>> OrientDB instance.
>> When moving to an external OrientDB server (database url starting with 
>> remote:...), it turned out that indexes are not updated on setProperty 
>> invocations until a commit is issued.
>> As a result, queries for key/property pairs which are inserted after the 
>> last commit do not return any vertex.
>> This behavior is not consistent with the embedded case, where properties 
>> can be queried just after insertion.
>>
>> Please find attached a code snippet which demonstrates the issue.
>>
>> String dbURL = "remote:HOSTNAME/exampleDB";
>> String storageEngine = "plocal";
>> String dbUser = "admin";
>> String dbPassword = "admin";
>>
>> String indexedPropertyName = "foo";
>> String indexedPropertyValue = "123";
>> String nonIndexedPropertyName = "bar";
>> String nonIndexedPropertyValue = "blue";
>>
>>
>> OServerAdmin adminTool = new OServerAdmin(dbURL).connect(dbUser,dbPassword
>> );
>> if (adminTool.existsDatabase(storageEngine)){
>> System.out.println("Dropping db " + dbURL);
>> adminTool.dropDatabase(storageEngine);
>> System.out.println("Dropped " + dbURL);
>> }
>> adminTool.createDatabase(dbURL, storageEngine);
>> adminTool.close();
>>
>> OrientGraph g = new OrientGraph(dbURL);
>>
>> g.createKeyIndex(indexedPropertyName, Vertex.class);
>>
>> Vertex v = g.addVertex(null);
>> v.setProperty(indexedPropertyName, indexedPropertyValue);
>> v.setProperty(nonIndexedPropertyName, nonIndexedPropertyValue);
>>
>> if (g.getVertex(v.getId()) != null) {
>> System.out.println("v can be retrieved by Id.");
>> }
>>
>> if (g.getVertices(nonIndexedPropertyName, nonIndexedPropertyValue).
>> iterator().hasNext()) {
>> System.out.println("v can be retrieved by non indexed property/value 
>> pair.");
>> }
>>
>> if (!g.getVertices(indexedPropertyName,indexedPropertyValue).iterator().
>> hasNext()) {
>> System.out.println("v cannot be retrieved by indexed property/value 
>> pair.");
>> }
>>
>> g.commit();
>>
>> if (g.getVertices(indexedPropertyName,indexedPropertyValue).iterator().
>> hasNext()) {
>> System.out.println("v can be retrieved by indexed property/value pair 
>> AFTER commit.");
>> }
>>
>> The output of this code is:
>> Dropping db remote:HOSTNAME/exampleDB
>> Dropped remote:HOSTNAME/exampleDB
>> v can be retrieved by Id.
>> v can be retrieved by non indexed property/value pair.
>> v cannot be retrieved by indexed property/value pair.
>> v can be retrieved by indexed property/value pair AFTER commit.
>>
>> Could you suggest a way to fix this issue?
>> The software in use is Tinkerpop 2.5 (latest snapshot) and OrientDB 1.6.3 
>> . Running against 1.6.4 or 1.7-rc1 did produce the same output.
>>
>> Thanks and best regards.
>>  
>> -- 
>>
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "OrientDB" 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/d/optout.
>>
>
>
>
> -- 
> Best regards,
> Andrey Lomakin.
>
> Orient Technologies
> the Company behind OrientDB
>
>  

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"OrientDB" 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