I am not sure I like the "asSet()" method. We already have Ignite.set(...) method and now introducing yet another one. The new design should fix the existing implementation. We cannot keep the broken implementation around and introduce yet another one. To be consistent, we should also stick to the IgniteSet abstraction.
Just to be clear, I am in agreement that a non-collocated set should be based on a cache, but I do not see why the existing API cannot be re-used. D. On Wed, Mar 14, 2018 at 1:26 PM, Andrey Kuznetsov <stku...@gmail.com> wrote: > Hi, Dmitry. > > The primary goal of the ticket is to implement {{IgniteCache::asSet}} view. > The rationale is introduced earlier in this talk by Vladimir O. I've also > mentioned the need to document that new method properly: it should be used > to create large sets. Existing {{IgniteSets}} are good to represent small > sets. > > 2018-03-14 20:05 GMT+03:00 Dmitry Pavlov <dpavlov....@gmail.com>: > > > Hi Pavel, > > > > I did not quite understand the purpose of the new collection and the > > purpose of introduced new set. > > > > Is ticket descriptoin states, that it is for better documentation? > > > > Can we improve the task description > > https://issues.apache.org/jira/browse/IGNITE-7823 ? > > > > Sincerely, > > Dmitriy Pavlov > > > > ср, 14 мар. 2018 г. в 12:31, Pavel Pereslegin <xxt...@gmail.com>: > > > > > Hello Igniters. > > > > > > I'm working on the implementation of the IgniteCache#asSet method [1] > > > and I think it should return Set (not IgniteSet). Because IgniteSet > > > was introduced mainly to add methods for the collocated version of > > > IgniteSet. > > > > > > Any thoughts? > > > > > > [1] https://issues.apache.org/jira/browse/IGNITE-7823 > > > > > > > > > 2018-02-27 14:59 GMT+03:00 Andrey Kuznetsov <stku...@gmail.com>: > > > > As far as I know, Pavel P. is working on fixing existing sets > > currently. > > > > > > > > As for {{asSet}} cache adapter, I filed the ticket [1]. > > > > > > > > [1] https://issues.apache.org/jira/browse/IGNITE-7823 > > > > > > > > 2018-02-27 11:20 GMT+03:00 Vladimir Ozerov <voze...@gridgain.com>: > > > > > > > >> I think the root issue is that we are trying to mix different cases > > in a > > > >> single solution. What is the common usage patterns of sets? > > > >> 1) Small mostly-read sets - current implementation is ideal for > them - > > > >> everything is available locally, on-heap and in deserialized form > > > >> 2) Big data sets - IgniteCache API is the best candidate here; we > can > > > >> simply add a method "Set<K> IgniteCache.asSet()" which will return > > thin > > > >> wrapper for Set interface around cache. An you will have recovery > and > > > >> heap-resistance with almost no additional efforts. > > > >> There is no need to choose between one or another solution. We can > > > support > > > >> both. > > > >> > > > >> As far as current igniteSet implementation - all issues described > > above > > > >> will go away if you use approach suggested by Dmitry. I do not see a > > > need > > > >> for any major changes. > > > >> > > > >> Vladimir. > > > >> > > > > > > > > -- > > > > Best regards, > > > > Andrey Kuznetsov. > > > > > > > > > -- > Best regards, > Andrey Kuznetsov. >