Tarantool development patches archive
 help / color / mirror / Atom feed
From: Cyrill Gorcunov via Tarantool-patches <tarantool-patches@dev.tarantool.org>
To: Vladislav Shpilevoy <v.shpilevoy@tarantool.org>
Cc: tml <tarantool-patches@dev.tarantool.org>
Subject: Re: [Tarantool-patches] [PATCH v4 1/3] gc/xlog: delay xlog cleanup until relays are subscribed
Date: Fri, 26 Mar 2021 00:02:56 +0300	[thread overview]
Message-ID: <YFz6gCp9voLmQOAV@grain> (raw)
In-Reply-To: <19605c5e-e96c-8580-6309-3b0e58df8c01@tarantool.org>

On Thu, Mar 25, 2021 at 08:59:53PM +0100, Vladislav Shpilevoy wrote:
> >  static double
> >  box_check_wal_cleanup_delay(void)
> >  {
> > +	const double MAX_TIMEOUT = TIMEOUT_INFINITY;
> > +	const double MIN_TIMEOUT = 0.001;
> 
> I am going to repeat it here from what I said verbally and
> in the chat - don't restrict the timeout. We never restrict
> any timeouts. TIMEOUT_INFINITY is not literally double inf
> value. It is just some huge but valid double value. User in
> his code can have a bigger definition of what is infinity.
> 
> The same with the min. Why do you limit it from below? I don't
> see a single reason for doing so. Only reasons against that -
> it is inconsistent with the other timeouts we have, and might
> conflict with how each particular user understand the "minimal"
> timeout.

Most important reason is an epsilon value on hw level, how many
users remember what exactly range the "machine zero" covers?
Do we really want to allow precision close to nanoseconds?
Surely it is not a problem to remove this limits from incoming
values, will do but actually this a bit bothers me.

> Instead, I asked you to check what if I pass Lua's math.huge
> value. AFAIK, it is not some finite double value, and it might
> break something.

LJLIB_PUSH(1e310) LJLIB_SET(huge)

If I remove the limits in arguments and call

	box.cfg{wal_cleanup_delay = math.huge}

then it passed into C level as 0x7fffffffffffffff
which is NaN in ieee-754.

2021-03-25 23:53:45.588 [2068763] main/103/interactive I> set 'wal_cleanup_delay' configuration option to inf

and cleanup fiber is sleeping forever because of comparition
specifics with NaN value.

  reply	other threads:[~2021-03-25 21:03 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-24 16:37 [Tarantool-patches] [PATCH v4 0/3] " Cyrill Gorcunov via Tarantool-patches
2021-03-24 16:37 ` [Tarantool-patches] [PATCH v4 1/3] " Cyrill Gorcunov via Tarantool-patches
2021-03-24 22:10   ` Vladislav Shpilevoy via Tarantool-patches
2021-03-25 11:25     ` Cyrill Gorcunov via Tarantool-patches
2021-03-25 19:59       ` Vladislav Shpilevoy via Tarantool-patches
2021-03-25 21:02         ` Cyrill Gorcunov via Tarantool-patches [this message]
2021-03-25 21:29           ` Cyrill Gorcunov via Tarantool-patches
2021-03-25 23:50             ` Vladislav Shpilevoy via Tarantool-patches
2021-03-26  7:04               ` Cyrill Gorcunov via Tarantool-patches
2021-03-25 23:51           ` Vladislav Shpilevoy via Tarantool-patches
2021-03-26  7:04             ` Cyrill Gorcunov via Tarantool-patches
2021-03-24 16:37 ` [Tarantool-patches] [PATCH v4 2/3] test: add a test for wal_cleanup_delay option Cyrill Gorcunov via Tarantool-patches
2021-03-24 22:10   ` Vladislav Shpilevoy via Tarantool-patches
2021-03-25 12:07     ` Cyrill Gorcunov via Tarantool-patches
2021-03-25 19:56       ` Vladislav Shpilevoy via Tarantool-patches
2021-03-25 20:19         ` Cyrill Gorcunov via Tarantool-patches
2021-03-24 16:37 ` [Tarantool-patches] [PATCH v4 3/3] test: box-tap/gc -- add test for is_paused field Cyrill Gorcunov via Tarantool-patches

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=YFz6gCp9voLmQOAV@grain \
    --to=tarantool-patches@dev.tarantool.org \
    --cc=gorcunov@gmail.com \
    --cc=v.shpilevoy@tarantool.org \
    --subject='Re: [Tarantool-patches] [PATCH v4 1/3] gc/xlog: delay xlog cleanup until relays are subscribed' \
    /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