Bugs found in DHIS2 Application

    • Unable to create more than one orgunit. The organisation unit after created is not reflecting on UI. Existing orgunits also not showing in maintenance app.
    • Unable to edit existing entities (org. units) - UI issue - maintenance app
    • Delete category option, maintenance app continuously reloads. See below in server log org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [org.hisp.dhis.dataelement.DataElementCategoryOptionCombo#116]
    • Error while clicking on Edit Program Stage page. Press cancel and exception is thrown.
    • Options sets have a value type - and when assigned to a custom attribute - should take the value type as the value type of option set. But, this is not happenening.
    • Translations behaving wierd. If we add a translation to a dataelement and then updating while updating it is blanked out.
  • Custom attributes - even if made mandatory and assigned to data element - the mandatory sign doesn’t appear and hence gets created without even giving the attribute value.
    • Traker capture is not working, The application is not showing up. It is throwing 404 error
···

Hi,

As trunk is the development branch of DHIS2, the presence of bugs is to be expected. In particular this last week we’ve had a few major ones which has caused a range of breaking issues in the Maintenance app (among others).

That said, I’ve gone through your list. Some of the items I can reproduce (and we are intending to fix them/they are currently being fixed), whilst for other we require more information and an accurate scenario that we could use to reproduce the issue.

The following items I cannot reproduce in the current version of trunk:

The following are confirmed bugs (currently being worked on):

The following has been fixed:

A few points:

For the Maintenance app we’re currently fixing a range of issues and the current version is not really in a testable state. You’ve touched upon a few aspects such as UI bugs and translations displaying undesirable behaviour. These are expected to be fixed for release. In general: for UI bugs with attributes not showing up and so forth you at the current time have to reload the page for the maintenance app to update the models internally. This is being worked on.

The importer issues you are having are with the “old” importer which is being phased out. The new one is available on api/24/ and should be used going forwared. That said, the conflict you are describing is actually the expected behaviour (we agree that it is not ideal). I believe Morten talked about this in a separate email recently.

For the items I have not commented on (and the ones I cannot reproduce) I ask you to do the following:

  • Create a reproducible test case on https://play.dhis2.org/dev (or on demo, after 2.24 release)
  • Describe the test case in detailed steps so we can easily recreate the issue
  • Describe the issue clearly.
  • Provide any server log stack traces/errors or console errors IN FULL
  • Register each confirmed issuse as a single bug report on launchpad (or as a github issue for Maintenance). Consolidating them into a single list like this makes the bugs a bit harder to track.
    I’ve added this conversation to the dhis2-devs list.

Thanks!

---------- Forwarded message ----------
From: Nalinikanth Meesala nalinim@thoughtworks.com
Date: Thu, Jun 23, 2016 at 2:31 PM
Subject: Bugs found in DHIS2 Application
To: Lars Helge Øverland lars@dhis2.org, Morten Olav Hansen morten@dhis2.org
Cc: Theo Krommydakis theo.krommydakis@london.msf.org, twoca twoca@thoughtworks.com, dhis2-devs dhis2-devs@lists.launchpad.net

Hi Lars & Morten,

I am working for MSF-OCA project from ThoughtWorks. As you are aware that we are building a metadata synchronisation. We had a bug bash recently and below are the bugs we found in new importer. We did the bug bash on trunk below are the bugs we found on DHIS2 application.

  • Unable to create more than one orgunit. The organisation unit after created is not reflecting on UI. Existing orgunits also not showing in maintenance app.
  • Unable to edit existing entities (org. units) - UI issue - maintenance app
  • Error while clicking on Edit Program Stage page. Press cancel and exception is thrown.
  • Validation rule passes even if left side & right side are not same (e.g. if one of the sides is a string value & the other a number)
  • Options sets have a value type - and when assigned to a custom attribute - should take the value type as the value type of option set. But, this is not happenening.
  • Custom attributes - even if made mandatory and assigned to data element - the mandatory sign doesn’t appear and hence gets created without even giving the attribute value.
  • Delete category option, maintenance app continuously reloads. See below in server log

org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [org.hisp.dhis.dataelement.DataElementCategoryOptionCombo#116]

  • Translations behaving wierd. If we add a translation to a dataelement and then updating while updating it is blanked out.
  • Traker capture is not working, The application is not showing up. It is throwing 404 error
  • Program without registration having coc is not showing the register event button in event capture app.
  • Program which is not assigned to any user is showing in the event capture.
  • updation of translation of dataelement which is not happening, value gets cleared upon updation at HQ itself. However it works fine for Data Set
  • When data sync if conflict is there that updating lastsync success and treating as success case.
  • INFO 2016-06-21 13:10:01,991 Synch summary: ImportSummary{status=SUCCESS, description=‘Import process completed successfully’, importCount=[imports=0, updates=0, ignores=6], conflicts=[ImportConflict{object=‘WgrfUKa76kB’, value=‘Organisation unit not in hierarchy of current user: admin’}], dataSetComplete=‘false’, reference=‘null’, href=‘null’} (DefaultSynchronizationManager.java [taskScheduler-7])
  • INFO 2016-06-21 13:10:01,995 Synch successful, setting last success time: Tue Jun 21 13:10:01 IST 2016 (DefaultSynchronizationManager.java [taskScheduler-7])
  • Analytics Export is failing with NPE. ‘system-process’

create org.hisp.dhis.message.MessageConversation, name: Analytics table process failed, uid: YPNhmywHZlk (AuditLogUtil.java [taskScheduler-1])

  • ERROR 2016-06-21 14:37:16,999 Unexpected error occurred in scheduled task. (TaskUtils.java [taskScheduler-1]) java.lang.NullPointerException at org.hisp.dhis.resourcetable.table.DataSetOrganisationUnitCategoryResourceTable.getPopulateTempTableContent(DataSetOrganisationUnitCategoryResourceTable.java:96)"

Thanks & Regards,

Nalinikanth M

Quality Analyst

Email
nalinim@thoughtworks.com
Telephone
+91 9052234588
ThoughtWorks

Lars Helge Øverland

Lead developer, DHIS 2

University of Oslo

Skype: larshelgeoverland

lars@dhis2.org

http://www.dhis2.org


Halvdan Hoem Grelland

Software developer, DHIS 2

University of Oslo

http://www.dhis2.org

Hi Halvdan

···

Thanks for the response. We are also testing the new importer functionality . We have built metadata synchronisation which is leveraging the new importer that got introduced in 2.23.

Apart from that, yes you are right and we understand that trunk can be OK volatile state. But we still wanted to share the issues in case they could have been of any help.

Two issues for which I can provide clarification are :

When the data sync task runs and due to some reason the data import is ignored due to conflict. Example the user being used to sync the data is not assigned to the org unit for which the data is getting synced . This results in import conflicts. The bug here is, the overall Importstatus is success while the individual data values show conflict and are ignored. This results in the ‘lastsuccessdate’ getting updated in the db. This is wrong. This ways the data that actually failed will never be retried .

Secondly, last week on Friday when we were trying to run the analytics export, we were getting a npe.

Hope this helps !

Regards

Vanya

Sent from my iPhone

On 24-Jun-2016, at 8:19 PM, Halvdan Hoem Grelland halvdan@dhis2.org wrote:

Hi,

As trunk is the development branch of DHIS2, the presence of bugs is to be expected. In particular this last week we’ve had a few major ones which has caused a range of breaking issues in the Maintenance app (among others).

That said, I’ve gone through your list. Some of the items I can reproduce (and we are intending to fix them/they are currently being fixed), whilst for other we require more information and an accurate scenario that we could use to reproduce the issue.

The following items I cannot reproduce in the current version of trunk:

    • Unable to create more than one orgunit. The organisation unit after created is not reflecting on UI. Existing orgunits also not showing in maintenance app.
    • Unable to edit existing entities (org. units) - UI issue - maintenance app
    • Delete category option, maintenance app continuously reloads. See below in server log org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [org.hisp.dhis.dataelement.DataElementCategoryOptionCombo#116]
    • Error while clicking on Edit Program Stage page. Press cancel and exception is thrown.

The following are confirmed bugs (currently being worked on):

    • Options sets have a value type - and when assigned to a custom attribute - should take the value type as the value type of option set. But, this is not happenening.
    • Translations behaving wierd. If we add a translation to a dataelement and then updating while updating it is blanked out.
  • Custom attributes - even if made mandatory and assigned to data element - the mandatory sign doesn’t appear and hence gets created without even giving the attribute value.

The following has been fixed:

    • Traker capture is not working, The application is not showing up. It is throwing 404 error

A few points:

For the Maintenance app we’re currently fixing a range of issues and the current version is not really in a testable state. You’ve touched upon a few aspects such as UI bugs and translations displaying undesirable behaviour. These are expected to be fixed for release. In general: for UI bugs with attributes not showing up and so forth you at the current time have to reload the page for the maintenance app to update the models internally. This is being worked on.

The importer issues you are having are with the “old” importer which is being phased out. The new one is available on api/24/ and should be used going forwared. That said, the conflict you are describing is actually the expected behaviour (we agree that it is not ideal). I believe Morten talked about this in a separate email recently.

For the items I have not commented on (and the ones I cannot reproduce) I ask you to do the following:

  • Create a reproducible test case on https://play.dhis2.org/dev (or on demo, after 2.24 release)
  • Describe the test case in detailed steps so we can easily recreate the issue
  • Describe the issue clearly.
  • Provide any server log stack traces/errors or console errors IN FULL
  • Register each confirmed issuse as a single bug report on launchpad (or as a github issue for Maintenance). Consolidating them into a single list like this makes the bugs a bit harder to track.
    I’ve added this conversation to the dhis2-devs list.

Thanks!

---------- Forwarded message ----------
From: Nalinikanth Meesala nalinim@thoughtworks.com
Date: Thu, Jun 23, 2016 at 2:31 PM
Subject: Bugs found in DHIS2 Application
To: Lars Helge Øverland lars@dhis2.org, Morten Olav Hansen morten@dhis2.org
Cc: Theo Krommydakis theo.krommydakis@london.msf.org, twoca twoca@thoughtworks.com, dhis2-devs dhis2-devs@lists.launchpad.net

Hi Lars & Morten,

I am working for MSF-OCA project from ThoughtWorks. As you are aware that we are building a metadata synchronisation. We had a bug bash recently and below are the bugs we found in new importer. We did the bug bash on trunk below are the bugs we found on DHIS2 application.

  • Unable to create more than one orgunit. The organisation unit after created is not reflecting on UI. Existing orgunits also not showing in maintenance app.
  • Unable to edit existing entities (org. units) - UI issue - maintenance app
  • Error while clicking on Edit Program Stage page. Press cancel and exception is thrown.
  • Validation rule passes even if left side & right side are not same (e.g. if one of the sides is a string value & the other a number)
  • Options sets have a value type - and when assigned to a custom attribute - should take the value type as the value type of option set. But, this is not happenening.
  • Custom attributes - even if made mandatory and assigned to data element - the mandatory sign doesn’t appear and hence gets created without even giving the attribute value.
  • Delete category option, maintenance app continuously reloads. See below in server log

org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [org.hisp.dhis.dataelement.DataElementCategoryOptionCombo#116]

  • Translations behaving wierd. If we add a translation to a dataelement and then updating while updating it is blanked out.
  • Traker capture is not working, The application is not showing up. It is throwing 404 error
  • Program without registration having coc is not showing the register event button in event capture app.
  • Program which is not assigned to any user is showing in the event capture.
  • updation of translation of dataelement which is not happening, value gets cleared upon updation at HQ itself. However it works fine for Data Set
  • When data sync if conflict is there that updating lastsync success and treating as success case.
  • INFO 2016-06-21 13:10:01,991 Synch summary: ImportSummary{status=SUCCESS, description=‘Import process completed successfully’, importCount=[imports=0, updates=0, ignores=6], conflicts=[ImportConflict{object=‘WgrfUKa76kB’, value=‘Organisation unit not in hierarchy of current user: admin’}], dataSetComplete=‘false’, reference=‘null’, href=‘null’} (DefaultSynchronizationManager.java [taskScheduler-7])
  • INFO 2016-06-21 13:10:01,995 Synch successful, setting last success time: Tue Jun 21 13:10:01 IST 2016 (DefaultSynchronizationManager.java [taskScheduler-7])
  • Analytics Export is failing with NPE. ‘system-process’

create org.hisp.dhis.message.MessageConversation, name: Analytics table process failed, uid: YPNhmywHZlk (AuditLogUtil.java [taskScheduler-1])

  • ERROR 2016-06-21 14:37:16,999 Unexpected error occurred in scheduled task. (TaskUtils.java [taskScheduler-1]) java.lang.NullPointerException at org.hisp.dhis.resourcetable.table.DataSetOrganisationUnitCategoryResourceTable.getPopulateTempTableContent(DataSetOrganisationUnitCategoryResourceTable.java:96)"

Thanks & Regards,

Nalinikanth M

Quality Analyst

Email
nalinim@thoughtworks.com
Telephone
+91 9052234588
ThoughtWorks

Lars Helge Øverland

Lead developer, DHIS 2

University of Oslo

Skype: larshelgeoverland

lars@dhis2.org

http://www.dhis2.org


Halvdan Hoem Grelland

Software developer, DHIS 2

University of Oslo

http://www.dhis2.org


Mailing list: https://launchpad.net/~dhis2-devs
Post to : dhis2-devs@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-devs
More help : https://help.launchpad.net/ListHelp