[
https://issues.apache.org/jira/browse/IGNITE-2263?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15075101#comment-15075101
]
Vladimir Ozerov commented on IGNITE-2263:
-----------------------------------------
I almost fully reworked GridFunc. Removed lots of unused methods, fixed dozens
of vararg problems. After that it is evident that we have 3 problematic "view"
methods accepting predicate:
1) view(@Nullable final Collection<T> c, final IgnitePredicate<? super T> p) -
64 usages
2) view(@Nullable final Map<K, V> m, final IgnitePredicate<? super K> p) - 2
usages
3) viewReadOnly(@Nullable final Collection<? extends T1> c, final
IgniteClosure<? super T1, T2> trans, @Nullable final IgnitePredicate<? super
T1> p) - 17 usages
The main problem here is that isEmpty(), size() and contains() always require
full iteration over collection. We need to carefully review all these usages.
The rest 3 "view" methods just create wrapper collection with attached
transformer. I do not think they could hurt us anyhow - these are just
convenient shortcuts.
> Get rid of wrapping views where possible.
> -----------------------------------------
>
> Key: IGNITE-2263
> URL: https://issues.apache.org/jira/browse/IGNITE-2263
> Project: Ignite
> Issue Type: Sub-task
> Components: general
> Affects Versions: ignite-1.4
> Reporter: Vladimir Ozerov
> Assignee: Vladimir Ozerov
> Priority: Critical
> Fix For: 1.6
>
>
> We have about ~50-100 usages of things like F.view or F.viewReadOnly. In lots
> cases it is not necessary, adds garbage, but doesn't add any value.
> Need to revisit these places.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)