Skip to content
Snippets Groups Projects
  1. May 30, 2013
  2. May 23, 2013
    • Dmitry E. Oboukhov's avatar
      Split box.lua to several lua files · c0183560
      Dmitry E. Oboukhov authored
      * Rewrite box.net.box:
      	- connection process is in internal fiber, so
      	  connector can reconnect lost connections
      * Add box.fiber.wrap function that runs new detached fiber
      * Add some tests
      c0183560
  3. Feb 08, 2013
  4. Dec 17, 2012
  5. Nov 29, 2012
  6. Oct 20, 2012
    • Konstantin Osipov's avatar
      A grand move around of files. · fe6f2197
      Konstantin Osipov authored
      Move memcached to src/
      Make iproto.m dependend on box/*, not vice versa.
      Remove box_ prefixes from test suite names.
      Initialize networking outside of box/.
      
      This makes Box a step closer to being just a storage
      layer for Tarantool.
      
      Still some ugly deps since box/ continues to manage
      local hot standby and memcached expire (todo: move it out).
      fe6f2197
  7. Oct 14, 2012
  8. Oct 03, 2012
  9. Sep 04, 2012
  10. Aug 31, 2012
  11. Aug 30, 2012
  12. Aug 28, 2012
  13. Aug 27, 2012
  14. Aug 21, 2012
  15. Jun 21, 2012
  16. May 14, 2012
  17. May 12, 2012
  18. Apr 29, 2012
  19. Dec 23, 2011
  20. Dec 19, 2011
  21. Nov 10, 2011
  22. Aug 25, 2011
    • Konstantin Osipov's avatar
      Lua: mature the implementation CALL command in the binary protocol. · 58f5c07e
      Konstantin Osipov authored
      Fix a bug when Lua transaction was rolled back
      twice when Lua procedure was invoked from CALL.
      
      Change the way arguments to and from CALL
      statement in the binary protocol are passed:
      we used to pass everything from the wire as a single
      binary blob. Now every field of the received
      tuple is passed in as a separate string argument.
      
      Everything passed back from Lua is converted to a tuple. This
      makes CALL response similar to one of SELECT.
      
      Improve box.pack() to convert its argument to integer when
      necessary. Add an argument count check to box.pack().
      Additionally, now box.pack() can be used to pack
      operations of 'UPDATE'.
      
      Use tarantool_lua_tostring() in iov_add_ret():
      this function is now used to convert return values to
      the binary protocol in box_lua.m. This is necessary
      if we try to send boolean or nil over the
      binary wire, since Lua C API lua_tostring()
      does not convert them.
      
      Add box.lua - a system Lua script
      compiled into Tarantool and containing a bunch
      of Lua code preloaded at startup.
      
      Populate box.lua with implementation
      of basic Lua functions:
      box.select(), box.update(), box.replace(),
      box.insert() (currently an alias for box.replace()),
      box.delete(). They are all wrappers around box.process().
      
      Move box_lua_init() to the beginning of mod_init(),
      since Lua in future can be used in recover().
      
      Fix a wrong assumption about the contents
      of Lua stack in iov_add_multret().
      
      Update sql.g Python SQL grammar to allow
      an empty argumeent list for procedure in CALL
      statement.
      
      Add initial documentation on Lua procedures.
      
      Add more Lua tests.
      
      Unrelated: rename INSERT to REPLACE, and UPDATE_FIELDS to
      UPDATE.
      Remove SELECT_LIMIT, which is not used any more.
      58f5c07e
  23. Aug 03, 2011
  24. Jul 26, 2011
    • Konstantin Osipov's avatar
      Lua: start adding support for box.* methods. · 9557019d
      Konstantin Osipov authored
      Add tuple print-out in yaml format, to be able to
      print Lua procedures output in the administrative console.
      
      Add box.process() function, the main callback into
      box from Lua. It takes a binary packet and passes it
      on to box for execution. The results of execution
      are added to fiber iov vector, so we can always
      just grab them and print out, which we do in the
      administrative console.
      9557019d
  25. Jul 14, 2011
  26. Jul 05, 2011
    • Konstantin Osipov's avatar
      Memcached: keep only the parser in memcached-grammar.rl. · c75248aa
      Konstantin Osipov authored
      We modify memcached code quite often,
      and asking ragel to regenerate .m from .rl file
      every time .rl file changed was tiresome both
      for revision control and for code reviews.
      
      Leave in memcached-grammar.rl only memcached_dispsatch(),
      which is generated by ragel, and everything else
      move to memcached.m. This should lessen cases
      when we have to re-generate memcached-grammar.m.
      
      This patch doesn't produce any code changes,
      only moves the code (and cleans up include
      files at start of memcached.m).
      c75248aa
    • Konstantin Osipov's avatar
      a1605dc6
Loading