Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add putMulti and removeMulti to MultiMap and removeMulti to IMap #46

Closed
hazelcast opened this issue Mar 23, 2012 · 7 comments
Closed

Add putMulti and removeMulti to MultiMap and removeMulti to IMap #46

hazelcast opened this issue Mar 23, 2012 · 7 comments

Comments

@hazelcast
Copy link
Collaborator

I noticed that there aren't MultiMap.putAll, MultiMap.removeAll and IMap.removeAll in API. It will be great to have these abilities to increase performance of 'multi' operations (i.e. do it in a bulk). We really need them (especially for MultiMap).

Migrated from http://code.google.com/p/hazelcast/issues/detail?id=553


earlier comments

borislav.andruschuk said, at 2011-05-13T09:51:30.000Z:

and the same IMap/MultiMap -> evictAll please.

borislav.andruschuk said, at 2011-05-14T09:23:44.000Z:

I've noticed that IMap.localKeySet already returns Entries - the list of local map entries. I think it will be quite good to have IMap.getLocalEntries() in API. Actually I' seeking for good filtering API for local entries w/o predicate usage: could you please add IMap.getAllLocalValues(Set keys) or IMap.getAllLocalEntries(Set keys) because you can efficiently filter local entries in CMap.

hugo.zwaal said, at 2011-05-17T14:25:52.000Z:

I would also like to see a MultiMap.putMulti(K key, V values...) and a removeMulti()

@mdogan mdogan added this to the 3.x Backlog milestone May 28, 2014
ahmetmircik referenced this issue in ahmetmircik/hazelcast Jun 8, 2015
Add code samples for partition-lost-listener
@mdogan
Copy link
Contributor

mdogan commented Feb 16, 2017

By version 3.8, IMap has removeAll(Predicate<K, V> predicate);

 /**
     * Removes all entries which match with the supplied predicate.
     * If this map has index, matching entries will be found via index search, otherwise they will be found by full-scan.
     *
     * Note that calling this method also removes all entries from callers near cache.
     *
     * @param predicate matching entries with this predicate will be removed from this map
     * @throws NullPointerException if the specified predicate is null.
     */
    void removeAll(Predicate<K, V> predicate);

@burakcelebi burakcelebi added Priority: Low Source: Internal PR or issue was opened by an employee Source: Community PR or issue was opened by a community user and removed Source: Internal PR or issue was opened by an employee labels Dec 28, 2017
@burakcelebi
Copy link
Member

Related: #9079

@peterjot
Copy link
Contributor

Hey, I would like to take that issue

@Holmistr

@Holmistr
Copy link
Contributor

Hey @peterjot , that would be awesome. However, I see that some work is actually being done on #9079 in abdulazizali77@fa98e9b . Let me take a look tomorrow and coordinate, so you wouldn't both work on the same thing. I will get back to you! Thank you very much for you interest :)

@Holmistr
Copy link
Contributor

Holmistr commented Mar 2, 2020

Closing this issue, since it's basically a duplicate of #9079 (or subset)

@Holmistr Holmistr closed this as completed Mar 2, 2020
SeriyBg pushed a commit to SeriyBg/hazelcast that referenced this issue Jul 9, 2021
more refined logging when dns lookup fails
SeriyBg pushed a commit to SeriyBg/hazelcast that referenced this issue Jul 9, 2021
SeriyBg pushed a commit to SeriyBg/hazelcast that referenced this issue Jul 9, 2021
@c-attila
Copy link

Hi! Does anyone know why was this not implemented in the end?
We would need this feature in our project using Hazelcast 5 Enterprise. A QueryCache for MultiMaps would be also good.
FYI @burakcelebi, @hazelcast, @Holmistr
(see also #3840 and #9079 still open)

@Holmistr
Copy link
Contributor

@c-attila In general, we never got it prioritized enough. MultiMap is not the most used datastructure (it was way behind Map, Queue, Topic, ...) and we just had bigger fish to fry. I would suggest you to reach through the Hazelcast Support and make a case for your usecase.

Disclaimer: I no longer work at Hazelcast.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants