Michael Russo created USERGRID-1253:
---------------------------------------
Summary: Investigate and Refactor WriteUniqueVerify
Key: USERGRID-1253
URL: https://issues.apache.org/jira/browse/USERGRID-1253
Project: Usergrid
Issue Type: Story
Reporter: Michael Russo
Seeing a lot of exceptions like the following which indicate that the current
workflow for writing and validating unique values (e.g. name/username/email
properties):
Caused by: java.lang.RuntimeException: Could not retrieve unique value for
field email, unable to verify
at
org.apache.usergrid.persistence.collection.mvcc.stage.write.WriteUniqueVerify$ConsistentReplayCommand.executeStrategy(WriteUniqueVerify.java:201)
at
org.apache.usergrid.persistence.collection.mvcc.stage.write.WriteUniqueVerify$ConsistentReplayCommand.run(WriteUniqueVerify.java:173)
at
org.apache.usergrid.persistence.collection.mvcc.stage.write.WriteUniqueVerify$ConsistentReplayCommand.run(WriteUniqueVerify.java:150)
at com.netflix.hystrix.HystrixCommand$1.call(HystrixCommand.java:294)
... 21 more
Caused by: rx.exceptions.OnErrorThrowable$OnNextValue: OnError while emitting
onNext value:
org.apache.usergrid.persistence.collection.mvcc.stage.CollectionIoEvent.class
at
rx.exceptions.OnErrorThrowable.addValueAsLastCause(OnErrorThrowable.java:104)
at
rx.internal.operators.OperatorDoOnEach$1.onNext(OperatorDoOnEach.java:81)
at
rx.internal.util.ScalarSynchronousObservable$ScalarSynchronousAction.call(ScalarSynchronousObservable.java:115)
at rx.internal.schedulers.ScheduledAction.run(ScheduledAction.java:55)
at
rx.schedulers.ExecutorScheduler$ExecutorSchedulerWorker.run(ExecutorScheduler.java:98)
We should see how to improve this so we can handle unique values at scale
(likely introducing something like akka with consistent hash routing of the
write operation).
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)