From: Igor Munkin <imun@tarantool.org> To: Konstantin Osipov <kostja.osipov@gmail.com> Cc: tarantool-patches@dev.tarantool.org Subject: Re: [Tarantool-patches] [PATCH] Move txn from shema to a separate module (use C API instead of FFI) Date: Fri, 29 Nov 2019 20:43:52 +0300 [thread overview] Message-ID: <20191129174352.GE1214@tarantool.org> (raw) In-Reply-To: <20191129053059.GE15149@atlas> Kostja, On 29.11.19, Konstantin Osipov wrote: > * Igor Munkin <imun@tarantool.org> [19/11/28 21:39]: > > > This is actually quite simple - we could easily call a LuaJIT hook > > > whenever switching a fiber, to make sure that it carefully > > > switches the internals as well. Mike Pall refused to cooperate on > > > the matter, but now we (you) control our own destiny. > > > > Unfortunately, I haven't seen the thread where the subj is discussed > > with Mike Pall, but the approach you proposed doesn't seem to be a > > convenient one, however it still solves a problem (as does the move to > > use Lua-C API for the code with possible Lua VM re-entrance underneath). > > > > The major flaw I see in this solution, is introducing the dependency on > > the JIT interface into Tarantool internals. There is already one > > dependency on LuaJIT-2.1.0 presented with internal headers usage for > > several hacks in utils.c. As a result we are not able to simply replace > > the Lua implementation to try another one (e.g. uJIT conforming > > LuaJIT-2.0.5) for comparing each other. > > Well, this is not exactly a flaw of the solution, then: it would > have been a flaw if we had a choice - whether to introduce a > dependency or not. The dependency is already there, with its > costs. I hope to reduce it in the nearest future, since there're lots of valuable Lua implementations to be tried for Tarantool. > When we introduced the dependency it was not an arbitrary decision > either: the strategy has always been that Tarantool will become > bigger & stronger and will have its own JIT team, so we will be > able to sustain the costs of tight coupling. This strategy has > partly materialized with you and Sergos on board of MRG team. > > Now it's a matter of you guys being bold enough to take one step > further and integrate LuaJIT with tarantool fibers. I really appreciate your words and we will try our best for the product enhancements. As I mentioned before, we already have some research aiming to detect FFI sandwiches and prevent the platform failures and we are definitely going to proceed with it. > > I know of no good reason why yields break traces, and if they stop > doing that, we can switch everything to FFI. I can dump some results to tarantool-discussions on demand. > > This is of course outside the scope of this patch, but is related > to the policy for FFI vs Lua/C. Yes, and we should come to a sole one indeed. I guess it will be more convenient to move our conversation thread to tarantool-discussions and stop spoiling the review list. > > > -- > Konstantin Osipov, Moscow, Russia -- Best regards, IM
next prev parent reply other threads:[~2019-11-29 17:45 UTC|newest] Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-11-26 13:13 Leonid 2019-11-26 21:05 ` Konstantin Osipov 2019-11-26 21:17 ` Alexander Turenko 2019-11-27 8:31 ` Konstantin Osipov 2019-11-28 8:10 ` Leonid Vasiliev 2019-11-28 12:34 ` Konstantin Osipov 2019-11-28 13:00 ` Igor Munkin 2019-11-28 13:18 ` Konstantin Osipov 2019-11-28 14:03 ` Igor Munkin 2019-11-28 15:58 ` Konstantin Osipov 2019-11-28 18:36 ` Igor Munkin 2019-11-29 5:30 ` Konstantin Osipov 2019-11-29 17:43 ` Igor Munkin [this message] 2019-11-29 5:41 ` Konstantin Osipov 2019-11-29 17:37 ` Igor Munkin 2019-12-04 13:05 ` Leonid Vasiliev 2019-12-04 13:15 ` Konstantin Osipov 2019-12-05 8:27 ` Leonid Vasiliev 2020-03-20 18:48 ` Igor Munkin 2020-03-20 19:27 ` Konstantin Osipov 2019-12-11 22:21 ` Alexander Turenko 2019-12-12 8:23 ` Leonid Vasiliev 2020-01-15 17:05 ` Alexander Turenko 2019-12-12 8:49 ` Konstantin Osipov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20191129174352.GE1214@tarantool.org \ --to=imun@tarantool.org \ --cc=kostja.osipov@gmail.com \ --cc=tarantool-patches@dev.tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH] Move txn from shema to a separate module (use C API instead of FFI)' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox