Dispatcher 'evicted' cache items | Community
Skip to main content
Level 2
January 28, 2022
Solved

Dispatcher 'evicted' cache items

  • January 28, 2022
  • 2 replies
  • 3012 views

Hello everyone! We have been having stale cache issues with dispatcher. When looking at the dispatcher.log we noticed that several `evicted` messages in the below format. There is no documentation available on the eviction strategy of dispatcher. Available cache size on File System is abundant.

[Tue Jan 25 10:54:02 2022] [I] [pid 5754 (tid 140051694446336)] Touched /opt/aemDispatcher/cache/content/news/en/local/k/2022/1/25/.stat
[Tue Jan 25 10:54:02 2022] [I] [pid 5754 (tid 140051694446336)] Evicted /opt/aemDispatcher/cache/content/news/en/local/k/2022/1/25/article.html
[Tue Jan 25 10:54:02 2022] [I] [pid 5754 (tid 140051694446336)] Evicted /opt/aemDispatcher/cache/content/news/en/local/k/2022/1/25/article.lts.json.h
--
--
[Tue Jan 25 13:52:20 2022] [I] [pid 32190 (tid 140051677660928)] Touched /opt/aemDispatcher/cache/content/news/en/local/k/2022/1/25/.stat
[Tue Jan 25 13:52:20 2022] [I] [pid 32190 (tid 140051677660928)] Evicted /opt/aemDispatcher/cache/content/news/en/local/k/2022/1/25/article.html

Could anyone please share insights on this eviction model and if it can be configured not to evict?

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by joerghoh

Are you able to have a look at the dispatcher source and tell us what are the rules for this behaviour? The dispatcher is like black-box no one seem to want to look at its source.

I have a similar question right now I have stat level set at 4 and flush event at level 6 touches all the way to and including level 5 but evicts level 6... magic!


The documentation states:

 

Dispatcher creates .statfiles in each folder from the docroot folder to the level that you specify. The docroot folder is level 0.

 

/content =statfileslevel 0

/content/foo =statfileslevel 1

/content/foo/bar = statfileslevel 2

2 replies

Anish-Sinha
Adobe Employee
Adobe Employee
January 28, 2022

Hi @aem6545871 ,

There are less documentation present on eviction process of dispatcher, but Evicted meaning, these files are getting pushed out due to space crunch. Dispatcher clears out the old and unused files replacing with new content in cache. Since you said there are lot of space present in file system, can you try checking if the space is properly allocated and available where the cache is being created?

Level 2
January 28, 2022

The timing definition of old in our case seems to be very short. We have continuous traffic to those articles yet they are getting evicted. 95% of disk space is available in cache root folder.

joerghoh
Adobe Employee
Adobe Employee
January 28, 2022

This message is logged, if a cache invalidation causes files to be removed. I wonder why this is logged on INFO at all ...

Level 2
January 29, 2022

In that case, we are not seeing evicted message logged for every invalidation request sent to dispatcher from the publish instance. My understanding is that a cache invalidation triggered by resource activation will only touch the stat file. Under what circumstances a cache invalidation will/will not evict?

This message is logged on DEBUG.

On activation, below is an example snippet of what is currently logged in dispatcher.log:

[Wed Jan 26 09:30:16 2022] [D] [pid 5634 (tid 140051644090112)] checking [/invalidation_only/dispatcher/invalidate.cache]
[Wed Jan 26 09:30:16 2022] [I] [pid 5634 (tid 140051644090112)] Activation detected: action=Activate [/content/dam/news/en/local/r/content-fragments/articles/2022/1/25/blah]
[Wed Jan 26 09:30:16 2022] [I] [pid 5634 (tid 140051644090112)] Touched /opt/aemDispatcher/cache/.stat

 

joerghoh
Adobe Employee
Adobe Employee
January 29, 2022

I am not absolutely familiar with the diispatcher, but this message is written on INFO level (as indicated by the "[I]" in the log message.

I could imagine that it is only sent on certain types of activation, e.g. "delete".

 

Anyway, I would recommend you to raise a support ticket and ask for an extension of the existing documentation to cover this message as well.