diff options
author | Florian Dold <florian@dold.me> | 2021-11-01 16:43:49 +0100 |
---|---|---|
committer | Florian Dold <florian@dold.me> | 2021-11-01 16:43:49 +0100 |
commit | 3cd50b42f77908fb0e428dcfdbfd617731dcc3ae (patch) | |
tree | 8fdf1007de1aa487e1a406b45f688db518e1533c /src/stasis | |
parent | b11660f241cf1c92de96b7bbe6ce10d62cc40599 (diff) | |
download | anastasis-3cd50b42f77908fb0e428dcfdbfd617731dcc3ae.tar.gz anastasis-3cd50b42f77908fb0e428dcfdbfd617731dcc3ae.tar.bz2 anastasis-3cd50b42f77908fb0e428dcfdbfd617731dcc3ae.zip |
stasis: fix some DB issues
* do not always create a new DB connection
* use the correct config section
Diffstat (limited to 'src/stasis')
-rw-r--r-- | src/stasis/plugin_anastasis_postgres.c | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/src/stasis/plugin_anastasis_postgres.c b/src/stasis/plugin_anastasis_postgres.c index b0b8f96..729c76d 100644 --- a/src/stasis/plugin_anastasis_postgres.c +++ b/src/stasis/plugin_anastasis_postgres.c @@ -134,7 +134,7 @@ postgres_create_tables (void *cls) * @return #GNUNET_OK upon success; #GNUNET_SYSERR upon failure */ static enum GNUNET_GenericReturnValue -postgres_connect (void *cls) +prepare_statements (void *cls) { struct PostgresClosure *pg = cls; struct GNUNET_PQ_PreparedStatement ps[] = { @@ -502,14 +502,16 @@ postgres_connect (void *cls) GNUNET_PQ_PREPARED_STATEMENT_END }; - pg->conn = GNUNET_PQ_connect_with_cfg (pg->cfg, - "stasis-postgres", - NULL, - NULL, - ps); - if (NULL == pg->conn) - return GNUNET_SYSERR; - return GNUNET_OK; + { + enum GNUNET_GenericReturnValue ret; + + ret = GNUNET_PQ_prepare_statements (pg->conn, + ps); + if (GNUNET_OK != ret) + return ret; + pg->init = true; + return GNUNET_OK; + } } @@ -562,7 +564,7 @@ internal_setup (struct PostgresClosure *pg, struct GNUNET_PQ_Context *db_conn; db_conn = GNUNET_PQ_connect_with_cfg (pg->cfg, - "exchangedb-postgres", + "stasis-postgres", NULL, es, NULL); @@ -576,7 +578,7 @@ internal_setup (struct PostgresClosure *pg, return GNUNET_OK; if (skip_prepare) return GNUNET_OK; - return postgres_connect (pg); + return prepare_statements (pg); } @@ -2784,7 +2786,8 @@ libanastasis_plugin_db_postgres_init (void *cls) } plugin = GNUNET_new (struct ANASTASIS_DatabasePlugin); plugin->cls = pg; - plugin->connect = &postgres_connect; + /* FIXME: Should this be the same? */ + plugin->connect = &postgres_preflight; plugin->create_tables = &postgres_create_tables; plugin->drop_tables = &postgres_drop_tables; plugin->gc = &postgres_gc; |