What are the transactional guarantees between Cassandra and ElasticSearch? Specifically if a create request is made and successfully makes it into Cassandra what process ensures the data gets into ElasticSearch. Lets say Casandra was up but ElasticSearch was temporally down. Would the request return success to the caller? If Elastic later came back up would it automatically catch up with any requests that it into Casandra while it was down?
If things are operating normally with both Casandra and ElasticSearch up does the request thread wait for the object to make it into both Casandra and ElasticSearch before returning success to the user? Suppose you are in a scaled environment with multiple instances of of UserGrid war talking to the same Casandra cluster and ES cluster. If a create request comes into one UserGrid instance and successfully makes it into Casandra and then that Tomcat instance halts suddenly, is there any process that ensures that the data will get into ES or that it will be rolled back out of Casandra? In sort what are the guarantees that ES will be in sync with Casandra in the presence of system errors? Many thanks Ben