return DatumGetInt32(bin_val);
}
+/* forget old values */
+static void
+clear_config(ProxyConfig *cf)
+{
+ memset(cf, 0, sizeof(*cf));
+}
+
/* set a configuration option. */
static void
set_config_key(ProxyFunction *func, ProxyConfig *cf, const char *key, const char *val)
if (SPI_gettypeid(desc, 2) != TEXTOID)
plproxy_error(func, "Config column 2 must be text");
+ clear_config(&cluster->config);
+
/* fill values */
for (i = 0; i < SPI_processed; i++)
{
if (aclresult != ACLCHECK_OK)
aclcheck_error(aclresult, ACL_KIND_FOREIGN_SERVER, foreign_server->servername);
+ /* drop old config values */
+ clear_config(&cluster->config);
+
/*
* Collect the configuration definitions from foreign data wrapper.
*/