Could you give me your frank opinions about which of 8.4 or 9.0 you
recommend to ISVs who embed PostgreSQL?
We have used PostgreSQL 8.3 as a data repository of our software products.
Now we are developing the new versions of those existing products and a new
product. So, we are considering taking this opportunity to migrate to
PostgreSQL 8.4 or 9.0, because newer PostgreSQL versions will be supported
longer and offer features like visibility map and auto-sizing of free space
map that contribute to steadier operation.
We are considering which of 8.4 or 9.0 we should use. We value, in this
order, steady operation, software quality (less bugs), troubleshooting
functionality, and better compatibility for future versions (smoother
migration to 9.1 or later). We are just using basic simple read/write SQL
statements, online backup and recovery with continuous WAL archiving
(pg_start_backup/pg_stop_backup, etc.), so won't yet have a chance to
utilize most of 9.0's advanced functionality such as HS/SR, PL/pgSQL
enhancements, and so on. With that said, the following 9.0 features seem
interesting because they may help better operation:
* speed up of VACUUM FULL
* buffer access counts of EXPLAIN, auto-explain, and pg_stat_statements
* logging of column values that violate unique key constraints
We are wondering whether 9.0 is stable enough within the range of basic SQL
operations and backup/recovery so that you recommend taking advantage of
above features. Please let me hear your raw sense about 9.0 stableness as
developers who know the code well, after seeing many bug reports so far and
experiencing four minor releases. Do you recommend 8.4 or 9.0?
For reference, I collected the following data from the attached bug lists.
The number of regressions in 9.0 appear to be a bit high releative to
previous major releases. So I'm concerned that many new features might be
affecting the quality of features that have existed since before 9.0.
8.3 8.4 9.0
initial release date 2008-2-4 2009-7-1 2010-9-20
months between initial release and latest minor release 38 21 7
# of minor releases 15 8 4
total # of fixed bugs 314 227 81
# of fixed bugs newly made in each major release 107 82 33
# of fixed regressions 7 4 4