Subject performance loss after rollbacks
Author kaczy27
Hi,

I am experiencing great performance loss of the database after
rolling back transactions.

I am doing quite a lot of those - in my testing module, which is
roughly following this patter, 1. get prepared database, 2. start
transaction 3. verify result correctnes, 4. rollback

I am doing some inserts/updates/deletes, usually on small numbers of
record. The test databases rarely exceeds 2 MB in size.

However while the first run of tests can take about a 2-3 minutes,
after few runs it can easily take 15.

I've checked the databases with gstat and they are all similiar to
below:
Flags 0
Checksum 12345
Generation 602
Page size 1024
ODS version 10.1
Oldest transaction 594
Oldest active 595
Oldest snapshot 595
Next transaction 596
Bumped transaction 1
Sequence number 0
Next attachment ID 0
Implementation ID 16
Shadow count 0
Page buffers 0
Next header page 0
Database dialect 3
Creation date Feb 12, 2006 14:00:07
Attributes force write

Variable header data:
Sweep interval: 20000
*END*

I am using 1.5.2 version on WinXP Sp2, single procesor, I believe
all config settings are default.

Currently the onyl way to return up to speed is a backup/restore
cycle. It is certainly possible to include this into the test
sequence, but maybe there is another solution?

CUIN Kaczy