From: Nikita Pettik <korablev@tarantool.org> To: Vladislav Shpilevoy <v.shpilevoy@tarantool.org> Cc: tarantool-patches@dev.tarantool.org Subject: Re: [Tarantool-patches] [PATCH] vinyl: account statement statistics during .index rebuild Date: Thu, 26 Nov 2020 21:19:29 +0000 [thread overview] Message-ID: <20201126211929.GA30305@tarantool.org> (raw) In-Reply-To: <7b513ae7-2531-118d-7472-7e92e5cad6fc@tarantool.org> On 26 Nov 21:45, Vladislav Shpilevoy wrote: > Hi! Thanks for the patch! > > On 24.11.2020 22:03, Nikita Pettik wrote: > > It may turn out to be necessary to re-create .index file corresponding > > to .run file. During rebuild it was forgotten to account statement > > statistics, i.e. count of INSERTs, DELETEs etc. Let's fix it and patch > > vy_run_rebuild_index(). > > --- > > Branch: > > https://github.com/tarantool/tarantool/tree/np/vy-account-stmt-stat-on-index-rebuild > > N.B. problem is obvious and trivial to fix. However, test for it is likely > > to be way more sophisticated, so I haven't included it (but checked manually > > that everything works fine). > > How can I validate it manually? Drop .index, run tarantool with force-recovery, cat the content of .index file with tarantoolctl/xlog module. > > src/box/vy_run.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/src/box/vy_run.c b/src/box/vy_run.c > > index b9822dc3e..820a6ce3f 100644 > > --- a/src/box/vy_run.c > > +++ b/src/box/vy_run.c > > @@ -2452,6 +2452,8 @@ vy_run_rebuild_index(struct vy_run *run, const char *dir, > > goto close_err; > > } > > } > > + vy_stmt_stat_acct(&run->info.stmt_stat, > > + vy_stmt_type(tuple)); > > Why is it needed? The run is not created from the scratch. Only > its index is rebuilt, which is not related to the statistics, > AFAIU. The statements in the run are not changed here. It means > it was filled some time ago, and everything should have already > been accounted via vy_run_writer_write_to_page(). Possibly it doesn't affect anything, but just noted that in case of re-creating .index files during force-recovery, they contained zeroed statistics (in contrast to ordinary .index files). It may turn out to be helpful e.g. during digging into vinyl problems.
next prev parent reply other threads:[~2020-11-26 21:19 UTC|newest] Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-11-24 21:03 Nikita Pettik 2020-11-26 20:45 ` Vladislav Shpilevoy 2020-11-26 21:19 ` Nikita Pettik [this message] 2020-11-26 21:30 ` 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=20201126211929.GA30305@tarantool.org \ --to=korablev@tarantool.org \ --cc=tarantool-patches@dev.tarantool.org \ --cc=v.shpilevoy@tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH] vinyl: account statement statistics during .index rebuild' \ /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