Hi Jamie,
It is not so simple :-), if you will have concurrent update, you can severe
from data inconsistency problem, that is why business applications should
follow MVCC approach and
be able to handle concurrent modification exceptions.

One more question which I would like to as, is issue reproducible without
any problems.
I mean will I find issue if I run your code ?



On Fri, Jun 13, 2014 at 9:55 AM, Jamie <[email protected]> wrote:

> Thank you.
>
> Also, do you know why we have to apply all that garnish surrounding the
> setproperty.
>
> Surely, we should just be calling
>
>    vertex.setProperty(key, value);
>
> Without commit()...save(), and retries..etc. As a user, when I call
> setProperty() my expectation it should be set. I have no ideas, why orient
> requiries retries.\
>
> On Friday, June 13, 2014 8:32:15 AM UTC+2, Andrey Lomakin wrote:
>
>> Hi Jamie,
>> I am on it https://github.com/orientechnologies/orientdb/issues/2478
>>
>>
>> On Fri, Jun 13, 2014 at 9:23 AM, Jamie <[email protected]> wrote:
>>
>>> Hi
>>>
>>> I am using Orient 1.7.2 with Blueprints 2.5.0. When I call
>>>
>>> vertex.setProperty(key, value);
>>>
>>> where value is a  List<String>, the data goes missing. I cannot retrieve
>>> it again.
>>>
>>> More generally,  some users, that certain vertexes are missing from the
>>> db. We're still busy investigating...
>>>
>>> Here is our setProperty function:
>>>
>>>
>>> @Override
>>> public void setProperty(String key, Object value) {
>>> if (key!=null && value!=null) {
>>>   int attempt = 0;
>>>   while(attempt<Database.MAX_ATTEMPTS) {
>>>     try {
>>>     vertex.setProperty(key, value);
>>>     ((OrientVertex)vertex).getRecord().save();
>>> ((TransactionalGraph) database.getGraph()).commit();
>>>         break;
>>>     } catch(ONeedRetryException e) {
>>>     attempt++;
>>>     ((OrientVertex)vertex).getRecord().reload();
>>>     if (attempt==Database.MAX_ATTEMPTS) {
>>> logger.debug("cant save property to vertex and commit to db: "
>>> +e.getMessage());
>>>     }
>>>     }
>>>   }
>>> }
>>> }
>>>
>>>
>>> @Override
>>>> public Object getProperty(String key) {
>>>> return vertex.getProperty(key);
>>>> }
>>>
>>>
>>
>>
>>
>> --
>> 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.
>



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