[Tarantool-patches] [tarantool-patches] [PATCH v1 0/9] schema: rework _trigger space

Konstantin Osipov 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?
Why not?  

What are the benefits of having a separate table?


-- 
Konstantin Osipov, Moscow, Russia


More information about the Tarantool-patches mailing list