[Tarantool-patches] [PATCH 3/6] iproto: Add negotiation phase

Konstantin Osipov kostja.osipov at gmail.com
Tue Mar 24 23:02:16 MSK 2020


* Leonid Vasiliev <lvasiliev at tarantool.org> [20/03/24 16:02]:
> The negotiation phase has been added to IPROTO
> 
> For possibility to have a custom parameters of session the negotiation
> phase has been added. This is necessary to enable the transmission of
> an error in different formats(depending on the choice of the client).
> 
> @TarantoolBot document
> Title: IPROTO: The negatiation phase
> For backward compatibility of the data transmission format,
> the negotiation phase has been added to IPROTO.
> A new key (IPROTO_NEGOTIATION) has been added to IPROTO command codes.
> NEGOTIATION BODY: CODE = 0x0E
> +==========================+
> |                          |
> |  NEGOTIATION PARAMETERS  |
> |                          |
> +==========================+
>            MP_MAP
> Session negotiation parameters are a map with keys like ERROR_FORMAT_VERSION ...
> The response is a map with all stated negotiation parameters.
> So, for work with the new format of errors, it is necessary to perform the negotiation phase,
> otherwise errors will be transmitted in the old format (by default).

Why not make it a key in IPROTO_AUTH, and require a separate
round-trip?

Why have it at all and not look at server version, which is part
of the greeting already?

-- 
Konstantin Osipov, Moscow, Russia


More information about the Tarantool-patches mailing list