Hello! You can do the update in the loop, until it is successful. This is the case with optimistic locking.
Regards, -- Ilya Kasnacheev 2018-07-19 18:10 GMT+03:00 wengyao04 <wengya...@gmail.com>: > Hi > we have questions about partial column updates from different clients. > > 1) We have a c++ client updates some meta-data columns, it uses > SqlFieldsQuery to do partial update. The update is not frequently. it > happens in several hours. > 2) We have a java client that frequently updates market data columns using > ivokeAsync to change value directly on server side, there can be millions > update per second > > Both of the client are single thread and we want the high throuput of java > client to update market data. > These two client won't update the same column for a given key. > > We try ATOMIC MODE one our dev cluster, but client using SqlFieldsQuery > throws exceptions like > Caused by: javax.cache.CacheException: Failed to update some keys because > they had been modified concurrently [keys=["ABCDEFG"]] > > We try to avoid using Lock to lock the cache key, and we don't want to > separate them to two cache because it will slow down our scan query. The > cache is also used for searching. > > Could we have some advices ? Thanks > > > > -- > Sent from: http://apache-ignite-users.70518.x6.nabble.com/ >