Index: trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 19270)
+++ trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 19271)
@@ -1250,5 +1250,11 @@
 
     private void resetTiles(Collection<? extends IPrimitive> primitives) {
-        if (primitives.size() >= this.data.allNonDeletedCompletePrimitives().size() || primitives.size() > 100) {
+        // Clear the cache if we aren't using tiles. And return.
+        if (!MapRendererFactory.getInstance().isMapRendererActive(StyledTiledMapRenderer.class)) {
+            this.cache.clear();
+            return;
+        }
+        // Don't use anything that uses filtered collections. It becomes slow at large datasets.
+        if (primitives.size() > 100) {
             dirtyAll();
             return;
