Tarantool development patches archive
 help / color / mirror / Atom feed
* [Tarantool-patches] [PATCH v4 0/6] box/func: implement cfunc Lua module
@ 2020-10-01 13:51 Cyrill Gorcunov
  2020-10-01 13:51 ` [Tarantool-patches] [PATCH v4 1/6] box/func: factor out c function entry structure Cyrill Gorcunov
                   ` (6 more replies)
  0 siblings, 7 replies; 15+ messages in thread
From: Cyrill Gorcunov @ 2020-10-01 13:51 UTC (permalink / raw)
  To: tml; +Cc: Vladislav Shpilevoy, Alexander Turenko

The cfunc module provide a way to execute C stored procedures
on read only nodes without registring them in `_func` system space.

The series implements a bare minimum. There was a request to make
cfunc been Lua object with appropriate methods. If this is really
preferred then I'll implement this wrapping Lua code on top. I mean
that currently all operations are done via

 > require('cfunc').[create|drop|call|reload]

interface while there was a proposal to operate as

 > a = require('cfunc').create
 > a:call(args)

Please take a look once time permit.

v1-v3 are development ones and not sent.

branch gorcunov/gh-4642-func-ro-4
issue https://github.com/tarantool/tarantool/issues/4642

Cyrill Gorcunov (6):
  box/func: factor out c function entry structure
  box/func: provide module_sym_call
  box/func: more detailed error in module reloading
  box/func: export func_split_name helper
  box/func: implement cfunc Lua module
  test: box/cfunc -- add simple module test

 src/box/CMakeLists.txt  |   1 +
 src/box/func.c          | 259 ++++++++++++++--------------
 src/box/func.h          |  78 +++++++++
 src/box/lua/cfunc.c     | 362 ++++++++++++++++++++++++++++++++++++++++
 src/box/lua/cfunc.h     |  55 ++++++
 src/box/lua/init.c      |   2 +
 test/box/CMakeLists.txt |   2 +
 test/box/cfunc.result   | 116 +++++++++++++
 test/box/cfunc.test.lua |  56 +++++++
 test/box/cfunc1.c       |  46 +++++
 test/box/cfunc2.c       |  46 +++++
 test/box/suite.ini      |   2 +-
 12 files changed, 894 insertions(+), 131 deletions(-)
 create mode 100644 src/box/lua/cfunc.c
 create mode 100644 src/box/lua/cfunc.h
 create mode 100644 test/box/cfunc.result
 create mode 100644 test/box/cfunc.test.lua
 create mode 100644 test/box/cfunc1.c
 create mode 100644 test/box/cfunc2.c


base-commit: d25ecab48832340dc2ef9c072cf506924c03af52
-- 
2.26.2

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2020-10-06 12:55 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-01 13:51 [Tarantool-patches] [PATCH v4 0/6] box/func: implement cfunc Lua module Cyrill Gorcunov
2020-10-01 13:51 ` [Tarantool-patches] [PATCH v4 1/6] box/func: factor out c function entry structure Cyrill Gorcunov
2020-10-01 13:51 ` [Tarantool-patches] [PATCH v4 2/6] box/func: provide module_sym_call Cyrill Gorcunov
2020-10-01 13:51 ` [Tarantool-patches] [PATCH v4 3/6] box/func: more detailed error in module reloading Cyrill Gorcunov
2020-10-01 13:51 ` [Tarantool-patches] [PATCH v4 4/6] box/func: export func_split_name helper Cyrill Gorcunov
2020-10-01 13:51 ` [Tarantool-patches] [PATCH v4 5/6] box/func: implement cfunc Lua module Cyrill Gorcunov
2020-10-03 13:55   ` Vladislav Shpilevoy
2020-10-05 10:31     ` Cyrill Gorcunov
2020-10-05 21:59       ` Vladislav Shpilevoy
2020-10-06 12:55         ` Cyrill Gorcunov
2020-10-01 13:51 ` [Tarantool-patches] [PATCH v4 6/6] test: box/cfunc -- add simple module test Cyrill Gorcunov
2020-10-03 13:55   ` Vladislav Shpilevoy
2020-10-03 13:55 ` [Tarantool-patches] [PATCH v4 0/6] box/func: implement cfunc Lua module Vladislav Shpilevoy
2020-10-05 11:51   ` Cyrill Gorcunov
2020-10-05 21:59     ` Vladislav Shpilevoy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox