Skip to content

Single row mode with PostgreSQL is broken #1214

@vadz

Description

@vadz

I have never tested it so far but wanted to do it to explore potential performance advantages of using it and it turns out that it doesn't work at all, any statement executed after the first one fails (whether the first one failed or not).

The immediate cause of the problem is that we don't call PQgetResult() until it returns null in postgresql_statement_backend::execute(), as we should, so we never finish executing a statement in this mode.

However there are more problems with it than that: we really shouldn't be enabling it for statements returning at most a single row, this is just useless. And it would be most useful with bulk operations, but we currently throw "not supported" exception for them.

Support for single row mode needs to be either redesigned or removed.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions