Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

Started by Seino Yukiover 1 year ago12 messageshackers
Jump to latest
#1Seino Yuki
seinoyu@oss.nttdata.com

Hello,

Add a reference method for shared_memory_size_in_huge_pages
with the "SHOW" command.

The current documentation explains the use of the postgres -C command,
but this method may be limited in DBaaS or managed service environments.
In particular, CloudNativePG does not allow the server to be stopped,
making the execution of $ postgres -C impossible.

Alternatively, the "SHOW" command can be used, though the documentation
states,
"Note that the server must be shut down to view this runtime-computed
parameter.[1]https://www.postgresql.org/docs/devel/kernel-resources.html#LINUX-HUGE-PAGES"
This wording could be misunderstood to imply that the parameter cannot
be accessed
while the server is running.

[1]: https://www.postgresql.org/docs/devel/kernel-resources.html#LINUX-HUGE-PAGES
https://www.postgresql.org/docs/devel/kernel-resources.html#LINUX-HUGE-PAGES

Regards,
--
Yuki Seino
NTT DATA CORPORATION

Attachments:

v1-0001-shared_memory_size_in_huge_pages_using_show.patchtext/x-diff; name=v1-0001-shared_memory_size_in_huge_pages_using_show.patchDownload+11-0
#2Michael Paquier
michael@paquier.xyz
In reply to: Seino Yuki (#1)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On Fri, Oct 11, 2024 at 05:25:04PM +0900, Seino Yuki wrote:

Alternatively, the "SHOW" command can be used, though the documentation
states,
"Note that the server must be shut down to view this runtime-computed
parameter.[1]"
This wording could be misunderstood to imply that the parameter cannot be
accessed
while the server is running.

I am not sure that neither mentioning nor recommending SHOW for this
area is a good idea, the point being to encourage its use before the
server is running as we don't want to allocate anything when tuning
it.

Point taken that the current wording can be confusing because of the
"*must* be shut down". How about doing a simpler s/must/should/ for a
softer wording?
--
Michael

#3Nathan Bossart
nathandbossart@gmail.com
In reply to: Michael Paquier (#2)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On Wed, Oct 16, 2024 at 09:31:49AM +0900, Michael Paquier wrote:

I am not sure that neither mentioning nor recommending SHOW for this
area is a good idea, the point being to encourage its use before the
server is running as we don't want to allocate anything when tuning
it.

Agreed.

Point taken that the current wording can be confusing because of the
"*must* be shut down". How about doing a simpler s/must/should/ for a
softer wording?

Well, the point is that you can't use "postgres -C" to view this GUC while
the server is running. I can see how the present wording might be
misinterpreted, though. Perhaps we should change this sentence to
something like:

Note that the server must be shut down to view this runtime-computed
parameter with the postgres command.

--
nathan

#4David G. Johnston
david.g.johnston@gmail.com
In reply to: Seino Yuki (#1)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On Friday, October 11, 2024, Seino Yuki <seinoyu@oss.nttdata.com> wrote:

The current documentation explains the use of the postgres -C command,
but this method may be limited in DBaaS or managed service environments.
In particular, CloudNativePG does not allow the server to be stopped,
making the execution of $ postgres -C impossible.

If your environment doesn’t allow shutting down the Postgres service it
seems highly unlikely you’d be able to perform the other low-level
operating system actions required here as well.

I think the wording is fine as-is, though for consistency with an earlier
mention on the page we could instead write:

This parameter can be viewed before starting the server with a postgres command
like:

David J.

#5Michael Paquier
michael@paquier.xyz
In reply to: Nathan Bossart (#3)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On Tue, Oct 15, 2024 at 08:26:06PM -0500, Nathan Bossart wrote:

Well, the point is that you can't use "postgres -C" to view this GUC while
the server is running. I can see how the present wording might be
misinterpreted, though. Perhaps we should change this sentence to
something like:

Note that the server must be shut down to view this runtime-computed
parameter with the postgres command.

I'm OK with the "postgres command" addition.
--
Michael

#6Fujii Masao
masao.fujii@gmail.com
In reply to: Michael Paquier (#5)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On 2024/10/16 14:18, Michael Paquier wrote:

On Tue, Oct 15, 2024 at 08:26:06PM -0500, Nathan Bossart wrote:

Well, the point is that you can't use "postgres -C" to view this GUC while
the server is running. I can see how the present wording might be
misinterpreted, though. Perhaps we should change this sentence to
something like:

Note that the server must be shut down to view this runtime-computed
parameter with the postgres command.

I'm OK with the "postgres command" addition.

Another idea is to use the same wording as for num_os_semaphores in runtime.sgml, like this:

This parameter can be viewed
before starting the server with a <command>postgres</command> command like:

Regards,

--
Fujii Masao
Advanced Computing Technology Center
Research and Development Headquarters
NTT DATA CORPORATION

#7Nathan Bossart
nathandbossart@gmail.com
In reply to: Fujii Masao (#6)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On Wed, Oct 16, 2024 at 03:31:05PM +0900, Fujii Masao wrote:

Another idea is to use the same wording as for num_os_semaphores in runtime.sgml, like this:

This parameter can be viewed
before starting the server with a <command>postgres</command> command like:

WFM

--
nathan

#8Seino Yuki
seinoyu@oss.nttdata.com
In reply to: Nathan Bossart (#7)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

Thank you, everyone.

the point being to encourage its use before the server is running
as we don't want to allocate anything when tuning it.

I was mistaken and now understand that it needs to be run before the
server is running.

Another idea is to use the same wording as for num_os_semaphores in
runtime.sgml, like this:

WFM

I've fixed the patch and will register it in the CF.

Regards,
--
Yuki Seino
NTT DATA CORPORATION

Attachments:

v2-0001-shared_memory_size_in_huge_pages_docfix.patchtext/x-diff; name=v2-0001-shared_memory_size_in_huge_pages_docfix.patchDownload+3-3
#9Nathan Bossart
nathandbossart@gmail.com
In reply to: Seino Yuki (#8)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On Thu, Oct 17, 2024 at 02:07:32PM +0900, Seino Yuki wrote:

I've fixed the patch and will register it in the CF.

Thanks. Here is what I have staged for commit.

--
nathan

Attachments:

v3-0001-Adjust-documentation-for-configuring-Linux-huge-p.patchtext/plain; charset=us-asciiDownload+4-6
#10Michael Paquier
michael@paquier.xyz
In reply to: Nathan Bossart (#9)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On Thu, Oct 17, 2024 at 04:59:54PM -0500, Nathan Bossart wrote:

Thanks. Here is what I have staged for commit.

Fine by me. Thanks.
--
Michael

#11Fujii Masao
masao.fujii@gmail.com
In reply to: Michael Paquier (#10)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On 2024/10/18 7:10, Michael Paquier wrote:

On Thu, Oct 17, 2024 at 04:59:54PM -0500, Nathan Bossart wrote:

Thanks. Here is what I have staged for commit.

Fine by me. Thanks.

LGTM, too. Thanks!

Regards,

--
Fujii Masao
Advanced Computing Technology Center
Research and Development Headquarters
NTT DATA CORPORATION

#12Nathan Bossart
nathandbossart@gmail.com
In reply to: Fujii Masao (#11)
Re: Doc: shared_memory_size_in_huge_pages with the "SHOW" command.

On Fri, Oct 18, 2024 at 02:47:37PM +0900, Fujii Masao wrote:

On 2024/10/18 7:10, Michael Paquier wrote:

Fine by me. Thanks.

LGTM, too. Thanks!

Committed.

--
nathan