You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
The existing io_combine_limit can be changed by users. The newio_max_combine_limit is fixed at server startup time, and functions as asilent clamp on the user setting. That in itself is probably quiteuseful, but the primary motivation is:aio_init.c allocates shared memory for all asynchronous IOs includingsome per-block data, and we didn't want to waste memory you'd never usedby assuming they could be up to PG_IOV_MAX. This commit already halvesthe size of 'AioHandleIov' and 'AioHandleData'. A follow-up commit cannow expand PG_IOV_MAX without affecting that.Since our GUC system doesn't support dependencies or cross-checksbetween GUCs, the user-settable one now assigns a "raw" value toio_combine_limit_guc, and the lower of io_combine_limit_guc andio_max_combine_limit is maintained in io_combine_limit.Reviewed-by: Andres Freund <andres@anarazel.de> (earlier version)Discussion:https://postgr.es/m/CA%2BhUKG%2B2T9p-%2BzM6Eeou-RAJjTML6eit1qn26f9twznX59qtCA%40mail.gmail.com