code: @Override
      public boolean retainAll(Collection<?> c) {
  
          synchronized (partitions) {
              boolean b = getPartitions().retainAll(c);
              updateCache();
              return b;
          }
      }
docs: Retains only the elements in this {@link Partitions} that are contained in the specified collection (optional
  operation)and update the read-view/caches. In other words, removes from this collection all of its elements that are not
  contained in the specified collection.
  
  @param c must not be {@literal null}
  @return {@literal true} if this {@link Partitions} changed as a result of the call