Did you look into the fiber_new_ex() interface?
I bet it’s doable to create a fiber with big enough stack.

Again, not about follow-ups: LGTM.
Sergos


On 26 Mar 2021, at 10:43, Sergey Kaplun <skaplun@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