This changed from a part of the query string in cassandra 1.1 to a
separate parameter passed to execute in cassandra 1.2 and above.
Unfortunately we need to jump through some hoops to support both, until
we've fully upgraded to 1.2.
This commit adds a placeholder to the query string %CONSISTENCY% that
will be replaced with the chosen level in 1.1, and replaced with the
empty string in 1.2. Once we've upgraded to 1.2, we can remove all this
as it'll just be another option to the method.
closes CNVS-9273
test plan:
Using each of cassandra 1.1, 1.2, and 2.0:
* Clear out the consistency level Settings
* Setting.connection.delete("DELETE FROM settings WHERE name LIKE 'event_stream.%_consistency%'")
* Verify that page views and audit logs can be fetched, verify in the
rails logs that no consistency level is given in the CQL query
lines
* Set the consistency level
* Setting.set('event_stream.read_consistency', 'ONE')
* Verify that page views and audit logs can be fetched, verify in the
rails logs that consistency level "ONE" is given in the CQL query
lines. In 1.1, this will be in the query string, in 1.2 and 2.0 it
will follow the query in an options hash
Change-Id: I3d007376d096e6ed31a40e699e77dca4cdd065a2
Reviewed-on: https://gerrit.instructure.com/35171
Tested-by: Brian Palmer <brianp@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>