Disable application level caching

Hi Team,

We are assuming that there is some application level caching happening. Users permissions, upon change does not reflect right away in the app. It takes some time to reflect. Some other api calls also take time to reflect.

Is our assumption correct on application level caching. If it is then how do we disable it if we want to. Please let us know.

Thanks and Regards,

Sultan Ahamar.

Hi Sultan,

you can disable second level hibernate caching in the system only by modifying the source code. However that is not recommendable as it will act differently in production.

Can you try to reproduce when things are not being updated and tell us the exact steps? We will try to fix. It is not supposed to be that way since Hibernate should invalidate its caches when stale.

regards,

Lars

···

On Thu, Apr 14, 2016 at 2:33 PM, Sultanahamar Mohammad sultanm@thoughtworks.com wrote:

Hi Team,

We are assuming that there is some application level caching happening. Users permissions, upon change does not reflect right away in the app. It takes some time to reflect. Some other api calls also take time to reflect.

Is our assumption correct on application level caching. If it is then how do we disable it if we want to. Please let us know.

Thanks and Regards,

Sultan Ahamar.

Lars Helge Øverland

Lead developer, DHIS 2

University of Oslo

Skype: larshelgeoverland

http://www.dhis2.org

Hi Lars,

we have seen good number of these caching issues, they might be some miss from our end. we will send you a doc soon.

Thanks and Regards,

Sultan Ahamar

···

On Fri, Apr 15, 2016 at 6:44 PM, Lars Helge Øverland lars@dhis2.org wrote:

Hi Sultan,

you can disable second level hibernate caching in the system only by modifying the source code. However that is not recommendable as it will act differently in production.

Can you try to reproduce when things are not being updated and tell us the exact steps? We will try to fix. It is not supposed to be that way since Hibernate should invalidate its caches when stale.

regards,

Lars

On Thu, Apr 14, 2016 at 2:33 PM, Sultanahamar Mohammad sultanm@thoughtworks.com wrote:

Hi Team,

We are assuming that there is some application level caching happening. Users permissions, upon change does not reflect right away in the app. It takes some time to reflect. Some other api calls also take time to reflect.

Is our assumption correct on application level caching. If it is then how do we disable it if we want to. Please let us know.

Thanks and Regards,

Sultan Ahamar.

Lars Helge Øverland

Lead developer, DHIS 2

University of Oslo

Skype: larshelgeoverland

http://www.dhis2.org

Thanks, sounds good.

···

On Fri, Apr 15, 2016 at 6:44 PM, Lars Helge Øverland lars@dhis2.org wrote:

Hi Sultan,

you can disable second level hibernate caching in the system only by modifying the source code. However that is not recommendable as it will act differently in production.

Can you try to reproduce when things are not being updated and tell us the exact steps? We will try to fix. It is not supposed to be that way since Hibernate should invalidate its caches when stale.

regards,

Lars

On Thu, Apr 14, 2016 at 2:33 PM, Sultanahamar Mohammad sultanm@thoughtworks.com wrote:

Hi Team,

We are assuming that there is some application level caching happening. Users permissions, upon change does not reflect right away in the app. It takes some time to reflect. Some other api calls also take time to reflect.

Is our assumption correct on application level caching. If it is then how do we disable it if we want to. Please let us know.

Thanks and Regards,

Sultan Ahamar.

Lars Helge Øverland

Lead developer, DHIS 2

University of Oslo

Skype: larshelgeoverland

http://www.dhis2.org

Are these modifications happening through the web-api? or one of our old apps? we don’t clear cache for most endpoints, so depending on what you are doing… you might end up with a bit of funky metadata (owning side will be correct, but inverse side might be out of date)

···

On Sat, Apr 16, 2016 at 9:35 PM, Lars Helge Øverland lars@dhis2.org wrote:

Thanks, sounds good.

On Apr 16, 2016 6:28 AM, “Sultanahamar Mohammad” sultanm@thoughtworks.com wrote:

Hi Lars,

we have seen good number of these caching issues, they might be some miss from our end. we will send you a doc soon.

Thanks and Regards,

Sultan Ahamar

Morten Olav Hansen

Senior Engineer, DHIS 2

University of Oslo

http://www.dhis2.org

On Fri, Apr 15, 2016 at 6:44 PM, Lars Helge Øverland lars@dhis2.org wrote:

Hi Sultan,

you can disable second level hibernate caching in the system only by modifying the source code. However that is not recommendable as it will act differently in production.

Can you try to reproduce when things are not being updated and tell us the exact steps? We will try to fix. It is not supposed to be that way since Hibernate should invalidate its caches when stale.

regards,

Lars

On Thu, Apr 14, 2016 at 2:33 PM, Sultanahamar Mohammad sultanm@thoughtworks.com wrote:

Hi Team,

We are assuming that there is some application level caching happening. Users permissions, upon change does not reflect right away in the app. It takes some time to reflect. Some other api calls also take time to reflect.

Is our assumption correct on application level caching. If it is then how do we disable it if we want to. Please let us know.

Thanks and Regards,

Sultan Ahamar.

Lars Helge Øverland

Lead developer, DHIS 2

University of Oslo

Skype: larshelgeoverland

http://www.dhis2.org

Hi Team,

These are the cases that we have come across so far.

Caching issues

Case 1:

A new program doesn’t show up on Event capture /tracker capture apps even after assigning it to a user role & org. units

Case 2:

Admin edits a user by changing the user’s org. unit.

Log out and log in with the new user

The org. Unit tree remains same / doesn’t reflect new changes

Case 3:

Modifying data set sections (esp. Assigning or removing data elements) does not show up on the data entry form immediately.

Case 4:

Adding new category combinations to data elements does not show up on data entry module

Case 4:

Adding custom data forms for data entry module/ event / tracker capture.

Case 5:

Customizing DHIS by applying custom CSS/JS files

Case 6:

Caching of dashboards & modification of charts present on dashboards

Case 7:

Right after importing metadata into an instance.

Case 8:

Loading the form name of a data element after editing it.

Case 9:

Assigning new authority or revoking any authority does not reflect immediately.

Regards,

Sultan Ahamar

···

On Sat, Apr 16, 2016 at 9:28 PM, Morten Olav Hansen morten@dhis2.org wrote:

Are these modifications happening through the web-api? or one of our old apps? we don’t clear cache for most endpoints, so depending on what you are doing… you might end up with a bit of funky metadata (owning side will be correct, but inverse side might be out of date)

Morten Olav Hansen

Senior Engineer, DHIS 2

University of Oslo

http://www.dhis2.org

On Sat, Apr 16, 2016 at 9:35 PM, Lars Helge Øverland lars@dhis2.org wrote:

Thanks, sounds good.

On Apr 16, 2016 6:28 AM, “Sultanahamar Mohammad” sultanm@thoughtworks.com wrote:

Hi Lars,

we have seen good number of these caching issues, they might be some miss from our end. we will send you a doc soon.

Thanks and Regards,

Sultan Ahamar

On Fri, Apr 15, 2016 at 6:44 PM, Lars Helge Øverland lars@dhis2.org wrote:

Hi Sultan,

you can disable second level hibernate caching in the system only by modifying the source code. However that is not recommendable as it will act differently in production.

Can you try to reproduce when things are not being updated and tell us the exact steps? We will try to fix. It is not supposed to be that way since Hibernate should invalidate its caches when stale.

regards,

Lars

On Thu, Apr 14, 2016 at 2:33 PM, Sultanahamar Mohammad sultanm@thoughtworks.com wrote:

Hi Team,

We are assuming that there is some application level caching happening. Users permissions, upon change does not reflect right away in the app. It takes some time to reflect. Some other api calls also take time to reflect.

Is our assumption correct on application level caching. If it is then how do we disable it if we want to. Please let us know.

Thanks and Regards,

Sultan Ahamar.

Lars Helge Øverland

Lead developer, DHIS 2

University of Oslo

Skype: larshelgeoverland

http://www.dhis2.org

Hi Team,

Did we get chance to look into these issues.

Regards,

Sultan Ahamar.

···

On Mon, Apr 18, 2016 at 12:16 PM, Sultanahamar Mohammad sultanm@thoughtworks.com wrote:

Hi Team,

These are the cases that we have come across so far.

Caching issues

Case 1:

A new program doesn’t show up on Event capture /tracker capture apps even after assigning it to a user role & org. units

Case 2:

Admin edits a user by changing the user’s org. unit.

Log out and log in with the new user

The org. Unit tree remains same / doesn’t reflect new changes

Case 3:

Modifying data set sections (esp. Assigning or removing data elements) does not show up on the data entry form immediately.

Case 4:

Adding new category combinations to data elements does not show up on data entry module

Case 4:

Adding custom data forms for data entry module/ event / tracker capture.

Case 5:

Customizing DHIS by applying custom CSS/JS files

Case 6:

Caching of dashboards & modification of charts present on dashboards

Case 7:

Right after importing metadata into an instance.

Case 8:

Loading the form name of a data element after editing it.

Case 9:

Assigning new authority or revoking any authority does not reflect immediately.

Regards,

Sultan Ahamar

On Sat, Apr 16, 2016 at 9:28 PM, Morten Olav Hansen morten@dhis2.org wrote:

Are these modifications happening through the web-api? or one of our old apps? we don’t clear cache for most endpoints, so depending on what you are doing… you might end up with a bit of funky metadata (owning side will be correct, but inverse side might be out of date)

Morten Olav Hansen

Senior Engineer, DHIS 2

University of Oslo

http://www.dhis2.org

On Sat, Apr 16, 2016 at 9:35 PM, Lars Helge Øverland lars@dhis2.org wrote:

Thanks, sounds good.

On Apr 16, 2016 6:28 AM, “Sultanahamar Mohammad” sultanm@thoughtworks.com wrote:

Hi Lars,

we have seen good number of these caching issues, they might be some miss from our end. we will send you a doc soon.

Thanks and Regards,

Sultan Ahamar

On Fri, Apr 15, 2016 at 6:44 PM, Lars Helge Øverland lars@dhis2.org wrote:

Hi Sultan,

you can disable second level hibernate caching in the system only by modifying the source code. However that is not recommendable as it will act differently in production.

Can you try to reproduce when things are not being updated and tell us the exact steps? We will try to fix. It is not supposed to be that way since Hibernate should invalidate its caches when stale.

regards,

Lars

On Thu, Apr 14, 2016 at 2:33 PM, Sultanahamar Mohammad sultanm@thoughtworks.com wrote:

Hi Team,

We are assuming that there is some application level caching happening. Users permissions, upon change does not reflect right away in the app. It takes some time to reflect. Some other api calls also take time to reflect.

Is our assumption correct on application level caching. If it is then how do we disable it if we want to. Please let us know.

Thanks and Regards,

Sultan Ahamar.

Lars Helge Øverland

Lead developer, DHIS 2

University of Oslo

Skype: larshelgeoverland

http://www.dhis2.org