Skip to content
Snippets Groups Projects
  1. Jul 14, 2017
    • Roman Tsisyk's avatar
      Add minimal viable package manager based on LuaRocks · 9e7c4217
      Roman Tsisyk authored
      Usage:
      
          tarantoolctl rocks install ROCK - install a rock
          tarantoolctl rocks remove ROCK - remove a rock
          tarantoolctl rocks show ROCK - show information about an installed rock
          tarantoolctl rocks search PATTERN - search repository for rocks
          tarantoolctl rocks list - list all installed rocks
      
      There are no other commands, options, configuration files. Our official
      repository (http://rocks.tarantool.org) works out of the box. All rocks
      are installed to ${PWD}/.rocks directory to support separate rocks trees
      per project, as proposed by #2067. Rockspec can use "tarantool >= 1.7.x"
      inside dependencies = {} block to depend on a specific Tarantool version.
      
      LuaRocks has been slightly hacked to support custom configuration
      via site_config.lua. There are no other changes in the upstream code.
      It is not a fork and it isn't going to be a fork. All formats, layouts
      and rockspecs are 100% compatible with the upstream LuaRocks 2017-07-10.
      
      This feature intentionally doesn't have CMake option to disable it,
      because it should be provided on all available platforms out of the box.
      
      Other changes:
      
       * Add ${PWD}/.rocks to default package.path/package.cpath
       * Hack tarantoolctl to display subcommands in --help.
         Currently command line arguments handling are not perfect, but
         it can be fixed only by a new argparse implementation.
      
      Closes #2067
      9e7c4217
  2. Feb 15, 2017
    • Roman Tsisyk's avatar
      Remove Sophia from 1.6 · 5336dbf6
      Roman Tsisyk authored
      Sophia was an experimental storage engine in 1.6.x.
      Please use 'vinyl' engine in Tarantool 1.7 instead.
      
      Closes #2040
      5336dbf6
  3. Sep 29, 2016
  4. Aug 15, 2016
  5. Jul 04, 2016
  6. Apr 28, 2016
  7. Apr 27, 2016
  8. Apr 26, 2016
  9. Apr 22, 2016
  10. Feb 08, 2016
  11. Feb 03, 2016
  12. Dec 28, 2015
  13. Dec 24, 2015
  14. Dec 22, 2015
  15. Oct 21, 2015
  16. Aug 26, 2015
    • Dmitry Simonenko's avatar
      sophia: switch to new storage scheme · b5e87307
      Dmitry Simonenko authored
      Support multi-part keys. Allow key duplicate
      compaction. Reduce storage cost, encode metadata,
      do not store msgpack (except value part).
      Reconstruct tuple on read using index schema.
      
      [replication]
      
      JOIN support temporary put to not working
      condition: there is no way to access possibly
      deleted space schema during the operation
      for a tuple reconstruction
      (multi-thread).
      
      recreate space key_def during join; enable join
      
      sophia: make every operation asynchronous
      
      sophia: fix join cursor and tests
      
      sophia: implement delayed update operation
      
      sophia: make delete write-only
      
      implement Handler::executeReplace
      
      sophia: merge fixes
      
      make upsert operation an engine specific
      
      sophia: make update logic common to memtx
      
      sophia-integration: switch to Sophia v1.2.3; implement upsert
      
      sophia: add half_commit mode support
      
      This mode disables conflict resolution for
      'prepared' transactions and solves the issue with
      concurrent write-write conflicts during wal write/yield.
      
      sophia: do not allocate tuple during replace or update; refactoring
      
      sophia: extend and reorganize test suite
      
      sophia: implement box.sophia()
      
      sophia: #681: support or produce error on space::alter
      
      sophia: extend recover tests
      
      sophia: add separate iterator tests
      
      box: enable per-engine select
      
          * add executeSelect() into engine handler API
          * add MemtxIndex; move preallocated m_position from Index to MemtxIndex
          * remove it->close()
          * remove IteratorGuard class
      
          note: Sysview and Sophia engines yet share the same select code in
          engine::executeSelect() (which does iterator alloc-free)
      
      box: remove close call from box_iterator_free()
      b5e87307
  17. Apr 22, 2015
  18. Jan 22, 2015
  19. Aug 27, 2014
  20. Aug 26, 2014
    • Roman Tsisyk's avatar
      Refactor msgpack, yaml, cjson to use common code base · 5a7d8b07
      Roman Tsisyk authored
      Major changes:
      
       - All common logic and code from all serializes replaced by
         luaL_field/luaL_serializer functions
       - All features and methods were unified
       - cdata support added to JSON
       - ffi's .NULL added to JSON
       - .cfg{} method added to MsgPack, YAML and JSON
       - .new() method added to MsgPack and YAML
       - NaN and Inf checks ported from JSON
       - array vs map detection logic ported from JSON
       - support for __serialize hint added for table/cdata/userdata
       - _serializer_compact and _serializer_type superseded by __serialize
       - 64-bit integers encoding/decoding fixed in JSON and YAML
       - floating point encoding/decoding fixed in YAML
       - JSON was converted from submodule
       - New TAP-based tests added for MsgPack, MsgPackFFI, YAML, JSON
      5a7d8b07
  21. Jul 30, 2014
  22. Apr 11, 2014
  23. Mar 11, 2014
  24. Feb 19, 2014
  25. Feb 10, 2014
  26. Dec 02, 2013
  27. Nov 14, 2013
  28. Nov 13, 2013
    • Roman Tsisyk's avatar
      Replace BER encoding with MsgPack everywhere · 37fef8eb
      Roman Tsisyk authored
      This commit completely changes the data format used by Tarantool.
      A new binary serialization format called MsgPack (http://msgpack.org)
      has been introduced to store tuples, keys, request members, etc.
      MsgPack supports various data types and hierarchical structures. Since
      tuple & keys format has been changed, the binary protocol is no more
      compatible with 1.5 clients.
      
      The list of major changes:
      
       * Add MsgPack library and unit tests as a submodule
       * Add Lua bindings for the library and unit tests for it
       * Update IPROTO to use MsgPack for all kinds of requests
       * Change struct tuple to use MsgPack Array instead of BER-encoded fields
       * Remove fixed offsets from tuples (cannot be supported by MsgPack)
       * Replace const char *key, key_part pairs with MsgPack Arrays
       * Rework comparators and indicies to support MsgPack'ed fields
       * Merge NUM and NUM64 types into the one single type (NUM)
       * Rewrite box_lua.cc functions to support MsgPack instead of BER
       * Rewrite tuple_update to support MsgPack instead of BER
       * Totaly remove varint32 functions from all modules
       * Rework lua_tofield and YAML encoder to properly support Lua tables
       * Modifie bootstrap files and system spaces to use the new format
       * Add MsgPack support to the test system via msgpack-python
       * Update tests to use proper data types and remove unneeded box.packs
      
      Tarantool 1.6 is the world's first MsgPack-based database!
      37fef8eb
  29. Oct 25, 2013
  30. Oct 16, 2013
  31. Sep 13, 2013
  32. Jun 01, 2013
  33. Feb 20, 2013
Loading