ID:               32223
 Updated by:       [EMAIL PROTECTED]
 Reported By:      valiak at gmail dot com
-Status:           Open
+Status:           Assigned
 Bug Type:         PostgreSQL related
 Operating System: *
 PHP Version:      5CVS-2005-10-10
 Assigned To:      helly
 New Comment:

Marcus?


Previous Comments:
------------------------------------------------------------------------

[2005-10-10 12:24:06] valiak at gmail dot com

i tried with the new version problem still exists (it does not exists
in version 4)

your script differs from the one I have posted, the main difference is
that I use constant to store the return value of pg_connect, the code
is in funcion, and the include must appear bellow pg_connect, try this
test:

--TEST--
Bug #32223 (weird behaviour of pg_last_notice)
--SKIPIF--
<?php
require_once('skipif.inc');

@pg_query($conn, "CREATE LANGUAGE 'plpgsql' HANDLER
plpgsql_call_handler LANCOMPILER 'PL/pgSQL'");
$res = @pg_query($conn, "CREATE OR REPLACE FUNCTION test_notice()
RETURNS boolean AS '
begin
        RAISE NOTICE ''11111'';
        return ''f'';
end;
' LANGUAGE plpgsql;");
if (!$res) die('skip PLPGSQL not available');
?>
--FILE--
<?php

require('config.inc');

define ('dbh', pg_connect($conn_str));

require('config.inc');

if (!dbh) {
        die ("Could not connect to the server");
}

//@pg_query(dbh, "CREATE LANGUAGE 'plpgsql' HANDLER
plpgsql_call_handler LANCOMPILER 'PL/pgSQL'");
$res = pg_query(dbh, "CREATE OR REPLACE FUNCTION test_notice() RETURNS
boolean AS '
begin
        RAISE NOTICE ''11111'';
        return ''f'';
end;
' LANGUAGE plpgsql;");


function tester() {
        $res = pg_query(dbh, 'SELECT test_notice()');
        $row = pg_fetch_row($res, 0);
        var_dump($row);
        pg_free_result($res);
        if ($row[0] == 'f')
        {
                var_dump(pg_last_notice(dbh));
        }
}
tester();

pg_close(dbh);

?>
===DONE===
--EXPECTF--
array(1) {
  [0]=>
  string(1) "f"
}
string(14) "NOTICE:  11111"
===DONE===

------------------------------------------------------------------------

[2005-10-09 18:07:55] [EMAIL PROTECTED]

I made up a php test script for this: ext/pgsql/tests/80_bug32223.phpt

But i cannot reproduce your behavior with 5.1-dev or HEAD.

Maybe it is postgres?

marcus=# select version();
                                                               version
--------------------------------------------------------------------------------------------------------------------------------------
 PostgreSQL 8.0.1 on i586-mandrake-linux-gnu, compiled by GCC
i586-mandrake-linux-gnu-gcc (GCC) 3.4.3 (Mandrakelinux 10.2
3.4.3-7mdk)

Works in all versions for me. So please try the following:
php run-tests.php ext/pgsql/tests/80_bug32223.phpt

If that fails, can you do a 'memcheck' on that?

And tell me your postgres version.

------------------------------------------------------------------------

[2005-09-24 20:36:28] [EMAIL PROTECTED]

Assigned to the maintainer.


------------------------------------------------------------------------

[2005-09-23 15:55:35] valiak at gmail dot com

the code snipped is presented in the bug report and is    
quite easily reproduced on any machine with postgresql and    
php5 I have tried, there were some other users confirming 
the problem, but are deleted from the bug report. 
It has "external resources such as databases, etc." 
because it is a database related bug!! 
I use "Short tags" because it is written here   
http://www.php.net/manual/en/language.basic-syntax.php   
that I can use them.  
  
Anyway ......... here is even more short version of the 
bug 
(but still with external resources!!! and two files)  
http://ce.noxis.net/pg_last_notice/test.php // the main 
file 
http://ce.noxis.net/pg_last_notice/test.inc.php // the 
include 
http://ce.noxis.net/pg_last_notice/db.sql // the database 
schema - only one function

------------------------------------------------------------------------

[2005-09-02 14:48:49] valiak at gmail dot com

still do not work correctly, there is no output even with 
E_ALL

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/32223

-- 
Edit this bug report at http://bugs.php.net/?id=32223&edit=1

Reply via email to