Tarantool development patches archive
 help / color / mirror / Atom feed
From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org>
To: Georgy Kirichenko <georgy@tarantool.org>,
	tarantool-patches@freelists.org,
	Konstantin Osipov <kostja.osipov@gmail.com>,
	tarantool-patches@dev.tarantool.org
Subject: Re: [Tarantool-patches] [tarantool-patches] Re: [PATCH v2 2/4] wal: wal memory buffer
Date: Tue, 22 Oct 2019 01:04:12 +0200	[thread overview]
Message-ID: <c587d80d-a58e-a699-c94a-30dba50aedb8@tarantool.org> (raw)
In-Reply-To: <68c06ac1-3a3f-bae2-ebf4-79c1ae63cb64@tarantool.org>

>>>>>> +	/* Decoded xrow header. */
>>>>>> +	struct xrow_header xrow;
>>>>>> +	/* Pointer to the xrow encoded raw data. */
>>>>>> +	void *data;
>>>>>> +	/* xrow raw data size. */
>>>>>> +	size_t size;
>>>>>> +};
>>>>>> +
>>>>>> +/*
>>>>>> + * Xrow memory data chunk info contains
>>>>>> + *  a vclock just before the first stored row,
>>>>>> + *  an ibuf with row descriptors
>>>>>> + *  an obuf with encoded data
>>>>>
>>>>> 29. I don't think it really makes sense to just dupicate here
>>>>> the comments of each attribute of the structure. Please,
>>>>> better use that space to explain, why you need vclock, why
>>>>> 'before first row' instead of just 'first row', or 'last row'.
>>>>>
>>>>> What is a 'row descriptor'?
>>>>>
>>>>> Why do you need both initial xrows and encoded? I thought, that
>>>>> xrow_buf stores only encoded rows.
>>>>
>>>> Relay will need initial xrows to perform filtering (replication group, lsn
>>>> and e.t.c.) without xrow encoded body to decode.
>>>
>>> Hm, it looks quite expensive just for filtering. But assume it is ok.
>>> 1) Why can't you store only a header instead of the whole xrow with a
>>> body? As I understand, for any filtering the header is enough. Or not?
>> I should also store xrow bodies and then encode the xrow as many times as 
>> count of replicas I have.
> 
> Why do you need to encode it multiple times? Why not to send the same
> encoded record?
> Also, I don't see where do you encode more than once.
> 

Please, say anything. I still don't understand it.

  parent reply	other threads:[~2019-10-21 22:58 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <cover.1568798455.git.georgy@tarantool.org>
     [not found] ` <21c3aa57-72c7-a8b1-e9e8-5fbb92f22ed9@tarantool.org>
     [not found]   ` <20190920075249.GI8859@atlas>
     [not found]     ` <5842734.CUO0naIOha@home.lan>
2019-10-21 23:03       ` [Tarantool-patches] [tarantool-patches] Re: [PATCH v2 0/4] In-memory wal replication Vladislav Shpilevoy
     [not found] ` <4885469.V32OVRv9ck@home.lan>
     [not found]   ` <c21b86af-ef18-7040-4380-78b01c48203f@tarantool.org>
     [not found]     ` <2210179.PDX6z0RLMb@home.lan>
     [not found]       ` <68c06ac1-3a3f-bae2-ebf4-79c1ae63cb64@tarantool.org>
2019-10-21 23:04         ` Vladislav Shpilevoy [this message]
     [not found] ` <68fa00546c99b7b53c1c3024881a19024513104d.1568798455.git.georgy@tarantool.org>
     [not found]   ` <772fcc2b-bf03-19d1-6431-1b7d2b058865@tarantool.org>
2019-10-21 23:04     ` [Tarantool-patches] [tarantool-patches] Re: [PATCH v2 2/4] wal: wal memory buffer Vladislav Shpilevoy
     [not found] ` <5dc83b86bbeada22342c355648de2daa7766bb73.1568798455.git.georgy@tarantool.org>
     [not found]   ` <a6cec753-ce56-f91f-1305-383380a2d630@tarantool.org>
     [not found]     ` <1816701.j1k7ruT3f3@home.lan>
     [not found]       ` <569ff681-a670-f4ca-3c6f-75c159e21429@tarantool.org>
2019-10-21 23:04         ` [Tarantool-patches] [tarantool-patches] Re: [PATCH v2 3/4] wal: xrow buffer cursor Vladislav Shpilevoy
     [not found] ` <0d9ae1e9b32cb8334bf6007de4cb62ce62f87fcb.1568798455.git.georgy@tarantool.org>
     [not found]   ` <0db07768-c555-a3f6-12d0-a33a267deaf7@tarantool.org>
2019-10-21 23:05     ` [Tarantool-patches] [tarantool-patches] Re: [PATCH v2 4/4] replication: use wal memory buffer to fetch rows Vladislav Shpilevoy
     [not found]     ` <2613444.GBVTE10AvH@home.lan>
     [not found]       ` <84edf0e4-a878-64be-d2f3-694cc672ec9a@tarantool.org>
2019-10-21 23:05         ` Vladislav Shpilevoy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c587d80d-a58e-a699-c94a-30dba50aedb8@tarantool.org \
    --to=v.shpilevoy@tarantool.org \
    --cc=georgy@tarantool.org \
    --cc=kostja.osipov@gmail.com \
    --cc=tarantool-patches@dev.tarantool.org \
    --cc=tarantool-patches@freelists.org \
    --subject='Re: [Tarantool-patches] [tarantool-patches] Re: [PATCH v2 2/4] wal: wal memory buffer' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox