BUG #5738: btree index search bug

Поиск
Список
Период
Сортировка
От spche
Тема BUG #5738: btree index search bug
Дата
Msg-id 201011011018.oA1AI2JM075862@wwwmaster.postgresql.org
обсуждение исходный текст
Ответы Re: BUG #5738: btree index search bug  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
The following bug has been logged online:

Bug reference:      5738
Logged by:          spche
Email address:      spche@163.com
PostgreSQL version: 9.01
Operating system:   Winxp
Description:        btree index search bug
Details:

create table a (a int);
create index a_a on a(a);

insert into a values(1);
insert into a values(2);

insert into a select * from a;
insert into a select * from a;
insert into a select * from a;
insert into a select * from a;
insert into a select * from a;
insert into a select * from a;
insert into a select * from a;
insert into a select * from a;
insert into a select * from a;
insert into a select * from a;
insert into a select * from a;
insert into a select * from a;

delete from a where a=3;

CREATE or replace FUNCTION aa() RETURNS integer AS $$
DECLARE
    curs2 cursor for SELECT a FROM a where a=3;
    rowv1 integer DEFAULT 0;
    rowv2 integer DEFAULT 32;
    cou1 integer DEFAULT 0;
BEGIN

    insert into a values(3);
        OPEN curs2;
        FETCH curs2 INTO rowv1;

        IF FOUND THEN
        cou1 := cou1 + 1 ;
        END IF;
        insert into a values(3);
        insert into a values(3);
        insert into a values(3);
        --update a set a=4 where a=3;

        FETCH curs2 INTO rowv2;
        IF FOUND THEN
        cou1 := cou1 + 1 ;
        END IF;

        FETCH curs2 INTO rowv2;
        IF FOUND THEN
        cou1 := cou1 + 1 ;
        END IF;

        FETCH curs2 INTO rowv2;
        IF FOUND THEN
        cou1 := cou1 + 1 ;
        END IF;

        close curs2;
    RETURN cou1;
END;
$$ LANGUAGE plpgsql;
select aa();


the result is 1; the index scan is not updated;
because static bool
_bt_readpage(IndexScanDesc scan, ScanDirection dir, OffsetNumber offnum)
copy a old version, and not update when new version come.

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

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: Re: ecpg preprocessor regression in 9.0
Следующее
От: Tom Lane
Дата:
Сообщение: Re: BUG #5738: btree index search bug