Details
-
Type: Bug
-
Status: Resolved
-
Priority: Medium
-
Resolution: Done
-
Labels:None
-
Sprint:Sprint 2015-11-16, Sprint 2015-11-30
-
Story Points:3
Description
The following error occurs during saving forms as complete, when forms have non-coded answers for coded questions.
E/HTMLFormObservationCreator(13195): at com.muzima.api.model.algorithm.ConceptAlgorithm.serialize(ConceptAlgorithm.java:77) E/HTMLFormObservationCreator(13195): at com.muzima.api.model.algorithm.ObservationAlgorithm.serialize(ObservationAlgorithm.java:94) E/HTMLFormObservationCreator(13195): at com.muzima.search.api.resource.ObjectResource.serialize(ObjectResource.java:207) E/HTMLFormObservationCreator(13195): at com.muzima.search.api.internal.lucene.DefaultIndexer.createObjects(DefaultIndexer.java:724) E/HTMLFormObservationCreator(13195): at com.muzima.search.api.service.impl.RestAssuredServiceImpl.createObjects(RestAssuredServiceImpl.java:291) E/HTMLFormObservationCreator(13195): at com.muzima.api.dao.impl.SearchableDaoImpl.save(SearchableDaoImpl.java:62) E/HTMLFormObservationCreator(13195): at com.muzima.api.service.impl.ObservationServiceImpl.saveObservations(ObservationServiceImpl.java:269) E/HTMLFormObservationCreator(13195): at com.muzima.controller.ObservationController.saveObservations(ObservationController.java:244) E/HTMLFormObservationCreator(13195): at com.muzima.service.HTMLFormObservationCreator.saveObservationsAndRelatedEntities(HTMLFormObservationCreator.java:102) E/HTMLFormObservationCreator(13195): at com.muzima.service.HTMLFormObservationCreator.createAndPersistObservations(HTMLFormObservationCreator.java:59) E/HTMLFormObservationCreator(13195): at com.muzima.view.forms.HTMLFormDataStore.parseForm(HTMLFormDataStore.java:154) E/HTMLFormObservationCreator(13195): at com.muzima.view.forms.HTMLFormDataStore.saveHTML(HTMLFormDataStore.java:75) E/HTMLFormObservationCreator(13195): at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method) E/HTMLFormObservationCreator(13195): at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:53) E/HTMLFormObservationCreator(13195): at android.os.Handler.dispatchMessage(Handler.java:102) E/HTMLFormObservationCreator(13195): at android.os.Looper.loop(Looper.java:135) E/HTMLFormObservationCreator(13195): at android.os.HandlerThread.run(HandlerThread.java:61)
As a result any further attempts to save the form (as complete or as draft) will fail.
E/FormDataStore(13195): Exception occurred while saving form data
E/FormDataStore(13195): com.muzima.controller.FormController$FormDataSaveException: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@/data/data/com.muzima/write.lock
E/FormDataStore(13195): at com.muzima.controller.FormController.saveFormData(FormController.java:372)
E/FormDataStore(13195): at com.muzima.view.forms.HTMLFormDataStore.saveHTML(HTMLFormDataStore.java:78)
E/FormDataStore(13195): at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
E/FormDataStore(13195): at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:53)
E/FormDataStore(13195): at android.os.Handler.dispatchMessage(Handler.java:102)
E/FormDataStore(13195): at android.os.Looper.loop(Looper.java:135)
E/FormDataStore(13195): at android.os.HandlerThread.run(HandlerThread.java:61)
E/FormDataStore(13195): Caused by: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@/data/data/com.muzima/write.lock
E/FormDataStore(13195): at org.apache.lucene.store.Lock.obtain(Lock.java:84)
E/FormDataStore(13195): at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:1098)
E/FormDataStore(13195): at com.muzima.search.api.internal.provider.WriterProvider.get(WriterProvider.java:40)
E/FormDataStore(13195): at com.muzima.search.api.internal.lucene.DefaultIndexer.createIndexWriter(DefaultIndexer.java:102)
E/FormDataStore(13195): at com.muzima.search.api.internal.lucene.DefaultIndexer.updateObjects(DefaultIndexer.java:738)
E/FormDataStore(13195): at com.muzima.search.api.service.impl.RestAssuredServiceImpl.updateObjects(RestAssuredServiceImpl.java:301)
E/FormDataStore(13195): at com.muzima.api.dao.impl.SearchableDaoImpl.update(SearchableDaoImpl.java:74)
E/FormDataStore(13195): at com.muzima.api.service.impl.FormServiceImpl.saveFormData(FormServiceImpl.java:346)
E/FormDataStore(13195): at com.muzima.controller.FormController.saveFormData(FormController.java:370)
E/FormDataStore(13195): ... 6 more
There's need to apply a fix to handle that situation.