> Hi, > > I have installed Slide (1.0.14) with Tomcat 4.0 & configured it to use > mysql (3.23/mm-mysql-2.0.4) with a file system content store. This seems > to work fine while all access is via webdav (i.e. webdav servlet). > > The problem I have is that I am using one of the Slide api sample files > (version.java) to create some arbitrary folders using the same store > (same domain.xml file). This works OK, but after the new folders have > been created, when I go back to my webdav client (or browser) & do a > refresh, the new folders dont appear unless I stop/restart the Tomcat > server - after which a PROPFIND or GET returns the new info OK. > > It appears the servlet is caching the info, but I cant see how/where. > Now if I force a GET explicitly on the new folder URI (which is OK), it > will then appear in any subsequent responses to PROPFIND or GET requests > for the parent - seems like this forces a 'cache' refresh. > > Is this supposed to work like this? Is this a Slide thing or maybe mysql > related?
If the two applications (here, your application, and the webdav servlet) are not in the same VM, then it's (unfortunately) normal with the current architecture. The cache is located in the layer just above mySQL, but never attempts to revalidate its entries, unless it has a good reason to do so (for example, if you modify something through the API). This was the only easy way to get decent performance, since PROPFINDs are extremely hard on the backend (you can check the number of operations required when doing one on a large resource set). I have a lot of ideas to help solve these problems, but this will take some time. The easiest way to avoid the problem would be to repackage a bit the application. Either: - write a custom loader for Tomcat and your application to be able to run them in the same VM - use a controller servlet to run your application Remy
