Re: Fallback table AM for relkinds without storage

2021-03-14 Thread Michael Paquier
On Wed, Feb 24, 2021 at 11:51:36AM +0900, Michael Paquier wrote: > For the file name, using something like pseudo_handler.c or similar > would be fine, I guess. However, if we go down the path of one AM per > relkind for the slot callback, then why not just calling the AMs > foreign_table_am, view

Re: Fallback table AM for relkinds without storage

2021-02-23 Thread Michael Paquier
On Mon, Feb 22, 2021 at 05:19:37PM -0800, Andres Freund wrote: > This doesn't seem like an advantage to me. Isn't this just pushing logic > away from a fairly obvious point into an AM that one would expect to > never actually get called? > > If we want to go down this path what's the justification

Re: Fallback table AM for relkinds without storage

2021-02-22 Thread Andres Freund
Hi, On 2021-02-15 16:21:38 +0900, Michael Paquier wrote: > I have been playing with this idea, and finished with the attached, > which is not the sexiest patch around. The table AM used as fallback > for tables without storage is called no_storage (this could be called > virtual_am?). > One thi

Re: Fallback table AM for relkinds without storage

2021-02-21 Thread Michael Paquier
On Sun, Feb 21, 2021 at 09:43:59AM -0600, Justin Pryzby wrote: > If you apply this patch, will you want to actually revert those > earlier changes? That's not in the plan. > Also (related), this still crashes if methods are omitted from the > initializer, > like: > > // .slot_callbacks = no_sto

Re: Fallback table AM for relkinds without storage

2021-02-21 Thread Justin Pryzby
On Mon, Feb 15, 2021 at 04:21:38PM +0900, Michael Paquier wrote: > On Tue, Feb 09, 2021 at 04:27:34PM +0900, Michael Paquier wrote: > > Putting sanity checks within all the table_* functions of tableam.h > > would not be a good idea, as nothing prevents the call of what's > > stored in rel->rd_tabl

Re: Fallback table AM for relkinds without storage

2021-02-14 Thread Michael Paquier
On Tue, Feb 09, 2021 at 04:27:34PM +0900, Michael Paquier wrote: > Putting sanity checks within all the table_* functions of tableam.h > would not be a good idea, as nothing prevents the call of what's > stored in rel->rd_tableam. I have been playing with this idea, and finished with the attache