Alvaro-san;
Thank you for a great advice. I successfully generated all the WAL
records listed below. By deleteing and VACUUMing a table with
btree_gist based index, I was successful to generate all the GIST WAL
records.
Still have the following WAL record to create:
CLOG_TRUNCATE
XLOG_HEAP_INIT_PAGE
XLOG_BTREE_INSERT_META
XLOG_GIN_CREATE_PTREE
XLOG_GIN_DELETE_PAGE
I have to run good amount of transactions before VACUUM FREEZE to
create CLOG_TRUNCATE. I'll try.
It's very helpful if anybody knows how to generate XLOG_HEAP_INIT_PAGE
and XLOG_BTREE_INSERT_META.
I'll ask Oleg-san how to generate GIN-related WALs.
Thank you very much;
----------
Koichi Suzuki
2010/4/14 Alvaro Herrera <alvherre@commandprompt.com>:
> Koichi Suzuki escribió:
>> Hi,
>>
>> Does anyone know how to generate the following WAL records from psql?
>>
>> I'm now fixing pg_lesslog, which I reported a bug. Now code is
>> almost okay and I'd like to add test tools to show pg_lesslog can
>> handle all the WAL record correctly.
>>
>> XLOG_MULTIXACT_ZERO_OFF_PAGE
>> XLOG_MULTIXACT_ZERO_MEM_PAGE
>> XLOG_MULTIXACT_CREATE_ID
>
> For these, you need to do SELECT FOR SHARE of a tuple in more than one
> concurrent session.
>
> I think HEAP_LOCK is SELECT FOR UPDATE.
>
>
>> XLOG_BTREE_DELETE_PAGE
>> XLOG_BTREE_DELETE_PAGE_META
>> XLOG_BTREE_DELETE_PAGE_HALF
>
> These are caused during vacuum of a btree. Create an index, populate
> it, then remove all items. Then vacuum twice.
>
> --
> Alvaro Herrera http://www.CommandPrompt.com/
> PostgreSQL Replication, Consulting, Custom Development, 24x7 support
>