Lets say,we have xml's cached under the folder as /<docroot-cache>/content/myapp/us/ ->en.child1.xml ->en.child2.xml ->en.child99.xml ->en.child100.xml ->en.html ->en.model.json
I need to provide selector based caching, that is to flush en.child1.xml only and should not flush en.child2.xml or other xml's when the request for flush happens for /content/myapp/us/en.child1.xml I've tried dispatcher flush invalidation through HTTP call like below- GET http://mydispatcher/dispatcher/invalidate.cache Headers CQ-Action Activate CQ-Handle /content/myapp/us/en.child1.xml Content-Type Application/xml
But,all files under "us" folder(i.e. all selector for en page) gets invalidated, how to just invalidate "en.child1.xml" please suggest
Dispatcher creates .stat files in each folder from the docroot folder down to the level that you specify. The docroot folder is level 0. When an invalidation request comes in, it will clear that resource and its parent folder to which statfileslevel is set to.
What is your /statfileslevel property in dispatcher config set to ?
Not sure if you can do that using below command because if
The HTTP request has the following form:
POST /dispatcher/invalidate.cache HTTP/1.1
Dispatcher flushes (deletes) the cached files and folders that have names that match the value of the CQ-Handler header. For example, a CQ-Handle of /content/geomtrixx-outdoors/en matches the following items:
All files (of any file extension) named en in the geometrixx-outdoors directory
Any directory named " _jcr_content " below the en directory (which, if it exists, contains cached renderings of sub-nodes of the page)