Subject | Re: [firebird-support] Firebird 2.5 classic performance issue on linux64 |
---|---|
Author | Andreas Zeller |
Post date | 2017-02-26T23:06:11Z |
Sean,
thanks for the response. Answers below.
Alright. I am well aware of that. Each process has its own cache, inheriting the value from the configuration. Cache and buffers are configured accordingly. Thanks for the heads up though.
Andreas,
> - increase page size to 16kB (gbak -> and restore with new pagesize)
> - increased buffers for firebird to use up to 4GB of ram (256kB) via gfix
With Classic server you *need* to reduce the number of cached pages -- I would recommend a value < 500 pagespeople keep telling me otherwise. Why would I not want firebird to fill up the cache with lots of pages? Am I misunderstanding firebirds buffer concept?
<SL> There are 3 different ‘modes’ that Firebird can run in.
<SL> “Classic” mode is for a large number of connections. For that mode, the number of pages needs to be reduced.
<SL> For “SuperServer” and “SuperClassic” modes the number of pages can be maximized.
nope. It's just that it is a very unlikely scenario and if this actually happens, losing just a days work is an acceptable risk. I'm not saying that this wouldn't be bad, but all of the work done can be easily reconstructed using e-mails and other incoming data.
why would it do that? It is entirely under our control when and if the server restarts or shuts down. I agree with the reasoning, I just don't see the scenario. Power outage would be the worst case scenario. And if that actually happened mid-transaction, we have nightly backups that would be good enough.
Forced Writes = ON is HIGHLY recommended in all production use-cases.
I realize that. The worst case scenario is acceptable to the client though.
<SL> You must be in a unique environment.
I can see that. But in this particular scenario, we're talking 1-2 seconds per mouse-click. Depending on the operation. if you slow down everything (!) like that, it is going to be a lot more productive for them to get some work done every day than losing a days work around every two years :) but generally you are right.
<SL> My clients/users would have my skin if I told them they had to redo all their work at 5pm, the end of a busy work day – just because I wanted to save “millisecond” for each write operation (given the presence of a RAID controller with battery cache) by using Forced Writes = Off and the power went out (someone bumped a power switch).
This is the first time we encountered a firebird database, so this is new ground to all of us.
Lock tables seem to be empty though. That is what google told me about the error.
I really am lost. fb_config tells me that the config directory is the one I picked. However, firebird still uses /tmp/firebird as a temp directory, regardless of what I set as envvar or in the config.
So I am obviously concerned that none of the settings I make do have any effect.
How can I check out if any of that had any effect?
Andreas