[tarantool-patches] Re: [PATCH v3 03/11] Introduce IPROTO_REQUEST_STATUS command

  • From: Vladimir Davydov <vdavydov.dev@xxxxxxxxx>
  • To: Konstantin Osipov <kostja@xxxxxxxxxxxxx>
  • Date: Thu, 19 Jul 2018 11:17:52 +0300

On Thu, Jul 19, 2018 at 10:10:31AM +0300, Konstantin Osipov wrote:

* Vladimir Davydov <vdavydov.dev@xxxxxxxxx> [18/07/14 23:50]:
The new command is supposed to supersede IPROTO_REQUEST_VOTE, which is
difficult to extend, because it uses the global iproto key namespace.
The new command returns a map (IPROTO_STATUS), to which we can add
various information without polluting the global namespace. Currently,
the map contains IPROTO_STATUS_IS_RO and IPROTO_STATUS_VCLOCK keys,
but soon it will be added info needed for replica rebootstrap feature.

Would it be possible to move out struct status from xrow.h and
rename to box_status and move to box.h or some other place?

Then xrow.c would have to include box.h ...

Perhaps we should remove it altogether, and simply pass multiple
members to xrow_decode_status()?

There are already three members in a reply to a status request and may
be more in future. Passing them all in function arguments would look
cumbersome. We definitely need to group them somehow.


Other request member combos, such as authentication or call or eval have
not leaked into xrow.h before. 

greeting, auth_request, call_request, request - they are all defined in
xrow.h

Other related posts: