[Tarantool-patches] [PATCH v2 luajit 30/30] test: disable too depth recursive PUC Lua test

Sergey Kaplun skaplun at tarantool.org
Fri Mar 26 19:45:54 MSK 2021


Hi, thanks for the review!

On 26.03.21, Sergey Ostanevich wrote:
> Did you look into the fiber_new_ex() interface?
> I bet it’s doable to create a fiber with big enough stack.

Yes, there is necessary `stack_size` field in given
`struct fiber_attr`. But I don't see a Lua interface for stack
manipulation. May be it is necessary to create fiber via preparing
chunk in <luajit-test-init.lua> and use it. Looks like out of scope of
this ticket. Is it necessary to create a follow-up ticket?

> 
> Again, not about follow-ups: LGTM.
> Sergos
> 
> 
> > On 26 Mar 2021, at 10:43, Sergey Kaplun <skaplun at tarantool.org> wrote:
> > 
> > The first Tarantool's fiber has only 512Kb of stack.
> > It is not enough for depth recursive call in the test for
> > `string.gsub()`.
> > 
> > This patch disables test leads to Tarantool crash.
> > 
> > Relates to tarantool/tarantool#5782
> > Resolves tarantool/tarantool#5845
> > Part of tarantool/tarantool#4473
> > ---
> > test/PUC-Lua-5.1-tests/pm.lua | 6 +++++-
> > 1 file changed, 5 insertions(+), 1 deletion(-)
> > 
> > diff --git a/test/PUC-Lua-5.1-tests/pm.lua b/test/PUC-Lua-5.1-tests/pm.lua
> > index b159b6b..c6e42df 100644
> > --- a/test/PUC-Lua-5.1-tests/pm.lua
> > +++ b/test/PUC-Lua-5.1-tests/pm.lua
> > @@ -207,7 +207,11 @@ function rev (s)
> > end
> > 
> > local x = string.rep('012345', 10)
> > -assert(rev(rev(x)) == x)
> > +-- The first Tarantool's fiber has only 512Kb of stack.
> > +-- It is not enough for this recursive call.
> > +-- See also https://github.com/tarantool/tarantool/issues/5782.
> > +-- FIXME: The test is disabled for Tarantool binary.
> > +-- assert(rev(rev(x)) == x)
> > 
> > 
> > -- gsub with tables
> > -- 
> > 2.31.0
> > 
> 

-- 
Best regards,
Sergey Kaplun


More information about the Tarantool-patches mailing list