[Tarantool-patches] [PATCH] Move txn from shema to a separate module (use C API instead of FFI)
Igor Munkin
imun at tarantool.org
Thu Nov 28 16:00:05 MSK 2019
Kostja,
On 28.11.19, Konstantin Osipov wrote:
> * Leonid Vasiliev <lvasiliev at tarantool.org> [19/11/28 11:10]:
> > 4) About converts others txn functions from FFI to C-API:
> > I think it's a good practice, use one or the other (FFI or C-API) in module
>
> My complaint is about this part. Jit trace can go through FFI but
> can't go through Lua/C. This is why many of these functions were
> in FFI in the first place.
>
> We could make a conscious choice to make all box API Lua/C - but
> this will literally kill JIT, so then why not just move to
LuaJIT v2.1 provides trace stitching feature (for more info see
here[1]), so strictly saying, it doesn't kill JIT but yes, performance
is nerfed comparing to traces recorded for an FFI code. I have no
proofs/benchmarks for now, so it sounds kinda bullshit, but I look
forward to make some in the nearest future.
Furthermore, FFI is not a silver bullet considering this issue[2].
> plain Lua 5.3 and forget about grievances with LuaJIT altogether.
JIT is not the only killing feature provided by LuaJIT and
infrastructure for Lua 5.1 is much richer.
>
> Nick Zavaritsky had a patch that would detect sandwich stacks in
> runtime and assert. Nobody had time to look at it back then -
Could you please provide the issue/link for this changeset, I'll take a
look on it with pleasure.
> everyone was busy with vinyl and sql.
>
> Why not dig it up to protect from future erosion of the code base?
>
> This would be more valuable contribution than just falling back to
> Lua/C for everything.
I have a tiny patch for JIT in my branch[3], respecting most remarks
given by Mr Egorov, however it's not yet fully tested and there're
still some pitfalls not being fixed. I'm working on it for now.
>
> --
> Konstantin Osipov, Moscow, Russia
[1]: http://wiki.luajit.org/NYI
[2]: https://github.com/tarantool/tarantool/issues/4630
[3]: https://github.com/tarantool/luajit/commit/a3a47015842c7e7c1bee2f4fc30345aa7d4e5dba
--
Best regards,
IM
More information about the Tarantool-patches
mailing list