Tarantool development patches archive
 help / color / mirror / Atom feed
* [Tarantool-patches] [PATCH 00/13] Popen Lua API: preliminary patches
@ 2020-04-10  2:50 Alexander Turenko
  2020-04-10  2:50 ` [Tarantool-patches] [PATCH 01/13] popen: require popen handle to be non-NULL Alexander Turenko
                   ` (13 more replies)
  0 siblings, 14 replies; 36+ messages in thread
From: Alexander Turenko @ 2020-04-10  2:50 UTC (permalink / raw)
  To: Cyrill Gorcunov; +Cc: tarantool-patches

https://github.com/tarantool/tarantool/issues/4031
https://github.com/tarantool/tarantool/tree/Totktonada/gh-4031-popen-lua-api-preparation

I working on Lua API for popen. During the development I found that
several changes are necessary for the underlying popen engine. This
patch series accumulates them.

Here are bugfixes, API and behaviour changes. Hope they are explained
enough in the commit messages.

Please, give more attention to the 'popen: decouple logger fd from
stderr' patch: it is easy to make a mistake with those fds juggling and
I have very sparse time to test it as it deserves (I made manual testing
for the described cases however).

Those changes can be partially tested via Lua API draft. It is on my
temporary branch Totktonada/gh-4031-popen-12-workbranch (see also
test/app-tap/popen.test.lua on the branch).

Alexander Turenko (13):
  popen: require popen handle to be non-NULL
  popen: remove retval from popen_state()
  popen: add missed diag_set in popen_signal/delete
  popen: add logging of fds closed in a child
  say: allow to set a logger file descriptor
  popen: decouple logger fd from stderr
  popen: add const qualifier to popen_write_timeout
  popen: unblock popen_read_timeout at a first byte
  popen: remove redundant fd check before perform IO
  popen: add missed diag_set() in popen IO functions
  coio: fix obsoleted comment in coio_write_timeout
  coio: add *_noxc read / write functions
  popen: use of exception safe functions for IO

 src/lib/core/coio.cc   |  43 +++++-
 src/lib/core/coio.h    |  41 ++++++
 src/lib/core/popen.c   | 320 ++++++++++++++++++++++++++++++-----------
 src/lib/core/popen.h   |   4 +-
 src/lib/core/say.c     |   6 +
 src/lib/core/say.h     |   7 +-
 test/unit/popen.c      |   8 +-
 test/unit/popen.result |  13 +-
 8 files changed, 343 insertions(+), 99 deletions(-)

-- 
2.25.0

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

end of thread, other threads:[~2020-04-12 12:51 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-10  2:50 [Tarantool-patches] [PATCH 00/13] Popen Lua API: preliminary patches Alexander Turenko
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 01/13] popen: require popen handle to be non-NULL Alexander Turenko
2020-04-10  7:16   ` Cyrill Gorcunov
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 02/13] popen: remove retval from popen_state() Alexander Turenko
2020-04-10  7:17   ` Cyrill Gorcunov
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 03/13] popen: add missed diag_set in popen_signal/delete Alexander Turenko
2020-04-10  7:23   ` Cyrill Gorcunov
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 04/13] popen: add logging of fds closed in a child Alexander Turenko
2020-04-10  7:46   ` Cyrill Gorcunov
2020-04-10 12:19     ` Alexander Turenko
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 05/13] say: allow to set a logger file descriptor Alexander Turenko
2020-04-10  8:33   ` Cyrill Gorcunov
2020-04-10 12:19     ` Alexander Turenko
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 06/13] popen: decouple logger fd from stderr Alexander Turenko
2020-04-10  9:18   ` Cyrill Gorcunov
2020-04-10 12:20     ` Alexander Turenko
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 07/13] popen: add const qualifier to popen_write_timeout Alexander Turenko
2020-04-10  8:04   ` Cyrill Gorcunov
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 08/13] popen: unblock popen_read_timeout at a first byte Alexander Turenko
2020-04-10  8:10   ` Cyrill Gorcunov
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 09/13] popen: remove redundant fd check before perform IO Alexander Turenko
2020-04-10  8:18   ` Cyrill Gorcunov
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 10/13] popen: add missed diag_set() in popen IO functions Alexander Turenko
2020-04-10  8:28   ` Cyrill Gorcunov
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 11/13] coio: fix obsoleted comment in coio_write_timeout Alexander Turenko
2020-04-10  8:28   ` Cyrill Gorcunov
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 12/13] coio: add *_noxc read / write functions Alexander Turenko
2020-04-10  8:05   ` Konstantin Osipov
2020-04-10  8:17     ` Cyrill Gorcunov
2020-04-10 11:57     ` Alexander Turenko
2020-04-12 12:51     ` Alexander Turenko
2020-04-10  8:29   ` Cyrill Gorcunov
2020-04-10  2:50 ` [Tarantool-patches] [PATCH 13/13] popen: use of exception safe functions for IO Alexander Turenko
2020-04-10 11:50   ` Cyrill Gorcunov
2020-04-10 12:21     ` Alexander Turenko
2020-04-10 16:36 ` [Tarantool-patches] [PATCH 00/13] Popen Lua API: preliminary patches Kirill Yukhin

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