Re: BUG #16028: JDBC currentSchema connection parameter not working for text search configuration

From: Dave Cramer <davecramer(at)gmail(dot)com>
To: Alex <cdalxndr(at)yahoo(dot)com>
Cc: PG Bug reporting form <noreply(at)postgresql(dot)org>, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #16028: JDBC currentSchema connection parameter not working for text search configuration
Date: 2019-09-30 10:56:24
Message-ID: CADK3HH+ri_c6M9AfGY0D_BNBNgxtBFTqgohuRhuhL_xYR2R15g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Alex,

On Mon, 30 Sep 2019 at 06:13, Alex <cdalxndr(at)yahoo(dot)com> wrote:

> Additional info:
> The original schema was exported using pg_dump (whole db) and imported
> using "psql -f".
> Then I've renamed the schema in PgAdmin(4.13) to "dev" (right click ->
> Properties -> change name -> Save).
>
> If I rename back the schema to original name, and use that name in
> "currentSchema" param, then everything works correctly.
>
> In addition, I don't know if any configuration may override the connection
> param "currentSchema" (such as hibernate overwriting "search_path"), but in
> my case it should be used as fallback to resolve missing text search
> configuration.
>

Seems something else is going on then as this code:

@Test
public void testSchemaInProperties() throws Exception {
Connection con =
java.sql.DriverManager.getConnection("jdbc:postgresql://127.0.0.1:5432/test?currentSchema=dev,public","test","");

Statement stmt = con.createStatement();
stmt.execute("SHOW search_path");

ResultSet rs = stmt.getResultSet();
if (!rs.next()) {
Assert.fail("'options' connection initialization parameter should
be passed to the database.");
}
Assert.assertEquals("'options' connection initialization parameter
should be passed to the database.", "dev,public", rs.getString(1));

stmt.close();
TestUtil.closeDB(con);

}

works fine.

Dave.

>
> On Monday, September 30, 2019, 3:45:48 AM GMT+3, Dave Cramer <
> davecramer(at)gmail(dot)com> wrote:
>
>
> Interesting,
>
> Thanks for the report.
>
> Dave Cramer
>
>
> On Thu, 26 Sep 2019 at 18:16, PG Bug reporting form <
> noreply(at)postgresql(dot)org> wrote:
>
> The following bug has been logged on the website:
>
> Bug reference: 16028
> Logged by: cd a
> Email address: cdalxndr(at)yahoo(dot)com
> PostgreSQL version: 10.3
> Operating system: Windows 10
> Description:
>
> Using a java spring app with connection:
>
> jdbc:postgresql://localhost:5433/postgres?currentSchema=dev,public&ApplicationName=myapp
> Schema 'dev' has fts configuration 'en'.
> Query (debugged PgPreparedStatement):
> select * from dev.category where category.language='en'
> the param 'en' is registered with oid (paramType) 3734 corresponding to
> 'regconfig' type
>
> Query results in: ERROR: text search configuration "en" does not exist
>
> The same error is shown when running the query in PgAdmin if search_path
> doesn't contain 'dev' schema. With 'dev' in search_path, the query is ok.
> I was expecting that 'currentSchema' connection parameter will be used to
> resolve fts configuration to 'dev' schema.
>
>

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Alex 2019-09-30 11:37:37 Re: BUG #16028: JDBC currentSchema connection parameter not working for text search configuration
Previous Message Alex 2019-09-30 10:13:03 Re: BUG #16028: JDBC currentSchema connection parameter not working for text search configuration