← Back to team overview

dhis2-users team mailing list archive

Re: Standard iReports cache problem

 

Perhaps, but for this use case five minutes may not be enough. The point is
that this report should not be cached at all. How would you propose to
write a script to clean out these specific resources from the cache, and
leave everything else? Seems not so straightforward to me.

Considering it is rather trivial to implement this in nginx by creating a
different location which would not be cached, I am not convinced some
script to clean up the mess is such a good idea. It would seem some script
which would be triggered every X minutes would be quite un-eco-friendly,
when these resources should have never been cahced to begin with?

Perhaps the real fix would be to allow the report creators to specify
whether the report should be cached or not cached?




On Sun, Sep 15, 2013 at 5:14 PM, Bob Jolliffe <bobjolliffe@xxxxxxxxx> wrote:

> The nginx server in Rwanda is caching.
>
> Another approach might be to clear specific elements from the nginx cache,
> rather than to clear the entire cache, though this would require some
> communication between front end users and back end administrators which
> would probably be too cumbersome in practice.  I wonder if it could be
> possible to automate this ... ie iterate through all reports in the cache
> and remove them if that report has been updated in the database.  And run
> that every 5 minutes ...
>
>
>
>
> On 13 September 2013 14:45, Jason Pickering <jason.p.pickering@xxxxxxxxx>wrote:
>
>> Hi Lars,
>>
>> I am not sure that completely removing the cache would be required. As
>> Lars points out, it is very helpful to have it, so would try and avoid that
>> if all possible. Of course, if you have not enabled caching, this mail is a
>> bit pointless!
>>
>> I think one solution would be to cache everything, except the report
>> which you do not want to cache. This would require a bit more complex nginx
>> setup, but it should certainly be possible. You could simply define a
>> "location"  with a regular expression corresponding to the report URL, and
>> tell nginx not to cache it. Other reports, which could be cached,  might
>> have another location. You can see something like that in the implementation
>> docs<http://www.dhis2.org/doc/snapshot/en/implementer/html/ch08s03.html#d5e591>,
>> which specify two different strategies for caching different types of
>> resources.
>>
>> Not sure if it will work. Have not tried, but it might be worth a shot.
>>
>> Regards,
>> Jason
>>
>>
>>
>>
>>
>> On Fri, Sep 13, 2013 at 7:40 PM, Lars Helge Øverland <larshelge@xxxxxxxxx
>> > wrote:
>>
>>> Hi Randy,
>>>
>>> this might be caused by a web server cache, ie. nginx/apache caching
>>> content on the server. In that case it does not help to refresh the browser
>>> cache.
>>>
>>> These changes to your report will become available tomorrow morning.
>>> Caching for anlaytics/reports is controlled under system settings ->
>>> general -> cache strategy (assuming this is set to "6 am next morning").
>>>
>>>
>>> When developing reports this can be a bit inconvenient. This is a
>>> weakness with ireport and developing reports directly on the production
>>> server in general.
>>>
>>> Some "fixes":
>>>
>>> - Disable server side caching.
>>> - Disable caching in dhis.
>>> - Refresh cache on the server on demand.
>>>
>>> All of these are bad in the sense that it will make end-users wait
>>> longer for reports and the server to get increased load.
>>>
>>> cheers
>>>
>>> Lars
>>>
>>>
>>>
>>>
>>>
>>> On Fri, Sep 13, 2013 at 2:47 PM, Wilson,Randy <rwilson@xxxxxxx> wrote:
>>>
>>>>  We’re using a lot of new iReports in the Standard reports and they
>>>> seem to be working well, but there seems to be a serious caching problem.
>>>>  I have a report listing health facilities that I ran this morning, now
>>>> I’ve added 10 more facilities and they don’t appear in the list…. Though
>>>> they do appear in the iReport preview screen.  I’ve cleared my local cache
>>>> and even the cache statistics in Data Administration, but I can’t get the
>>>> new facilities to display.****
>>>>
>>>> ** **
>>>>
>>>> Any suggestions about how end users can force a cache refresh before
>>>> running the report?  It is critical that this report shows the most up-to
>>>> date information as we use it to determine the next health facility ID code
>>>> to assign when creating new organization units.****
>>>>
>>>> ** **
>>>>
>>>> *Randy Wilson*
>>>>
>>>> ** **
>>>>
>>>> _______________________________________________
>>>> Mailing list: https://launchpad.net/~dhis2-users
>>>> Post to     : dhis2-users@xxxxxxxxxxxxxxxxxxx
>>>> Unsubscribe : https://launchpad.net/~dhis2-users
>>>> More help   : https://help.launchpad.net/ListHelp
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~dhis2-users
>>> Post to     : dhis2-users@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~dhis2-users
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~dhis2-users
>> Post to     : dhis2-users@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~dhis2-users
>> More help   : https://help.launchpad.net/ListHelp
>>
>>
>

Follow ups

References