On 11/14/2011 05:00 AM, Alexandru wrote:
The only performance issue with ext4 is that it is careful to flush data to disk when the database asks it to. That is slow on most hard drives, and it wasn't done correctly by ext3 on older Linux kernels. So to many people this looked like a performance problem, when it was actually a reliability improvement as far as PostgreSQL is concerned. The reliable behavior just takes longer. See http://wiki.postgresql.org/wiki/Reliable_Writes for more information about why this is important. Reports about ext4 being slower by sources like Phoronix were very misinformed about what was going on. When you turn off the synchronous_commit parameter in the postgresql.conf, the database will stop asking the filesystem to ensure things are on disk this way. You can lose some data in the event of a crash, but things will be faster. Try your system with that configuration change. If it gets rid of what you see as a performance problem, then the reliability changes made going from ext3 to ext4 are your problem. If instead the server is still slow to you even with synchronous_commit disabled, whatever is happening is unlikely to be caused by the ext4 changes. In just about every other way but commit performance, ext4 is faster than most other filesystems. -- Greg Smith 2ndQuadrant US greg@xxxxxxxxxxxxxxx Baltimore, MD PostgreSQL Training, Services, and 24x7 Support www.2ndQuadrant.us |