Skip to content

Implement support for MP_EXT-encoded tuples #467

Description

@bigbes

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+.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions