|Subject||Problem with application that creates hundreds of transactions per minute|
I have happily used Firebird 2.5 for a web application that run 24x7 for at least 2 years. The sweep interval is set to the default 20,000 and it works very well. There is at least 10 inserts per minute but not much more than that. I would guess that there are at least 20 reads per second and I've been completely happy with this trouble free application.Now for the other problematic application...
This is also an online web application which runs wonderfully except during our data import process. This process will INSERT on average about 200 records per minute. But approximately 10% of those INSERTS require a large number of SELECTs and several UPDATEs to other records. This is not a simple case of INSERTing new records.
Everything will run very well for a short period of time but then everything just stalls for several minutes. CPU consumption is always low, even when the stall happens. But the I/O Read and Write is quite high, even when stalled. This tells me that FB is busy doing something.
For this particular database, I decided to set the Sweep Interval to 0 but this stalling still happens.
Just as soon as I notice that FB stalls, I stop the data import process and let FB do whatever it needs to do until it finishes. I can then resume data importation as normal until it stalls again in a few hours.
Is it possible that sweeping is still being triggered even though I have set the interval to 0?