You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are two interfaces to access to data in Tarantool: using SQL and connector. I suppose we should make two flavors with each Jepsen tests to use both interfaces. Such approach used, for example, in tests for Yugabyte, that has ycql and ysql (https://github.com/jepsen-io/jepsen/tree/master/yugabyte/src/yugabyte)
(I had intention to write this issue myself and then found your one :))
I like the idea about splitting different ways to access data (we can even call them different query languages in a very general sense). It seems, the main point of this issue is the following:
Split implementations of tests into lua and sql directories.
For the sake of completeness, I see the following possible 'query languages' worthful to test in a future:
lua: calling Lua functions (here we don't need interactive transactions).
sql: access data using SQL (use interactive transactions).
box: use the noSQL operations (use interactive transactions).
crud: use tarantool/crud operations (maybe in some future).
Since you mentioned known Clojure connectors, I assume that you also consider the following blocks of work:
lua: use tarantool specific connector to call Lua functions: don't do it via SQL.
Whether we should prefer a native clojure connector (based on fl00r/tarantool-clj or written from scratch)?
Or a connector that wraps tarantool-java / cartrdge-java (maybe based on fl00r/tarantool-clj-1.7)?
Or even implement our own tiny one (see below)?
box: we should add interactive transactions support into a connector of the choice.
There are two interfaces to access to data in Tarantool: using SQL and connector. I suppose we should make two flavors with each Jepsen tests to use both interfaces. Such approach used, for example, in tests for Yugabyte, that has
ycql
andysql
(https://github.com/jepsen-io/jepsen/tree/master/yugabyte/src/yugabyte)Tarantool clients on Clojure:
Initial commit includes methods from a native Clojure connector, but these methods was never used -
1b76c83#diff-9833d33163e019f95895e621c02b2bb5f1c883552d6bf83409de649b98ee2f3f
The text was updated successfully, but these errors were encountered: