BUG #5244: Attempting to rollback to a savepoint after receiving an error with state 55000 the process hangs

Поиск
Список
Период
Сортировка
От Philip Graham
Тема BUG #5244: Attempting to rollback to a savepoint after receiving an error with state 55000 the process hangs
Дата
Msg-id 200912150415.nBF4FjKx045437@wwwmaster.postgresql.org
обсуждение исходный текст
Ответы Re: BUG #5244: Attempting to rollback to a savepoint after receiving an error with state 55000 the process hangs  (Robert Haas <robertmhaas@gmail.com>)
Re: BUG #5244: Attempting to rollback to a savepoint after receiving an error with state 55000 the process hangs  (Mark Kirkwood <mark.kirkwood@catalyst.net.nz>)
Список pgsql-bugs
The following bug has been logged online:

Bug reference:      5244
Logged by:          Philip Graham
Email address:      philip@lightbox.org
PostgreSQL version: 8.3.8
Operating system:   Linux
Description:        Attempting to rollback to a savepoint after receiving an
error with state 55000 the process hangs
Details:

This may be a PHP so please excure me if it is.

<?php
$pdo = new PDO('pgsql:host=localhost;dbname=a_db', 'a_user', 'my_pass');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

echo 'Creating test objects'."\n";
$pdo->query('CREATE SEQUENCE test_seq');

echo 'Setup complete'."\n";
$pdo->beginTransaction();

try {
    echo 'Setting savepoint'."\n";
    $pdo->query('SAVEPOINT pre_id_fetch');
    echo 'Fetching value'."\n";
    $stmt = $pdo->query('SELECT currval(\'test_seq\');');
    $curId = $stmt->fetchColumn();
    echo 'Releasing savepoint'."\n";
    $pdo->query('RELEASE SAVEPOINT pre_id_fetch');
} catch (PDOException $e) {
    echo 'Rolling back'."\n";
    $pdo->query('ROLLBACK TO pre_id_fetch');
    $curId = 0;
}

echo 'Cur Id: ',$curId,"\n";


Running this code it hangs after echoing 'Rolling back', but only hangs
every other execution (assuming the sequence was deleted first).

Thanks for any help,
Philip

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Craig Ringer
Дата:
Сообщение: Re: statement_timeout is not cancelling query
Следующее
От: Andrew Gierth
Дата:
Сообщение: Re: BUG #5240: Stable Functions that return a table type with a dropped column fail