If you invoke any of the SQL/MED CREATE or ALTER commands,
the validator function is only called if an option list was given.
That means that you cannot enforce required options at object creation
time, because the validator function is not always called.
I consider that unexpected an undesirable behaviour.
CREATE EXTENSION file_fdw;
CREATE FOREIGN DATA WRAPPER file HANDLER file_fdw_handler VALIDATOR
CREATE SERVER file FOREIGN DATA WRAPPER file;
CREATE FOREIGN TABLE flat (id integer) SERVER file OPTIONS (format
SELECT * FROM flat;
ERROR: filename is required for file_fdw foreign tables
Now file_fdw does not try to enforce the "filename" option, but it
would be nice to be able to do so.
The attached patch would change the behaviour so that the validator
is always called.
If that change meets with approval, should file_fdw be changed so that
requires "filename" at table creation time?
Description: application/octet-stream (1.6 KB)
pgsql-hackers by date
|Next:||From: Robert Haas||Date: 2011-06-29 12:24:31|
|Subject: Re: time-delayed standbys|
|Previous:||From: Florian Pflug||Date: 2011-06-29 11:35:48|
|Subject: Re: Range Types, constructors, and the type system|