Re: Partition loss policy to disable cache completely

2018-01-25 Thread Yakov Zhdanov
No. This is not 100% consistent. Since operations started on prev version after node has left (but system has not got event yet) would succeed. For me consistent behavior is to throw exception for "select avg(x) from bla" if data is currently missing or any data loss occurs in the middle of the

Re: Partition loss policy to disable cache completely

2018-01-25 Thread Valentin Kulichenko
Yakov, My suggestion is to introduce new policy (e.g. READ_WRITE_NONE) which works in the same way as READ_WRITE_SAFE but for all partitions, not only lost ones. Any operation attempted on a topology version which has at least one lost partition, should throw an exception. Will this work? -Val

Re: Partition loss policy to disable cache completely

2018-01-23 Thread Yakov Zhdanov
I'm still not sure on what Val has suggested. Dmitry, Val, Do you have any concrete API/algorithm in mind? --Yakov

Re: Partition loss policy to disable cache completely

2018-01-23 Thread Dmitriy Setrakyan
Why not just add a new policy as Val suggested? ⁣D.​ On Jan 23, 2018, 4:44 PM, at 4:44 PM, Yakov Zhdanov wrote: >Val, your computation fails once it reaches the absent partition. Agree >with the point that any new computation should not start. Guys, any >ideas >on how to

Re: Partition loss policy to disable cache completely

2018-01-23 Thread Yakov Zhdanov
Val, your computation fails once it reaches the absent partition. Agree with the point that any new computation should not start. Guys, any ideas on how to achieve that? I would think of scan/sql query checking that there is no data loss on current topology version prior to start. Val, please note

Re: Partition loss policy to disable cache completely

2018-01-23 Thread Valentin Kulichenko
Yakov, I still think there are valid use cases. From the top of my head - what if one wants to iterate through multiple partitions and do some calculations? Locking and transactional semantics are not needed, but if some of the data is LOST, computation should fail, and new computations should

Re: Partition loss policy to disable cache completely

2018-01-23 Thread Yakov Zhdanov
Alex, I am against reducing cluster operation. I tried to explain in the prev email that it is impossible to have consistent approach here. You can prohibit operations only after exchange completes. However, in this case plenty of transactions are committed on previous cache topology having nodes

Re: Partition loss policy to disable cache completely

2018-01-23 Thread Alexey Goncharuk
Valentin, I am ok with having a policy which prohibits all cache operations, and this is not very hard to implement. Although, I agree with Yakov - I do not see any point in reducing cluster availability when operations can be safely completed. 2018-01-23 2:22 GMT+03:00 Yakov Zhdanov

Re: Partition loss policy to disable cache completely

2018-01-22 Thread Yakov Zhdanov
Val, Your suggestion to prohibit any cache operation on partition loss does not make sense to me. Why should I care about some partition during particular operation if I don't access it? Imagine I use data on nodes A and B performing reads and writes and node C crashes in the middle of tx. Should

Partition loss policy to disable cache completely

2018-01-17 Thread Valentin Kulichenko
Folks, Our PartitionLossPolicy allows to disable operations on lost partitions, however all available policies allow any operations on partitions that were not lost. It seems to me it can be very useful to also have a policy that completely blocks the cache in case of data loss. Is it possible to