Public bug reported:
Server would crash on second call of this function.
The problem is, that socket object creates coio one that bind to current fiber,
and will
resume it in different fiber context after complete io operation.
function test()
local s = box.socket.tcp()
s:connect('127.0.0.1', box.cfg.primary_port)
box.fiber.resume( box.fiber.create(function()
box.fiber.detach()
while true do
s:recv(12)
print("ping received")
end
end) )
s:send(box.pack('iii', 65280, 0, 1))
return 1
end
test()
test() -- crash
** Affects: tarantool
Importance: High
Assignee: Dmitry Simonenko (pmwkaa)
Status: New
** Changed in: tarantool
Assignee: (unassigned) => Dmitry Simonenko (pmwkaa)
** Changed in: tarantool
Importance: Undecided => High
** Changed in: tarantool
Milestone: None => 1.4.9
--
You received this bug notification because you are a member of Tarantool
Development Team, which is subscribed to tarantool.
https://bugs.launchpad.net/bugs/1160869
Title:
incorrect fiber call order
Status in Tarantool - an efficient in-memory data store:
New
Bug description:
Server would crash on second call of this function.
The problem is, that socket object creates coio one that bind to current
fiber, and will
resume it in different fiber context after complete io operation.
function test()
local s = box.socket.tcp()
s:connect('127.0.0.1', box.cfg.primary_port)
box.fiber.resume( box.fiber.create(function()
box.fiber.detach()
while true do
s:recv(12)
print("ping received")
end
end) )
s:send(box.pack('iii', 65280, 0, 1))
return 1
end
test()
test() -- crash
To manage notifications about this bug go to:
https://bugs.launchpad.net/tarantool/+bug/1160869/+subscriptions
_______________________________________________
Mailing list: https://launchpad.net/~tarantool-developers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~tarantool-developers
More help : https://help.launchpad.net/ListHelp