On Sun, 2012-11-04 at 15:13 -0500, Tom Lane wrote: > Jeff Davis <pg...@j-davis.com> writes: > > Is there any fundamental or philosophical reason why a foreign table > > can't accept arguments? > > That isn't a table; it's some sort of function. Now that we have > LATERAL, there is no good reason to contort SQL's syntax and semantics > in the direction you suggest.
Maybe I should rephrase this as a problem with SRFs: you don't get to define the init/exec/end executor functions, and you don't get access to the optimizer information. It seems like foreign tables are a better mechanism (except for the simple cases where you don't care about the details), and the only thing an SRF can do that a foreign table can't is accept arguments. So, I thought maybe it would make more sense to combine the mechanisms somehow. Take something as simple as generate_series: right now, it materializes the entire thing if it's in the FROM clause, but it wouldn't need to if it could use the foreign table mechanism. Regards, Jeff Davis -- Sent via pgsql-hackers mailing list (email@example.com) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers