[PATCH v2 4/4] Allow to configure TX fiber pool size

Vladimir Davydov vdavydov.dev at gmail.com
Tue Apr 24 18:43:39 MSK 2018


On Mon, Apr 23, 2018 at 08:05:04PM +0300, Vladislav Shpilevoy wrote:
> TX fiber pool size provides fibers to execute transactions and
> remote requests, so it is linked with maximal remote request
> count, that is allowed to be altered in the previous patch. Lets
> do the same for fiber pool size.
> 
> Follow up #3320
> ---

I don't think that having a separate option for configuring the fiber
pool size is reasonable, because iproto_msg_max and fiber_pool_size are
interconnected. For example, it's pointless to set iproto_msg_max to
1000 and fiber_pool_size to 100 or vice versa. I guess we should leave
just one option that would tweak both iproto_msg_max and fiber_pool_size
under the hood. Not sure about that though.

>  src/box/box.cc                  |  9 ++++++++-
>  src/box/lua/load_cfg.lua        |  2 ++
>  src/fiber_pool.h                |  6 +++++-
>  test/box/fat_tx.lua             | 30 ++++++++++++++++++++++++++++
>  test/box/request_limit.result   | 43 +++++++++++++++++++++++++++++++++++++++++
>  test/box/request_limit.test.lua | 15 ++++++++++++++
>  6 files changed, 103 insertions(+), 2 deletions(-)
>  create mode 100644 test/box/fat_tx.lua
> 
> diff --git a/src/box/box.cc b/src/box/box.cc
> index 80684ad48..d2552709a 100644
> --- a/src/box/box.cc
> +++ b/src/box/box.cc
> @@ -1716,8 +1716,15 @@ box_is_configured(void)
>  static inline void
>  box_cfg_xc(void)
>  {
> +	int fiber_pool_size =
> +		cfg_geti_default("fiber_pool_size", FIBER_POOL_SIZE_DEFAULT);
> +	if (fiber_pool_size < FIBER_POOL_SIZE_MIN) {
> +		tnt_raise(ClientError, ER_CFG, "fiber_pool_size",
> +			  tt_sprintf("minimal value is %d",
> +				     FIBER_POOL_SIZE_MIN));
> +	}
>  	/* Join the cord interconnect as "tx" endpoint. */
> -	fiber_pool_create(&tx_fiber_pool, "tx", FIBER_POOL_SIZE,
> +	fiber_pool_create(&tx_fiber_pool, "tx", fiber_pool_size,
>  			  FIBER_POOL_IDLE_TIMEOUT);

Can't you make this option dynamic?



More information about the Tarantool-patches mailing list