Tarantool development patches archive
 help / color / mirror / Atom feed
* [PATCH 0/2 v2] fio: show function name in all fio errors
@ 2018-12-04 16:00 Roman Khabibov
  2018-12-04 16:00 ` [PATCH 1/2 v2] lua: modify the error message in 'fio.pathjoin' Roman Khabibov
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Roman Khabibov @ 2018-12-04 16:00 UTC (permalink / raw)
  To: tarantool-patches; +Cc: vdavydov.dev

Branch: https://github.com/tarantool/tarantool/tree/romanhabibov/gh-3580-err-msg-pathjoin
Issue: https://github.com/tarantool/tarantool/issues/3580

Roman Khabibov (1):
  lua: modify the error message in 'fio.pathjoin'

Vladislav Shpilevoy (1):
  fio: show function name in all fio errors

 src/lua/fio.lua       | 30 +++++++++++++++---------------
 test/app/fio.result   | 13 +++++++++++++
 test/app/fio.test.lua |  5 +++++
 3 files changed, 33 insertions(+), 15 deletions(-)

-- 
2.19.1

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

* [PATCH 1/2 v2] lua: modify the error message in 'fio.pathjoin'
  2018-12-04 16:00 [PATCH 0/2 v2] fio: show function name in all fio errors Roman Khabibov
@ 2018-12-04 16:00 ` Roman Khabibov
  2018-12-04 16:00 ` [PATCH 2/2 v2] fio: show function name in all fio errors Roman Khabibov
  2018-12-04 16:12 ` [PATCH 0/2 " Vladimir Davydov
  2 siblings, 0 replies; 10+ messages in thread
From: Roman Khabibov @ 2018-12-04 16:00 UTC (permalink / raw)
  To: tarantool-patches; +Cc: vdavydov.dev

Display line number with error and fix the bug with bad argument number.

Closes #3580
---
 src/lua/fio.lua       |  4 ++--
 test/app/fio.result   | 13 +++++++++++++
 test/app/fio.test.lua |  5 +++++
 3 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/src/lua/fio.lua b/src/lua/fio.lua
index 55faebdcb..1d0bb4bd1 100644
--- a/src/lua/fio.lua
+++ b/src/lua/fio.lua
@@ -213,7 +213,7 @@ fio.pathjoin = function(...)
     while i <= len do
         local sp = select(i, ...)
         if sp == nil then
-            error("Undefined path part "..i)
+            error("fio.pathjoin() undefined path part "..i, 2)
         end
 
         sp = tostring(sp)
@@ -233,7 +233,7 @@ fio.pathjoin = function(...)
     while i <= len do
         local sp = select(i, ...)
         if sp == nil then
-            error("Undefined path part")
+            error("fio.pathjoin() undefined path part "..i, 2)
         end
 
         sp = tostring(sp)
diff --git a/test/app/fio.result b/test/app/fio.result
index b7a1f65c6..9777a0aec 100644
--- a/test/app/fio.result
+++ b/test/app/fio.result
@@ -55,6 +55,19 @@ fio.pathjoin('abc', 'awdeq///qweqwqwe///', "//asda//")
 ---
 - abc/awdeq/qweqwqwe/asda
 ...
+--gh-3580 Modify the error message in 'fio.pathjoin'.
+fio.pathjoin(nil)
+---
+- error: fio.pathjoin() undefined path part 1
+...
+fio.pathjoin('abc', nil)
+---
+- error: fio.pathjoin() undefined path part 2
+...
+fio.pathjoin('abc', 'cde', nil)
+---
+- error: fio.pathjoin() undefined path part 3
+...
 -- basename
 st, err = pcall(fio.basename, nil)
 ---
diff --git a/test/app/fio.test.lua b/test/app/fio.test.lua
index 4f34fd11c..b6c79648c 100644
--- a/test/app/fio.test.lua
+++ b/test/app/fio.test.lua
@@ -18,6 +18,11 @@ fio.pathjoin('/', '/cde')
 fio.pathjoin('/a', '/')
 fio.pathjoin('abc', 'awdeq///qweqwqwe///', "//asda//")
 
+--gh-3580 Modify the error message in 'fio.pathjoin'.
+fio.pathjoin(nil)
+fio.pathjoin('abc', nil)
+fio.pathjoin('abc', 'cde', nil)
+
 -- basename
 st, err = pcall(fio.basename, nil)
 st
-- 
2.19.1

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

* [PATCH 2/2 v2] fio: show function name in all fio errors
  2018-12-04 16:00 [PATCH 0/2 v2] fio: show function name in all fio errors Roman Khabibov
  2018-12-04 16:00 ` [PATCH 1/2 v2] lua: modify the error message in 'fio.pathjoin' Roman Khabibov
@ 2018-12-04 16:00 ` Roman Khabibov
  2018-12-04 16:12 ` [PATCH 0/2 " Vladimir Davydov
  2 siblings, 0 replies; 10+ messages in thread
From: Roman Khabibov @ 2018-12-04 16:00 UTC (permalink / raw)
  To: tarantool-patches; +Cc: vdavydov.dev, Vladislav Shpilevoy

From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org>

Otherwise it is hard to debug code, throwing
exceptions. fio.pathjoin was just one example among
many.

Follow up #3580
---
 src/lua/fio.lua | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/src/lua/fio.lua b/src/lua/fio.lua
index 1d0bb4bd1..f279c9f10 100644
--- a/src/lua/fio.lua
+++ b/src/lua/fio.lua
@@ -126,7 +126,7 @@ fio_methods.seek = function(self, offset, whence)
     end
     if type(whence) == 'string' then
         if fio.c.seek[whence] == nil then
-            error(sprintf("Unknown whence: %s", whence))
+            error(sprintf("fio.seek(): unknown whence: %s", whence), 2)
         end
         whence = fio.c.seek[whence]
     else
@@ -164,7 +164,7 @@ fio.open = function(path, flags, mode)
     local iflag = 0
     local imode = 0
     if type(path) ~= 'string' then
-        error("Usage open(path[, flags[, mode]])")
+        error("Usage open(path[, flags[, mode]])", 2)
     end
     if type(flags) ~= 'table' then
         flags = { flags }
@@ -179,7 +179,7 @@ fio.open = function(path, flags, mode)
             iflag = bit.bor(iflag, flag)
         else
             if fio.c.flag[ flag ] == nil then
-                error(sprintf("Unknown flag: %s", flag))
+                error(sprintf("fio.open(): unknown flag: %s", flag), 2)
             end
             iflag = bit.bor(iflag, fio.c.flag[ flag ])
         end
@@ -188,7 +188,7 @@ fio.open = function(path, flags, mode)
     for _, m in pairs(mode) do
         if type(m) == 'string' then
             if fio.c.mode[m] == nil then
-                error(sprintf("Unknown mode: %s", m))
+                error(sprintf("fio.open(): unknown mode: %s", m), 2)
             end
             imode = bit.bor(imode, fio.c.mode[m])
         else
@@ -254,7 +254,7 @@ end
 
 fio.basename = function(path, suffix)
     if type(path) ~= 'string' then
-        error("Usage fio.basename(path[, suffix])")
+        error("Usage fio.basename(path[, suffix])", 2)
     end
 
     path = tostring(path)
@@ -273,7 +273,7 @@ end
 
 fio.dirname = function(path)
     if type(path) ~= 'string' then
-        error("Usage fio.dirname(path)")
+        error("Usage fio.dirname(path)", 2)
     end
     path = ffi.new('char[?]', #path + 1, path)
     return ffi.string(ffi.C.dirname(path))
@@ -297,7 +297,7 @@ fio.abspath = function(path)
     -- following established conventions of fio module:
     -- letting nil through and converting path to string
     if path == nil then
-        error("Usage fio.abspath(path)")
+        error("Usage fio.abspath(path)", 2)
     end
     path = path
     local joined_path = ''
@@ -319,14 +319,14 @@ end
 
 fio.chdir = function(path)
     if type(path)~='string' then
-        error("Usage: fio.chdir(path)")
+        error("Usage: fio.chdir(path)", 2)
     end
     return ffi.C.chdir(path) == 0
 end
 
 fio.listdir = function(path)
     if type(path) ~= 'string' then
-        error("Usage: fio.listdir(path)")
+        error("Usage: fio.listdir(path)", 2)
     end
     local str, err = internal.listdir(path)
     if err ~= nil then
@@ -345,7 +345,7 @@ end
 
 fio.mktree = function(path, mode)
     if type(path) ~= "string" then
-        error("Usage: fio.mktree(path[, mode])")
+        error("Usage: fio.mktree(path[, mode])", 2)
     end
     path = fio.abspath(path)
 
@@ -371,7 +371,7 @@ end
 
 fio.rmtree = function(path)
     if type(path) ~= 'string' then
-        error("Usage: fio.rmtree(path)")
+        error("Usage: fio.rmtree(path)", 2)
     end
     local status, err
     path = fio.abspath(path)
@@ -402,7 +402,7 @@ end
 
 fio.copyfile = function(from, to)
     if type(from) ~= 'string' or type(to) ~= 'string' then
-        error('Usage: fio.copyfile(from, to)')
+        error('Usage: fio.copyfile(from, to)', 2)
     end
     local st = fio.stat(to)
     if st and st:is_dir() then
@@ -417,7 +417,7 @@ end
 
 fio.copytree = function(from, to)
     if type(from) ~= 'string' or type(to) ~= 'string' then
-        error('Usage: fio.copytree(from, to)')
+        error('Usage: fio.copytree(from, to)', 2)
     end
     local status, reason
     local st = fio.stat(from)
-- 
2.19.1

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

* Re: [PATCH 0/2 v2] fio: show function name in all fio errors
  2018-12-04 16:00 [PATCH 0/2 v2] fio: show function name in all fio errors Roman Khabibov
  2018-12-04 16:00 ` [PATCH 1/2 v2] lua: modify the error message in 'fio.pathjoin' Roman Khabibov
  2018-12-04 16:00 ` [PATCH 2/2 v2] fio: show function name in all fio errors Roman Khabibov
@ 2018-12-04 16:12 ` Vladimir Davydov
  2018-12-07  7:25   ` Alexander Turenko
  2 siblings, 1 reply; 10+ messages in thread
From: Vladimir Davydov @ 2018-12-04 16:12 UTC (permalink / raw)
  To: Alexander Turenko; +Cc: Roman Khabibov, tarantool-patches

Alexander, please take a look.

On Tue, Dec 04, 2018 at 07:00:36PM +0300, Roman Khabibov wrote:
> Branch: https://github.com/tarantool/tarantool/tree/romanhabibov/gh-3580-err-msg-pathjoin
> Issue: https://github.com/tarantool/tarantool/issues/3580
> 
> Roman Khabibov (1):
>   lua: modify the error message in 'fio.pathjoin'
> 
> Vladislav Shpilevoy (1):
>   fio: show function name in all fio errors
> 
>  src/lua/fio.lua       | 30 +++++++++++++++---------------
>  test/app/fio.result   | 13 +++++++++++++
>  test/app/fio.test.lua |  5 +++++
>  3 files changed, 33 insertions(+), 15 deletions(-)

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

* Re: [PATCH 0/2 v2] fio: show function name in all fio errors
  2018-12-04 16:12 ` [PATCH 0/2 " Vladimir Davydov
@ 2018-12-07  7:25   ` Alexander Turenko
  2018-12-08 13:41     ` [tarantool-patches] " roman
  0 siblings, 1 reply; 10+ messages in thread
From: Alexander Turenko @ 2018-12-07  7:25 UTC (permalink / raw)
  To: Roman Khabibov, Vladislav Shpilevoy; +Cc: Vladimir Davydov, tarantool-patches

Hi all!

I don't think we should hide a real function where an error occurs. We
never know on what level the error was introduced. Let's see example:

```
local fio = require('fio')

local function read_app_config(app_name)
    local config_dir = os.getenv('TARANTOOL_APP_CONFIG_DIR') or '/etc'
    local config_path = fio.pathjoin(config_dir, app_name .. '.cfg.lua')
    dofile(config_path) -- exposes config = { ... } variable
    return config or {}
end

local function init()
    local config = read_app_config(os.getenv('TARANTOOL_APP_NAME'))
    ... do some initialization ...
end
```

When TARANTOOL_APP_NAME is not set in the example above the real error
is in the init() function and not in the read_app_config().

An application can use xpcall + debug.traceback to show or log
unexpected (or even expected) errors with full traceback.

I think within scope of this issue we should only add function names
into error messages and add path part number, but remove the second
parameter of the error() function where it is used across the fio
module.

WBR, Alexander Turenko.

On Tue, Dec 04, 2018 at 07:12:39PM +0300, Vladimir Davydov wrote:
> Alexander, please take a look.
> 
> On Tue, Dec 04, 2018 at 07:00:36PM +0300, Roman Khabibov wrote:
> > Branch: https://github.com/tarantool/tarantool/tree/romanhabibov/gh-3580-err-msg-pathjoin
> > Issue: https://github.com/tarantool/tarantool/issues/3580
> > 
> > Roman Khabibov (1):
> >   lua: modify the error message in 'fio.pathjoin'
> > 
> > Vladislav Shpilevoy (1):
> >   fio: show function name in all fio errors
> > 
> >  src/lua/fio.lua       | 30 +++++++++++++++---------------
> >  test/app/fio.result   | 13 +++++++++++++
> >  test/app/fio.test.lua |  5 +++++
> >  3 files changed, 33 insertions(+), 15 deletions(-)

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

* Re: [tarantool-patches] Re: [PATCH 0/2 v2] fio: show function name in all fio errors
  2018-12-07  7:25   ` Alexander Turenko
@ 2018-12-08 13:41     ` roman
  2018-12-08 14:36       ` Alexander Turenko
  2018-12-09  9:36       ` Vladimir Davydov
  0 siblings, 2 replies; 10+ messages in thread
From: roman @ 2018-12-08 13:41 UTC (permalink / raw)
  To: tarantool-patches, Alexander Turenko, Vladislav Shpilevoy
  Cc: Vladimir Davydov


Hi! Thanks for review.
> I think within scope of this issue we should only add function names
> into error messages and add path part number, but remove the second
> parameter of the error() function where it is used across the fio
> module.

Removed.

diff --git a/src/lua/fio.lua b/src/lua/fio.lua
index 55faebdcb..2fee13e2d 100644
--- a/src/lua/fio.lua
+++ b/src/lua/fio.lua
@@ -126,7 +126,7 @@ fio_methods.seek = function(self, offset, whence)
      end
      if type(whence) == 'string' then
          if fio.c.seek[whence] == nil then
-            error(sprintf("Unknown whence: %s", whence))
+            error(sprintf("fio.seek(): unknown whence: %s", whence))
          end
          whence = fio.c.seek[whence]
      else
@@ -179,7 +179,7 @@ fio.open = function(path, flags, mode)
              iflag = bit.bor(iflag, flag)
          else
              if fio.c.flag[ flag ] == nil then
-                error(sprintf("Unknown flag: %s", flag))
+                error(sprintf("fio.open(): unknown flag: %s", flag))
              end
              iflag = bit.bor(iflag, fio.c.flag[ flag ])
          end
@@ -188,7 +188,7 @@ fio.open = function(path, flags, mode)
      for _, m in pairs(mode) do
          if type(m) == 'string' then
              if fio.c.mode[m] == nil then
-                error(sprintf("Unknown mode: %s", m))
+                error(sprintf("fio.open(): unknown mode: %s", m))
              end
              imode = bit.bor(imode, fio.c.mode[m])
          else
@@ -213,7 +213,7 @@ fio.pathjoin = function(...)
      while i <= len do
          local sp = select(i, ...)
          if sp == nil then
-            error("Undefined path part "..i)
+            error("fio.pathjoin() undefined path part "..i)
          end

          sp = tostring(sp)
@@ -233,7 +233,7 @@ fio.pathjoin = function(...)
      while i <= len do
          local sp = select(i, ...)
          if sp == nil then
-            error("Undefined path part")
+            error("fio.pathjoin() undefined path part "..i)
          end

          sp = tostring(sp)
diff --git a/test/app/fio.result b/test/app/fio.result
index b7a1f65c6..38d908276 100644
--- a/test/app/fio.result
+++ b/test/app/fio.result
@@ -55,6 +55,19 @@ fio.pathjoin('abc', 'awdeq///qweqwqwe///', "//asda//")
  ---
  - abc/awdeq/qweqwqwe/asda
  ...
+--gh-3580 Modify the error message in 'fio.pathjoin'.
+fio.pathjoin(nil)
+---
+- error: 'builtin/fio.lua:216: fio.pathjoin() undefined path part 1'
+...
+fio.pathjoin('abc', nil)
+---
+- error: 'builtin/fio.lua:236: fio.pathjoin() undefined path part 2'
+...
+fio.pathjoin('abc', 'cde', nil)
+---
+- error: 'builtin/fio.lua:236: fio.pathjoin() undefined path part 3'
+...
  -- basename
  st, err = pcall(fio.basename, nil)
  ---
diff --git a/test/app/fio.test.lua b/test/app/fio.test.lua
index 4f34fd11c..b6c79648c 100644
--- a/test/app/fio.test.lua
+++ b/test/app/fio.test.lua
@@ -18,6 +18,11 @@ fio.pathjoin('/', '/cde')
  fio.pathjoin('/a', '/')
  fio.pathjoin('abc', 'awdeq///qweqwqwe///', "//asda//")

+--gh-3580 Modify the error message in 'fio.pathjoin'.
+fio.pathjoin(nil)
+fio.pathjoin('abc', nil)
+fio.pathjoin('abc', 'cde', nil)
+
  -- basename
  st, err = pcall(fio.basename, nil)
  st

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

* Re: [tarantool-patches] Re: [PATCH 0/2 v2] fio: show function name in all fio errors
  2018-12-08 13:41     ` [tarantool-patches] " roman
@ 2018-12-08 14:36       ` Alexander Turenko
  2018-12-08 15:02         ` roman
  2018-12-09  9:36       ` Vladimir Davydov
  1 sibling, 1 reply; 10+ messages in thread
From: Alexander Turenko @ 2018-12-08 14:36 UTC (permalink / raw)
  To: roman; +Cc: tarantool-patches, Vladislav Shpilevoy, Vladimir Davydov

On Sat, Dec 08, 2018 at 04:41:08PM +0300, roman wrote:
> 
> Hi! Thanks for review.
> > I think within scope of this issue we should only add function names
> > into error messages and add path part number, but remove the second
> > parameter of the error() function where it is used across the fio
> > module.
> 
> Removed.

Now the code looks good to me.

But commit messages (of both commits) now do not reflect code changes.
Please, squash commits and fix the commit message.

WBR, Alexander Turenko.

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

* Re: [tarantool-patches] Re: [PATCH 0/2 v2] fio: show function name in all fio errors
  2018-12-08 14:36       ` Alexander Turenko
@ 2018-12-08 15:02         ` roman
  2018-12-08 15:12           ` Alexander Turenko
  0 siblings, 1 reply; 10+ messages in thread
From: roman @ 2018-12-08 15:02 UTC (permalink / raw)
  To: tarantool-patches, Alexander Turenko
  Cc: Vladislav Shpilevoy, Vladimir Davydov

> Now the code looks good to me.
>
> But commit messages (of both commits) now do not reflect code changes.
> Please, squash commits and fix the commit message.
>
> WBR, Alexander Turenko.
Done.

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

* Re: [tarantool-patches] Re: [PATCH 0/2 v2] fio: show function name in all fio errors
  2018-12-08 15:02         ` roman
@ 2018-12-08 15:12           ` Alexander Turenko
  0 siblings, 0 replies; 10+ messages in thread
From: Alexander Turenko @ 2018-12-08 15:12 UTC (permalink / raw)
  To: roman; +Cc: tarantool-patches, Vladislav Shpilevoy, Vladimir Davydov

On Sat, Dec 08, 2018 at 06:02:43PM +0300, roman wrote:
> > Now the code looks good to me.
> > 
> > But commit messages (of both commits) now do not reflect code changes.
> > Please, squash commits and fix the commit message.
> > 
> > WBR, Alexander Turenko.
> Done.

Now ok.

Please, proceed further with Vova.

I see the patch is based on 1.10. Maybe maintainers will ask you to base
it on top of 2.1.

WBR, Alexander Turenko.

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

* Re: [tarantool-patches] Re: [PATCH 0/2 v2] fio: show function name in all fio errors
  2018-12-08 13:41     ` [tarantool-patches] " roman
  2018-12-08 14:36       ` Alexander Turenko
@ 2018-12-09  9:36       ` Vladimir Davydov
  1 sibling, 0 replies; 10+ messages in thread
From: Vladimir Davydov @ 2018-12-09  9:36 UTC (permalink / raw)
  To: roman; +Cc: tarantool-patches, Alexander Turenko, Vladislav Shpilevoy

On Sat, Dec 08, 2018 at 04:41:08PM +0300, roman wrote:
> diff --git a/src/lua/fio.lua b/src/lua/fio.lua
> index 55faebdcb..2fee13e2d 100644
> --- a/src/lua/fio.lua
> +++ b/src/lua/fio.lua
> @@ -188,7 +188,7 @@ fio.open = function(path, flags, mode)
>      for _, m in pairs(mode) do
>          if type(m) == 'string' then
>              if fio.c.mode[m] == nil then
> -                error(sprintf("Unknown mode: %s", m))
> +                error(sprintf("fio.open(): unknown mode: %s", m))

Here you use a colon (:) ...

>              end
>              imode = bit.bor(imode, fio.c.mode[m])
>          else
> @@ -213,7 +213,7 @@ fio.pathjoin = function(...)
>      while i <= len do
>          local sp = select(i, ...)
>          if sp == nil then
> -            error("Undefined path part "..i)
> +            error("fio.pathjoin() undefined path part "..i)

... while here you don't. Please be consistent throughout the code.

Also, there's already some inconsistency among existing error messages:

        error("Usage open(path[, flags[, mode]])")
	             ^^^^ fio prefix missing

        error("Usage fio.basename(path[, suffix])")
	           ^^^ semicolon missing

        error("Usage: fio.chdir(path)")

Please fix them all in the same patch. I think they all should look
like:

        error("Usage: fio.function(args)")

Don't forget to update the commit message accordingly (something like
"fio: cleanup error messages") and reset the author (git commit --amend
--reset-author) - for some reason Vladislav authored this commit.

> diff --git a/test/app/fio.result b/test/app/fio.result
> index b7a1f65c6..38d908276 100644
> --- a/test/app/fio.result
> +++ b/test/app/fio.result
> @@ -55,6 +55,19 @@ fio.pathjoin('abc', 'awdeq///qweqwqwe///', "//asda//")
>  ---
>  - abc/awdeq/qweqwqwe/asda
>  ...
> +--gh-3580 Modify the error message in 'fio.pathjoin'.

This is a confusing comment IMO. Let's just say something like

-- gh-3580: Check that error messages are descriptive enough.

> +fio.pathjoin(nil)
> +---
> +- error: 'builtin/fio.lua:216: fio.pathjoin() undefined path part 1'
> +...
> +fio.pathjoin('abc', nil)
> +---
> +- error: 'builtin/fio.lua:236: fio.pathjoin() undefined path part 2'
> +...
> +fio.pathjoin('abc', 'cde', nil)
> +---
> +- error: 'builtin/fio.lua:236: fio.pathjoin() undefined path part 3'
> +...

You patched error messages returned by several fio functions, but tested
only one them. Please check all fio functions while we are at it.

If you agree with all my comments, please don't reply to this email.
Instead send v2 with a proper change log in a new mailing thread.

Thanks.

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

end of thread, other threads:[~2018-12-09  9:36 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-04 16:00 [PATCH 0/2 v2] fio: show function name in all fio errors Roman Khabibov
2018-12-04 16:00 ` [PATCH 1/2 v2] lua: modify the error message in 'fio.pathjoin' Roman Khabibov
2018-12-04 16:00 ` [PATCH 2/2 v2] fio: show function name in all fio errors Roman Khabibov
2018-12-04 16:12 ` [PATCH 0/2 " Vladimir Davydov
2018-12-07  7:25   ` Alexander Turenko
2018-12-08 13:41     ` [tarantool-patches] " roman
2018-12-08 14:36       ` Alexander Turenko
2018-12-08 15:02         ` roman
2018-12-08 15:12           ` Alexander Turenko
2018-12-09  9:36       ` Vladimir Davydov

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