Thread: Do you recommend 8.4 or 9.0 for basic usage?

Do you recommend 8.4 or 9.0 for basic usage?

From
"MauMau"
Date:
Hello,

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:

* pg_upgrade
* 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
* pg_table_size/pg_index_size

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


Regards
MauMau

Attachment

Re: Do you recommend 8.4 or 9.0 for basic usage?

From
Joshua Berkus
Date:
MauMau,

> Could you give me your frank opinions about which of 8.4 or 9.0 you
> recommend to ISVs who embed PostgreSQL?

So, first of all, you posted this question to the wrong list.  pgsql-general or pgsql-admin would have been more
appropriatefor this question.
 

That being said, I find your statistics on bug fixes interesting, so thank you for collecting them.

However, at this time there have already been four update releases for 9.0, so you can be fairly assured that any major
bugshave been fixed.  9.0 was definitely a higher patch release (and longer beta) than 8.4 specifically because of
streamingreplication & hot standby.  Those are major, complex features which offer the opportunity for issues which
onlyoccur in multi-server configurations and are thus hard to test for.
 

Our company has multiple ISV clients who are deploying products built on 9.0.X, and to date have had no special
issues.

As an ISV, though, you need to devise a plan whereby you can apply update releases to your client's machines if they
areconnected to the internet.  One of the primary reasons for update releases is closing security holes, which means
thatyou need to have a way to upgrade your customers.  Some of the biggest issues we've seen in our clients is that an
inabilityto apply in-the-field updates causing customers to experience bugs which have long been fixed in PostgreSQL
releases.

-- 
Josh Berkus
PostgreSQL Experts Inc.
http://pgexperts.com
San Francisco


Re: Do you recommend 8.4 or 9.0 for basic usage?

From
"MauMau"
Date:
Josh,

From: "Joshua Berkus" <josh@agliodbs.com>
>> Could you give me your frank opinions about which of 8.4 or 9.0 you
>> recommend to ISVs who embed PostgreSQL?
>
> So, first of all, you posted this question to the wrong list. 
> pgsql-general or pgsql-admin would have been more appropriate for this 
> question.

> However, at this time there have already been four update releases for 
> 9.0, so you can be fairly assured that any major bugs have been fixed. 
> 9.0 was definitely a higher patch release (and longer beta) than 8.4 
> specifically because of streaming replication & hot standby.  Those are 
> major, complex features which offer the opportunity for issues which only 
> occur in multi-server configurations and are thus hard to test for.
>
> Our company has multiple ISV clients who are deploying products built on 
> 9.0.X, and to date have had no special issues.
>
> As an ISV, though, you need to devise a plan whereby you can apply update 
> releases to your client's machines if they are connected to the internet. 
> One of the primary reasons for update releases is closing security holes, 
> which means that you need to have a way to upgrade your customers.  Some 
> of the biggest issues we've seen in our clients is that an inability to 
> apply in-the-field updates causing customers to experience bugs which have 
> long been fixed in PostgreSQL releases.

Thank you very much for offering your experience and advice, I'd like to 
share your voice with my boss. And I'm sorry for posting to the wrong list. 
Yes, I was torn between pgsql-hackers and pgsql-general. I didn't want to 
unintentionally give misconception about 9.0 quality to general users, so I 
kept the mail here in the end.

Regards,
MauMau



Re: Do you recommend 8.4 or 9.0 for basic usage?

From
David Fetter
Date:
On Sun, May 22, 2011 at 12:32:48PM -0500, Josh Berkus wrote:
> MauMau,
> 
> > Could you give me your frank opinions about which of 8.4 or 9.0
> > you recommend to ISVs who embed PostgreSQL?

> As an ISV, though, you need to devise a plan whereby you can apply
> update releases to your client's machines if they are connected to
> the internet.

You need such a plan whether the clients' machines are connected to
the internet or not because access control[1] is not the only place
where your system may turn out to have bugs.

The only case where you will not need such a plan is for a disposable
system, i.e. where the decision tree for "there's a bug" has one
branch, which is "replace the system."

Cheers,
David.

[1] Please try hard not to confuse access control with security.
Access control has been, is, and will continue to be used by attackers
to damage systems from ones as small as chat rooms all the way up to
governments and economies.
-- 
David Fetter <david@fetter.org> http://fetter.org/
Phone: +1 415 235 3778  AIM: dfetter666  Yahoo!: dfetter
Skype: davidfetter      XMPP: david.fetter@gmail.com
iCal: webcal://www.tripit.com/feed/ical/people/david74/tripit.ics

Remember to vote!
Consider donating to Postgres: http://www.postgresql.org/about/donate