|
[
Permalink
| « Hide
]
Dmitry Yemanov added a comment - 19/Mar/07 01:57 PM
Is it possible to backport the fix into 2.0.4?
It's much desired, but we have one problem.
Currently it makes sequential insert of records into the table approx 8 times slower (tested with fb 2.1 with ODS 11.0). PIO_init_data() makes file growth much faster. Now I need to do some more measurements with 2.0.Release and after it decide, how to backport. I have reviewed kernel sources only as a last chance. I've hoped that what I see in documentation and what I get with firebird is a kind of mistake, my mistake and doc's writer mistake. See yourself - system call, NOT doing what one asks it to do (i.e. set flag O_SYNC), returns success instead of error! And this awful behavior is documented! Yes, I know that 'documented bug becomes feature', but...
I'm pretty sure taht all older linux versions do have same behavior - or what we have now is serious regression in 2.6, which could not stay unnoticed for years. Moreover, man is independent from kernel, installing newer kernel does not change man pages regarding system calls. And what we have is documented in it. There is interesting article in linux kernel tracker:
http://bugzilla.kernel.org/show_bug.cgi?id=5994 The test provided in that article shows that a lot of unixes (including FreeBSD, Solaris and HPUX) are OK from this POV. Certainly, it will be useful to test that operating systems better. Backported without serious performance optimization.
No idea how to do it safely without ODS 11.1 from firebird 2.1. |
|||||||||||||||||||||||||||||||||||||||||||||||||