@@ -243,7 +243,7 @@ public void addIndexers(Map<String, Function<R, List<String>>> indexers) {
243243 */
244244 @ Override
245245 public Stream <R > list (String namespace , Predicate <R > predicate ) {
246- return mergeWithTempCacheForList (manager ().list (namespace , predicate ), namespace , predicate );
246+ return mergeWithTempCacheForList (manager ().list (namespace ), namespace , predicate );
247247 }
248248
249249 /**
@@ -254,7 +254,7 @@ public Stream<R> list(String namespace, Predicate<R> predicate) {
254254 */
255255 @ Override
256256 public Stream <R > list (Predicate <R > predicate ) {
257- return mergeWithTempCacheForList (cache .list (predicate ), null , predicate );
257+ return mergeWithTempCacheForList (cache .list (), null , predicate );
258258 }
259259
260260 /**
@@ -282,14 +282,16 @@ public List<R> byIndex(String indexName, String indexKey) {
282282 .collect (Collectors .toList ());
283283 }
284284
285+ // namespace is filtered on informer manager level
285286 private Stream <R > mergeWithTempCacheForList (
286287 Stream <R > stream , String namespace , Predicate <R > predicate ) {
287288 if (!comparableResourceVersions || temporaryResourceCache .isEmpty ()) {
288- return stream .filter (filterResourceByNamespaceAndPredicate (namespace , predicate ));
289+
290+ return stream .filter (filterResourceByPredicate (predicate ));
289291 }
290292 var tempResources = new HashMap <>(temporaryResourceCache .getResources ());
291293 if (tempResources .isEmpty ()) {
292- return stream .filter (filterResourceByNamespaceAndPredicate ( namespace , predicate ));
294+ return stream .filter (filterResourceByPredicate ( predicate ));
293295 }
294296
295297 var upToDateList =
@@ -304,7 +306,8 @@ private Stream<R> mergeWithTempCacheForList(
304306 }
305307 return r ;
306308 })
307- .filter (filterResourceByNamespaceAndPredicate (namespace , predicate ))
309+ // we filter on predicate only since namespace changes would not be detected any ways.
310+ .filter (filterResourceByPredicate (predicate ))
308311 .toList ();
309312
310313 return Stream .concat (
@@ -352,6 +355,11 @@ private Stream<R> mergeWithTempCacheForIndex(
352355 upToDateList .stream ());
353356 }
354357
358+ private static <R extends HasMetadata > Predicate <R > filterResourceByPredicate (
359+ Predicate <R > predicate ) {
360+ return filterResourceByNamespaceAndPredicate (null , predicate );
361+ }
362+
355363 private static <R extends HasMetadata > Predicate <R > filterResourceByNamespaceAndPredicate (
356364 String namespace , Predicate <R > predicate ) {
357365 return r -> {
0 commit comments