go-tarantool icon indicating copy to clipboard operation
go-tarantool copied to clipboard

Implement support for MP_EXT-encoded tuples

Open bigbes opened this issue 1 month ago • 0 comments

Tarantool can encode tuples as MessagePack extension types (MP_EXT with type code 7) in DML responses (e.g., SELECT, INSERT) and in CALL/EVAL requests and responses.

Examples from Tarantool C code:

Encoding: mp_tuple.c#L80-L85 Decoding: mp_tuple.c#L38-L55

What needs to be done:

  • Add support for recognizing and decoding MP_EXT type 7 as a tuple in incoming MessagePack data.
  • Implement encoding of Go tuples (e.g., []interface{} or a dedicated Tuple type) into MP_EXT format when sending requests/responses.
  • Add optional types (github.com/tarantool/go-option support)

This enhancement is required for full protocol compliance and to support efficient binary tuple exchange with Tarantool 3.0+.

bigbes avatar Oct 20 '25 18:10 bigbes