You're right Dave it should help. I've replied on the ticket. -Rafal
On 1 March 2012 21:35, Dave Thomas <[email protected]> wrote: > Again, i'm guessing that this is a creation ordering problem. The Drug > (and the Concept referenced by the Drug) needs to be created before the > ConceptAnswer? > > d > > > On Thu, Mar 1, 2012 at 12:33 PM, Dave Thomas <[email protected]> wrote: > >> Hi. No, I'm the one doing the export, and i'm trying to send the export >> to Rowan. And all of my ConceptAnswer.answerDrug fields point to real >> Drugs in the export database. >> >> i.e., >> >> select answer_drug from concept_answer where answer_drug is not null and >> answer_drug not in (select drug_id from drug); >> returns 0 rows. >> >> So there's no wrong data in the export DB. >> >> On the import database, the Drug should just be created. And this is >> what's not working. >> >> d >> >> On Thu, Mar 1, 2012 at 11:50 AM, Rafal Korytkowski <[email protected]>wrote: >> >>> Dave, it's Hibernate that complains about the violated FK constraint >>> which throws an exception while initializing the object. It should be >>> possible to catch that runtime exception. We would have to watch out for >>> that as it may happen either while loading an object or calling one of its >>> getters (depending on the lazy-loading setting). The catch should be >>> somewhere in OpenmrsObjectVisitor where the exception is thrown (see >>> Rowan's stacktrace). >>> >>> The question is if MDS should be handling wrong data in your db :-) >>> >>> -Rafal >>> >>> >>> >>> On 1 March 2012 20:10, Rowan Seymour <[email protected]> wrote: >>> >>>> Rafal was right - we were missing the drug in the database after a >>>> previous SQL import of concepts... which is why SQL dumps are not a great >>>> way to move concepts around and why we really appreciate the work you guys >>>> are doing on MDS >>>> >>>> >>>> On 1 March 2012 20:48, Dave Thomas <[email protected]> wrote: >>>> >>>>> Why wouldn't the drug just be added to the metadata sharing package >>>>> when referenced by answer_drug? >>>>> >>>>> I don't see why you'd ever want to import/export a concept with an >>>>> answer_drug where you wouldn't want the package to include the drug. >>>>> >>>>> (rolling up sleeves to look at metadatasharing code) >>>>> >>>>> d >>>>> >>>>> >>>>> On Thu, Mar 1, 2012 at 4:35 AM, Rafal Korytkowski >>>>> <[email protected]>wrote: >>>>> >>>>>> It's possible that you may have imported it. Normally MySQL dumps are >>>>>> imported with foreign_key_checks=OFF. >>>>>> >>>>>> I'd assume this drug is in the concept_answer table so execute this >>>>>> query: >>>>>> >>>>>> select * from concept_answer where answer_drug = 142; >>>>>> >>>>>> -Rafal >>>>>> >>>>>> >>>>>> On 1 March 2012 13:10, Rowan Seymour <[email protected]> wrote: >>>>>> >>>>>>> There is no drug 142. Am looking in the database to see where we >>>>>>> could have a FK constraint violation. It's InnoDB tables >>>>>>> with foreign_key_checks=ON so I don't see how it's possible. What do you >>>>>>> think is referencing that drug? >>>>>>> >>>>>>> I'll create a ticket for the other exception. >>>>>>> >>>>>>> Thanks >>>>>>> >>>>>>> >>>>>>> On 1 March 2012 13:15, Rafal Korytkowski <[email protected]> wrote: >>>>>>> >>>>>>>> Hi, >>>>>>>> >>>>>>>> The export fails since you've got a FK constraint violation in your >>>>>>>> db: *No row with the given identifier exists: >>>>>>>> [org.openmrs.Drug#142]. *Make sure that a drug with id 142 exists >>>>>>>> or don't reference it in your concepts. >>>>>>>> >>>>>>>> Regarding the import it's trying to save concepts in the wrong >>>>>>>> order. Can you please create a ticket and attach your package if it's >>>>>>>> possible or else I'll ask you to help me inspect the xml further. >>>>>>>> >>>>>>>> -Rafal >>>>>>>> >>>>>>>> On 1 March 2012 11:29, Rowan Seymour <[email protected]>wrote: >>>>>>>> >>>>>>>>> Another exception - this time trying to export all concepts from >>>>>>>>> the same server: >>>>>>>>> >>>>>>>>> *Caused by: >>>>>>>>> org.openmrs.module.metadatasharing.task.TaskException: Export failed >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ExportPackageTask.execute(ExportPackageTask.java:125) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.api.impl.MetadataSharingServiceImpl.executeTask(MetadataSharingServiceImpl.java:198) >>>>>>>>> * >>>>>>>>> * ...* >>>>>>>>> *Caused by: org.hibernate.ObjectNotFoundException: No row with >>>>>>>>> the given identifier exists: [org.openmrs.Drug#142]* >>>>>>>>> * at >>>>>>>>> org.hibernate.impl.SessionFactoryImpl$1.handleEntityNotFound(SessionFactoryImpl.java:377) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.hibernate.proxy.AbstractLazyInitializer.checkTargetState(AbstractLazyInitializer.java:79) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:68) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:111) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.visitor.impl.OpenmrsObjectVisitor$1.visit(OpenmrsObjectVisitor.java:89) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.visitSerializableFields(PureJavaReflectionProvider.java:129) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.visitor.impl.OpenmrsObjectVisitor.visitFields(OpenmrsObjectVisitor.java:83) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ExportPackageTask.resolveRelatedItems(ExportPackageTask.java:176) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ExportPackageTask.access$2(ExportPackageTask.java:175) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ExportPackageTask$1.visitMetadata(ExportPackageTask.java:202) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ExportPackageTask$1.visit(ExportPackageTask.java:184) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.visitor.impl.OpenmrsObjectVisitor$1.visit(OpenmrsObjectVisitor.java:96) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.visitSerializableFields(PureJavaReflectionProvider.java:129) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.visitor.impl.OpenmrsObjectVisitor.visitFields(OpenmrsObjectVisitor.java:83) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ExportPackageTask.resolveRelatedItems(ExportPackageTask.java:176) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ExportPackageTask.exportSubpackage(ExportPackageTask.java:148) >>>>>>>>> * >>>>>>>>> * at >>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ExportPackageTask.execute(ExportPackageTask.java:98) >>>>>>>>> * >>>>>>>>> * ... 44 more* >>>>>>>>> >>>>>>>>> >>>>>>>>> It also outputted about 15MB to my catalina.out log, most of which >>>>>>>>> appears to be repetition of this warning: >>>>>>>>> >>>>>>>>> *WARN - StringLocaleConverter.getDecimalFormat(281) |2012-03-01 >>>>>>>>> 11:54:50,961| No pattern provided, using default.* >>>>>>>>> >>>>>>>>> >>>>>>>>> On 1 March 2012 12:13, Rowan Seymour <[email protected]>wrote: >>>>>>>>> >>>>>>>>>> Am trying to import a package with MDS 1.0.2 and getting the >>>>>>>>>> exception below. The package was also made with 1.0.2 >>>>>>>>>> * >>>>>>>>>> * >>>>>>>>>> *Caused by: >>>>>>>>>> org.openmrs.module.metadatasharing.task.TaskException: Import failed >>>>>>>>>> * >>>>>>>>>> *...* >>>>>>>>>> *Caused by: org.openmrs.api.db.DAOException: Error saving >>>>>>>>>> org.openmrs.Concept [e44dae58-fec8-4567-bd44-e989232af0e7]* >>>>>>>>>> *...* >>>>>>>>>> *Caused by: org.openmrs.api.APIException: Cannot save 7073. >>>>>>>>>> Failed with the following exception:* >>>>>>>>>> *java.lang.reflect.InvocationTargetException* >>>>>>>>>> * >>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native >>>>>>>>>> Method) >>>>>>>>>> at >>>>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >>>>>>>>>> at >>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:597) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.reflection.OpenmrsClassScanner.invokeServiceSaveItem(OpenmrsClassScanner.java:254) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.reflection.OpenmrsClassScanner.serviceSaveItem(OpenmrsClassScanner.java:174) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.handler.impl.OpenmrsObjectHandler.saveItem(OpenmrsObjectHandler.java:107) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.handler.impl.OpenmrsObjectHandler.saveItem(OpenmrsObjectHandler.java:1) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.handler.Handler.saveItem(Handler.java:38) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ImportPackageTask.saveItem(ImportPackageTask.java:284) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ImportPackageTask.saveItem(ImportPackageTask.java:278) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ImportPackageTask.saveItem(ImportPackageTask.java:278) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ImportPackageTask.saveItem(ImportPackageTask.java:278) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ImportPackageTask.saveItem(ImportPackageTask.java:278) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ImportPackageTask.importItems(ImportPackageTask.java:199) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.task.impl.ImportPackageTask.execute(ImportPackageTask.java:85) >>>>>>>>>> at >>>>>>>>>> org.openmrs.module.metadatasharing.api.impl.MetadataSharingServiceImpl.executeTask(MetadataSharingServiceImpl.java:198) >>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>>>>>>> * >>>>>>>>>> *...* >>>>>>>>>> *Caused by: org.hibernate.PropertyValueException: not-null >>>>>>>>>> property references a null or transient value: >>>>>>>>>> org.openmrs.ConceptAnswer.answerConcept* >>>>>>>>>> * >>>>>>>>>> at >>>>>>>>>> org.hibernate.engine.Nullability.checkNullability(Nullability.java:72) >>>>>>>>>> at >>>>>>>>>> org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:290) >>>>>>>>>> * >>>>>>>>>> >>>>>>>>>> I assume "*Cannot save 7073*" refers to the item with id=7073 >>>>>>>>>> which would be this ConceptMap in the metadata.xml: >>>>>>>>>> >>>>>>>>>> <org.openmrs.ConceptMap id="*7073*" >>>>>>>>>> uuid="75591ABBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"> >>>>>>>>>> <conceptMapId>13,329</conceptMapId> >>>>>>>>>> <concept reference="7046"/> >>>>>>>>>> <source reference="671"/> >>>>>>>>>> <sourceCode>283025007</sourceCode> >>>>>>>>>> <comment>Map Type: 1</comment> >>>>>>>>>> <creator/> >>>>>>>>>> <dateCreated id="7074">2010-04-25 >>>>>>>>>> 11:29:41</dateCreated> >>>>>>>>>> </org.openmrs.ConceptMap> >>>>>>>>>> >>>>>>>>>> And the concept with that UUID is: >>>>>>>>>> >>>>>>>>>> <org.openmrs.ConceptAnswer id="10576" >>>>>>>>>> uuid="575e736e-347a-4487-aced-10c7cdd9ec5f"> >>>>>>>>>> <conceptAnswerId>6,850</conceptAnswerId> >>>>>>>>>> <concept reference="5900"/> >>>>>>>>>> <answerConcept id="10577" >>>>>>>>>> resolves-to="org.openmrs.Concept" uuid="* >>>>>>>>>> e44dae58-fec8-4567-bd44-e989232af0e7*"> >>>>>>>>>> <conceptId>7,181</conceptId> >>>>>>>>>> <retired>false</retired> >>>>>>>>>> <datatype reference="37"/> >>>>>>>>>> <conceptClass reference="897"/> >>>>>>>>>> <set>false</set> >>>>>>>>>> <version>1</version> >>>>>>>>>> <creator/> >>>>>>>>>> <dateCreated id="10579">2011-12-15 >>>>>>>>>> 04:22:46</dateCreated> >>>>>>>>>> <changedBy/> >>>>>>>>>> <dateChanged id="10580">2012-01-16 >>>>>>>>>> 20:03:00</dateChanged> >>>>>>>>>> <names class="set" id="10581"> >>>>>>>>>> <org.openmrs.ConceptName id="10582" >>>>>>>>>> uuid="435c4cb9-5527-491c-87c6-43c3bd64c2e5"> >>>>>>>>>> <conceptNameId>14,688</conceptNameId> >>>>>>>>>> <concept reference="10577"/> >>>>>>>>>> <name>Obstructed Labor, Antepartum</name> >>>>>>>>>> <locale id="10583">en</locale> >>>>>>>>>> <creator/> >>>>>>>>>> <dateCreated id="10584">2011-12-15 >>>>>>>>>> 04:22:46</dateCreated> >>>>>>>>>> <voided>false</voided> >>>>>>>>>> <tags class="set" id="10585"> >>>>>>>>>> <org.openmrs.ConceptNameTag >>>>>>>>>> reference="28"/> >>>>>>>>>> </tags> >>>>>>>>>> </org.openmrs.ConceptName> >>>>>>>>>> </names> >>>>>>>>>> <answers class="set" id="10586"/> >>>>>>>>>> <conceptSets class="set" id="10587"/> >>>>>>>>>> <descriptions class="set" id="10588"/> >>>>>>>>>> <conceptMappings class="set" id="10589"> >>>>>>>>>> <org.openmrs.ConceptMap id="10590" >>>>>>>>>> uuid="12e8f7ab-c801-4c4e-9ba0-d5a516a8ac81"> >>>>>>>>>> <conceptMapId>13,442</conceptMapId> >>>>>>>>>> <concept reference="10577"/> >>>>>>>>>> <source reference="1428"/> >>>>>>>>>> <sourceCode>O66.9</sourceCode> >>>>>>>>>> <creator/> >>>>>>>>>> <dateCreated id="10591">2011-12-15 >>>>>>>>>> 04:22:46</dateCreated> >>>>>>>>>> </org.openmrs.ConceptMap> >>>>>>>>>> <org.openmrs.ConceptMap id="10592" >>>>>>>>>> uuid="06e77deb-29b4-423b-bfb3-51f7670dae71"> >>>>>>>>>> <conceptMapId>14,034</conceptMapId> >>>>>>>>>> <concept reference="10577"/> >>>>>>>>>> <source reference="76"/> >>>>>>>>>> <sourceCode>7181</sourceCode> >>>>>>>>>> <creator/> >>>>>>>>>> <dateCreated id="10593">2012-01-16 >>>>>>>>>> 20:03:00</dateCreated> >>>>>>>>>> </org.openmrs.ConceptMap> >>>>>>>>>> <org.openmrs.ConceptMap id="10594" >>>>>>>>>> uuid="0332cfca-4aa4-46a9-9b76-6fa45c9ba336"> >>>>>>>>>> <conceptMapId>13,441</conceptMapId> >>>>>>>>>> <concept reference="10577"/> >>>>>>>>>> <source reference="71"/> >>>>>>>>>> <sourceCode>7558</sourceCode> >>>>>>>>>> <creator/> >>>>>>>>>> <dateCreated id="10595">2011-12-15 >>>>>>>>>> 09:20:01</dateCreated> >>>>>>>>>> </org.openmrs.ConceptMap> >>>>>>>>>> </conceptMappings> >>>>>>>>>> <compatibleCache id="10596"> >>>>>>>>>> <entry> >>>>>>>>>> <locale reference="92"/> >>>>>>>>>> <vector id="10597"> >>>>>>>>>> <org.openmrs.ConceptName >>>>>>>>>> reference="10582"/> >>>>>>>>>> </vector> >>>>>>>>>> </entry> >>>>>>>>>> </compatibleCache> >>>>>>>>>> </answerConcept> >>>>>>>>>> <creator/> >>>>>>>>>> <dateCreated id="10598">2011-12-15 >>>>>>>>>> 04:23:05</dateCreated> >>>>>>>>>> </org.openmrs.ConceptAnswer> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Rowan Seymour* >>>>>>>>> tel: +250 783835665 >>>>>>>>> http://twitter.com/rowanseymour >>>>>>>>> >>>>>>>>> ------------------------------ >>>>>>>>> Click here to >>>>>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >>>>>>>>> OpenMRS Developers' mailing list >>>>>>>>> >>>>>>>> >>>>>>>> ------------------------------ >>>>>>>> Click here to >>>>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >>>>>>>> OpenMRS Developers' mailing list >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Rowan Seymour* >>>>>>> tel: +250 783835665 >>>>>>> http://twitter.com/rowanseymour >>>>>>> >>>>>>> ------------------------------ >>>>>>> Click here to >>>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >>>>>>> OpenMRS Developers' mailing list >>>>>>> >>>>>> >>>>>> ------------------------------ >>>>>> Click here to >>>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >>>>>> OpenMRS Developers' mailing list >>>>>> >>>>> >>>>> ------------------------------ >>>>> Click here to >>>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >>>>> OpenMRS Developers' mailing list >>>>> >>>> >>>> >>>> >>>> -- >>>> *Rowan Seymour* >>>> tel: +250 783835665 >>>> http://twitter.com/rowanseymour >>>> >>>> ------------------------------ >>>> Click here to >>>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >>>> OpenMRS Developers' mailing list >>>> >>> >>> ------------------------------ >>> Click here to >>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >>> OpenMRS Developers' mailing list >>> >> >> > ------------------------------ > Click here to > unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from > OpenMRS Developers' mailing list > _________________________________________ To unsubscribe from OpenMRS Developers' mailing list, send an e-mail to [email protected] with "SIGNOFF openmrs-devel-l" in the body (not the subject) of your e-mail. [mailto:[email protected]?body=SIGNOFF%20openmrs-devel-l]

