Option1: You can navigate to \biserver-ee\tomcat\webapps\pentaho\WEB-INF\classes and change the configuration file «ehcache.xml»
<cache name="report-dataset-cache" maxElementsInMemory="50" eternal="false" overflowToDisk="false" timeToIdleSeconds="1" timeToLiveSeconds="2" diskPersistent="false" diskExpiryThreadIntervalSeconds="1" />
If you have done that and still no positive answer, I think you have not restarted the BA server. If the issue still exists comment below.
Option2: I have had the same problem — I get data from a report via a mondrian cube but when the data in DB changes, it is not reflected in the report unless i logout and login again. (i have also set report-cache to false and also in the cube definition cache is set to false).
Here is how i fixed it.
1) in pentaho-solutions\system\mondrian\mondrian.properties» — set «mondrian.rolap.star.disableCaching=» to true
2) in tomcat\tomcat\webapps\pentaho\WEB-INF\classes\classic-engine.properties add the line — org.pentaho.reporting.engine.classic.core.cache.DataCache=
3) in tomcat\tomcat\webapps\pentaho\WEB-INF\classes\ehcache.xml for cache name «mondrian-catalog-cache» set timeToIdleSeconds and timeToLiveSeconds to a small value, say 5
What is interesting is that if i do steps 1 and 2 it works for some reports, and for some reports just step 3 suffices. So for now i have done all three steps.
I am not sure if this will work for you since this approach is based on trial and error rather an understanding of how ehcache works in in the pentaho+mondrian setup.
So while it works for me , there is not a good feeling of comfort that this is the way to do it. Hopefully someone from the pentaho team can throw some light on this.