Skip to content
Snippets Groups Projects
  1. Jul 04, 2012
  2. Jul 03, 2012
    • Konstantin Osipov's avatar
    • Konstantin Osipov's avatar
      Refactor cmake scripts. · 8570dc43
      Konstantin Osipov authored
      Do not use bundled libobjc on Darwin.
      Refactor cmake scritps: introduce os.cmake, arch.cmake,
      compiler.cmake, libobjc.cmake, luajit.cmake.
      
      Remove the hack with building libobjc/luajit as a
      dependency on cfg.
      
      Do not specify -ggdb when compiling with clang.
      
      Add -fno-objc-legacy-dispatch and -fobjc-nonfragile-abi
      when compiling with CLang on Linux.
      
      Remove -fgnu-runtime when compiling with gcc on Mac.
      
      Many minor cleanups.
      8570dc43
  3. Jul 02, 2012
  4. Jun 30, 2012
  5. Jun 29, 2012
  6. Jun 27, 2012
  7. Jun 26, 2012
  8. Jun 22, 2012
    • Konstantin Osipov's avatar
      A fix and a test case for Bug#933487 · 62119167
      Konstantin Osipov authored
      Tarantool/Box crashed during shutdown if a non running LUA fiber
      was created.
      
      Fiber garbage collection in Lua, initiated during shutdown,
      was performed after the fiber subsystem was destroyed.
      
      Additionally, fix a wrongly formulated assert which checks
      that the fiber which is being cancelled has not been
      cancelled already.
      62119167
  9. Jun 21, 2012
  10. Jun 15, 2012
  11. Jun 14, 2012
    • Konstantin Osipov's avatar
      A fix for https://bugs.launchpad.net/tarantool/+bug/790688 · 9d14011f
      Konstantin Osipov authored
      A fix for bug https://bugs.launchpad.net/tarantool/+bug/790688
      "ER_TUPLE_IS_RO should be more rare".
      
      Rewrite the transaction processor to optimistically
      perform changes in memory. In case of an error, transactions
      are rolled back in order, reverse to the order of execution,
      and gradually restore the original state of memory.
      The wal writer therad orchestrates the rollback, by not
      initiating it until all queries which entered the processing queue
      before the error has occurred were not added to the rollback queue.
      
      While in the state of rollback (i.e. collecting all requests
      for rollback) new requests are not accepted into the processing
      queue (see changes in wal_write()).
      
      XXX: This patch makes dirty reads possible when we are in rollback,
      since SELECTs do not enter the wal writer queue and can therefore
      see changes which later will be rolled back. Since this is a
      very rare situation, it's considered acceptable to fix this problem
      in a separate patch (a separate bug will be reported).
      9d14011f
  12. Jun 08, 2012
  13. Jun 07, 2012
  14. Jun 06, 2012
    • Konstantin Osipov's avatar
      Implement error checks in WAL I/O. · e9b83a5e
      Konstantin Osipov authored
      Do not use buffered file I/O which doesn't
      give a precise account of failure, when it happens.
      
      Instead, batch writes to WAL or SNAP files and
      write batches using writev(). If writev() fails,
      we can accurately evaluate which requests (those that
      belong to the batch) were not written to disk.
      
      In case of a partial write, rollback the failed requests,
      and seek back to the end of the last fully written
      request.
      
      To support writev() and IO with file descriptors,
      implement nio library, which provides a set of
      EINTR- and error log- aware wrappers around syscalls.
      e9b83a5e
  15. Jun 04, 2012
  16. Jun 01, 2012
  17. May 30, 2012
  18. May 29, 2012
  19. May 28, 2012
  20. May 25, 2012
  21. May 24, 2012
Loading