Unsupported effective_io_concurrency platforms
If a platform doesn't have posix_fadvise(), we don't allow
effective_io_concurrency to be set to anything but zero:
test=> set effective_io_concurrency = 1;
ERROR: 1 is outside the valid range for parameter "effective_io_concurrency" (0 .. 0)
test=> set effective_io_concurrency = 0;
SET
Do we want to give a more informative error message, like "not supported
on this platform?"
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
On Mon, 2009-03-23 at 16:21 -0400, Bruce Momjian wrote:
If a platform doesn't have posix_fadvise(), we don't allow
effective_io_concurrency to be set to anything but zero:test=> set effective_io_concurrency = 1;
ERROR: 1 is outside the valid range for parameter "effective_io_concurrency" (0 .. 0)
test=> set effective_io_concurrency = 0;
SETDo we want to give a more informative error message, like "not supported
on this platform?"
I would say so.
Joshua D. Drake
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com+ If your life is a hard drive, Christ can be your backup. +
--
PostgreSQL - XMPP: jdrake@jabber.postgresql.org
Consulting, Development, Support, Training
503-667-4564 - http://www.commandprompt.com/
The PostgreSQL Company, serving since 1997
Joshua D. Drake wrote:
On Mon, 2009-03-23 at 16:21 -0400, Bruce Momjian wrote:
If a platform doesn't have posix_fadvise(), we don't allow
effective_io_concurrency to be set to anything but zero:test=> set effective_io_concurrency = 1;
ERROR: 1 is outside the valid range for parameter "effective_io_concurrency" (0 .. 0)
test=> set effective_io_concurrency = 0;
SETDo we want to give a more informative error message, like "not supported
on this platform?"I would say so.
The trick will be to fit this into the GUC framework.
Peter Eisentraut <peter_e@gmx.net> writes:
Joshua D. Drake wrote:
Do we want to give a more informative error message, like "not supported
on this platform?"
The trick will be to fit this into the GUC framework.
You could do it by enforcing the limit in an assign hook, but I'm
not convinced it's worth the trouble.
regards, tom lane
Tom Lane wrote:
Peter Eisentraut <peter_e@gmx.net> writes:
Joshua D. Drake wrote:
Do we want to give a more informative error message, like "not supported
on this platform?"The trick will be to fit this into the GUC framework.
You could do it by enforcing the limit in an assign hook, but I'm
not convinced it's worth the trouble.
I have created a patch to at least display a more helpful message,
without being specific:
test=> set effective_io_concurrency = 1;
ERROR: parameter "effective_io_concurrency" cannot be changed from 0
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
Attachments:
/pgpatches/guctext/plainDownload+28-28
Bruce Momjian wrote:
Tom Lane wrote:
Peter Eisentraut <peter_e@gmx.net> writes:
Joshua D. Drake wrote:
Do we want to give a more informative error message, like "not supported
on this platform?"The trick will be to fit this into the GUC framework.
You could do it by enforcing the limit in an assign hook, but I'm
not convinced it's worth the trouble.I have created a patch to at least display a more helpful message,
without being specific:test=> set effective_io_concurrency = 1;
ERROR: parameter "effective_io_concurrency" cannot be changed from 0
I fixed this an easier way, by making the parameter PGC_INTERNAL on
systems that don't have posix_fadvise().
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +