Hi,
Yes, 31 days is indeed quite long.
Another workaround for some people might be to use the API (action=wbgetentties) instead. However, this was not so easy for me since my JavaScript application complains about the cross-site request here even though this action is only for reading and has no sensitive functionality (such as login). I am sure that there is some way around this, but I would have to look into it. I will use the purge for now.
Thanks,
Markus
On 29.02.2016 23:59, Stas Malyshev wrote:
Hi!
Output from Special:EntityData is cached for 31 days. Looking at the code, it seems we are not automatically purging the web caches when an entity is edited - please file a ticket for that. I think we originally decided against it for performance reasons (there are quite a few URLs to purge for every edit), but I suppose we should look into that again.
That would be nice. Right now I'm using cache-defeating URL to fetch data in WDQS because obviously getting 31-day old data is not good. But if data for Special:EntityData URLs would be purged on edit that could allow to simplify that part a bit and maybe also save some performance impact when running multiple WDQS instances.
You can force the cache to be purged by setting action=purge in the request. Note that this will purge all serializations of the entity, not just the one requested.
That also what would happen on edit, I assume.