BUG #11335: an invalid prepare statement causes crash at log_statement = 'mod' or 'ddl'.

From: harukat(at)sraoss(dot)co(dot)jp
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #11335: an invalid prepare statement causes crash at log_statement = 'mod' or 'ddl'.
Date: 2014-09-02 11:16:53
Message-ID: 20140902111653.2936.35702@wrigleys.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 11335
Logged by: invalid prepare statement causes crash at log_statement = 'mod' or 'ddl'.
Email address: harukat(at)sraoss(dot)co(dot)jp
PostgreSQL version: 9.3.5
Operating system: CentOS 6.2 (64bit / gcc 4.4.7)
Description:

setting:
log_statement = 'mod' # or 'ddl'

reproduction client code:
<?php
require_once 'MDB2.php';
$con1 =& MDB2::connect("pgsql://postgres(at)localhost/db1");
if (PEAR::isError($con1)) { die($con1->getMessage()); }
$sth = $con1->prepare("");
if (PEAR::isError($sth)) { die($sth->getMessage()); }
$sth->execute();
?>

log messages:
2014-09-02 19:41:57 JST 9453 LOG: server process (PID 10372) was
terminated by signal11: Segmentation fault
2014-09-02 19:41:57 JST 9453 DETAIL: Failed process was running:
EXECUTE mdb2_statement_pgsql_9cc7dc53dfc30b3c2b937c650346f586

This occur in 9.3.5 and 9.1.14. (It probably occur at any versions.)
I tested that the following fix prevent this crash.

*** ./src/backend/tcop/utility.c 2014-09-02 19:32:44.735266203 +0900
--- ./src/backend/tcop/utility.c.ORG 2014-09-02 18:17:47.631854101 +0900
***************
*** 2307,2314 ****
GetCommandLogLevel(Node *parsetree)
{
LogStmtLevel lev;
- if (! parsetree)
- return LOGSTMT_ALL;

switch (nodeTag(parsetree))
{
--- 2307,2312 ----

Though we should throw ERROR for empty prepared statement,
I hope for a symptomatic treatment such as the above.
Because an application package use such wrong query.

----------------------------------------------------------
Haruka Takatsuka
harukat(at)sraoss(dot)co(dot)jp SRA OSS, Inc. http://www.sraoss.co.jp

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Amit Kapila 2014-09-02 11:43:19 Re: build with vs2008
Previous Message David G Johnston 2014-09-02 00:19:38 Re: BUG #11325: Documentation Bug / RFE