@ -216,6 +216,14 @@ file_fdw_validator(PG_FUNCTION_ARGS)
*/
*/
ProcessCopyOptions ( NULL , true , other_options ) ;
ProcessCopyOptions ( NULL , true , other_options ) ;
/*
* Filename option is required for file_fdw foreign tables .
*/
if ( catalog = = ForeignTableRelationId & & filename = = NULL )
ereport ( ERROR ,
( errcode ( ERRCODE_FDW_DYNAMIC_PARAMETER_VALUE_NEEDED ) ,
errmsg ( " filename is required for file_fdw foreign tables " ) ) ) ;
PG_RETURN_VOID ( ) ;
PG_RETURN_VOID ( ) ;
}
}
@ -287,10 +295,14 @@ fileGetOptions(Oid foreigntableid,
}
}
prev = lc ;
prev = lc ;
}
}
/*
* The validator should have checked that a filename was included in the
* options , but check again , just in case .
*/
if ( * filename = = NULL )
if ( * filename = = NULL )
ereport ( ERROR ,
elog ( ERROR , " filename is required for file_fdw foreign tables " ) ;
( errcode ( ERRCODE_FDW_UNABLE_TO_CREATE_REPLY ) ,
errmsg ( " filename is required for file_fdw foreign tables " ) ) ) ;
* other_options = options ;
* other_options = options ;
}
}