[Tarantool-patches] [tarantool-patches] [PATCH v1 0/9] schema: rework _trigger space
kostja.osipov at gmail.com
Wed Oct 16 14:11:42 MSK 2019
* Nikita Pettik <korablev at tarantool.org> [19/10/16 14:08]:
> > The reason to store all persistent objects of the same type in the
> > same space is that Tarantool is designed as a multiple frontend
> > system. I.e. tomorrow there may be another front end, not just Lua
> > or SQL, and one doesn't want to have a separate table for each
> > front end.
> Let's be objective: how close we are to introduce new language in
> Tarantool? Is there any demand for new language at all?
it is one of the tenets of the design. Should it be broken now
just because it feels like it won't happen? I think it's a way
broader question than the scope of this patch.
> > If the trigger timing, action type, definer, setuid and other
> > semantics is the same, and only the language is different, then
> > why duplicate the space?
> The thing is they are not the same. In fact, set of Lua and SQL trigger's
> features are quite different. In Lua trigger timing can be one of
> on_replace or before_replace, meanwhile in SQL trigger timing is one of
> BEFORE/AFTER/INSTEAD replace; In Lua action event is replace, whereas in SQL
> it can be INSERT/DELETE/UPDATE; FOR EACH ROW/STATEMENT action in SQL, and
> only FOR EACH ROW is available in Lua.
Right, so it's different values (today) of properties, but the properties
are largely the same.
May I want to define a statement-level trigger in Lua in future?
What are the benefits of having a separate table?
Konstantin Osipov, Moscow, Russia
More information about the Tarantool-patches