Sync2 Testing Report

Our implementations are still on OpenMRS 1.x yet Sync2 module require a minimum platform requirement of 2.0.5 check here. We are currently on 1.11.5(Not everyone has migrated to this; others are still on 1.9.2). With 2.0.5 platform, there are some liquibase change sets that are NOT executed until some manual database manipulation is performed, check this talk topic for reference. Secondly, there are modules that we depend on for our work that do NOT run on 2.0.5:

  • Patientflag rest module - this module require patient flag module to have been started(Patient flag module needs logic module which is NOT supported by 2.0.5), I see snapshot version has removed dependency to logic. Can this be released?

  • Database backup module - No version available that could run on 2.0.5, I will probably try the snapshot version

  • Logic module - No longer supported, yet needed for some on our platform modules to function

  • Patient flag module - Needs logic module, I will try the snapshot version pending release that exclude that dependency to logic module

  • Data entry statistics module - NOT working at all.

  • Form filter module - Tried the latest version but still NOT working. Is this module supported to run on 2.x?

Moreover, Sync2 module need atom feed module which clash with the events module, see here, we need event module for the EMR API module to work(which we need for our implementation).

In addition, sync2 module is a reference application module, it has no links to access on the legacy UI( we need support for 1.x) it needs reffApp for us to be able to access its respective UI screens. From the discussions and demo we just had, it evidently showed that sync2 module still has some work that need to be done to bring it to production.

We are trying to upgrade to 2.x but this might NOT happen that first, we therefore need advice on how we can use it or get a compatible version to our 1.x so that we can qualify as release candidate testers.

@darius @raff @SolDevelo @janflowers @valvijo


Thanks for sharing this @ningosi, this is very helpful!

Just as far as Sync 2 goes, the fact that you’re on Platform 1.x does prevent you from being testers in the short term.

But there are two important threads here:

Specific (quick?) fixes that should be addressed in the Sync module (regardless of if Mozambique is testing it)

  1. atomfeed module clashes with the event module => this needs to be fixed or else sync won’t work for anyone in real life. (I assume there can be a quick-fix of just renaming a class to avoid a clash. But the correct fix is ATF-16, and we should prioritize this, inside or outside of sync. FYI @mseaton, @wyclif, @dkayiwa.)

  2. sync2 uses the refapp UI => strictly it only requires the uiframework and uicommons modules, not the entire refapp, so this doesn’t seem like a real blocker to me. And someone can quickly/hackily add a link so that Sync admin is linked from the legacyui’s admin screen. (The ideal solution is to pull the UI out into an OWA that can be used regardless of which OpenMRS distro.)

  3. Sync2 needs work to be ready for production => I think we all agree on this. And so we’re looking hard for someone to commit to test/implement while that work is done, to help direct it.

Mozambique tried to upgrade to Platform 2.x but was blocked by a bunch of things

I’m going to create a separate Talk thread about your upgrade challenges, because it’s also relevant outside of sync.

1 Like

Hi @ningosi, I have done an upgrade of openmrs platform several times, first from 1.9.1 to 2.0.5, 1.9.1 to 1.11.8, and 1.11.8 to 2.0.5 in ubuntu/Linux server and is working okay. If you need to do an upgrade I can be of some help.

Do you suggest someone needs to create an owa UI for sync2 ? FYI @ningosi , @raff

I suggest that someone should do this eventually. I think it’s a low priority for now.

Alright noted.

1 Like

Hi @SolDevelo,

I remembered we discussed about this sometimes back, but am just following up to check if the module is ready for testing on a real patient environment. I have a use case of 45 facilities that need to run application on their personal machines but sync the records with a central server for reporting and data analysis. Please let me know if the entire patient record can be synced.


@ningosi see comments below - some we are using in UgandaEMR 2.x that runs on platform 2.0.6:

  • patient flag rest module - this seems an eSaude specific module with one rest end-point why not merge it into the patient flags REST
  • Database backup v1.3.0 works on 2.0.6 we have been using it in UgandaEMR 2.x
  • Patient flags - 2.0.0-SNAPSHOT works with 2.0.6 using in UgandaEMR 2.x
  • Data entry statistics 1.6.0 in use with UgandaEMR 2.x
  • Form filter 1.0.0 - I do not see any issues with it in UgandaEMR 2.x

What platform modules need logic? Here is the UgandaEMR 2.x pom.xml for versions that we are using

Hi @ningosi,

If you are talking only about patient data than yes, full patient record can be synced, but synchronizing patient’s visits is what will be done in the next release.

Regards, Tomasz

Thanks for the update. Any indication when the release will be ready with patients visits synchronization?

@ningosi did you get this error while building sync2

FYI @darius @SolDevelo

You need java 8 to run that

Am running on Java 8

@ningosi cleared ,there was a gson version conflict in .m2 folder

1 Like