Branch: refs/heads/fiber-big-bada-boom
  Home:   https://github.com/mailru/tarantool
  Commit: 24d16f8388393e461895937deb3da8a81c41e347
      
https://github.com/mailru/tarantool/commit/24d16f8388393e461895937deb3da8a81c41e347
  Author: Roman Tsisyk <[email protected]>
  Date:   2013-01-23 (Wed, 23 Jan 2013)

  Changed paths:
    M .gitignore
    M include/coio.h
    M include/fiber.h
    M include/ipc.h
    M include/recovery.h
    M src/admin.m
    M src/admin.rl
    M src/box/box_lua.m
    M src/box/request.m
    M src/box/txn.m
    M src/coeio.m
    M src/coio.m
    M src/fiber.m
    M src/ipc.m
    M src/iproto.m
    M src/lua/init.m
    M src/lua/lua_ipc.m
    M src/memcached-grammar.m
    M src/memcached-grammar.rl
    M src/memcached.m
    M src/recovery.m
    M src/replica.m
    M src/tarantool.m
    M test/box/lua.result
    M test/unit/CMakeLists.txt
    A test/unit/fiber.m
    A test/unit/fiber.result
    A test/unit/fiber.test

  Log Message:
  -----------
  fiber-big-bada-boom: rewrite fibers module

 * Completely remove the call stack and schedule all fibers via libev
 * Forbid all invalid state transitions and implement FSM explicitly
 * Rework API to be like Lua coroutines (see fiber_resume/fiber_yield doc)
 * Rename fiber_yield_timeout to fiber_sleep, move infinity constant from ipc.h
 * Replace old fiber_yield calls by new fiber_sleep with infinity timeout
 * Replace old fiber_yield_to and fiber_call by new fiber_resume/fiber_yield
 * Add the support for passing and returning arguments on the stack (va_list)
 * Replace fiber_setcancellable(false) with @try ... @finally block in ipc
 * Remove fibers cache from iproto (duplicated fiber.m functionality)
 * Update comments && documentation (partial)
 * Add an unit test (partial)

Bugs fixed:
 * Bug#1082377 "test/box/lua.test is broken on box.fiber.resume()"
 * Bug#1099552 "box.fiber does not detect reused fibers"
 * Bug#1100875 "box.fiber.yield wake up caller on next event loop"
 * libev events do not resume cancelled fibers anymore (fixes WAL bug and other)



_______________________________________________
Mailing list: https://launchpad.net/~tarantool-developers
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~tarantool-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to