|
|
Subscribe / Log in / New account

PostgreSQL 8.4 released

From:  Josh Berkus <josh-AT-postgresql.org>
To:  press-mailout-AT-pgfoundry.org
Subject:  Release: PostgreSQL 8.4
Date:  Wed, 01 Jul 2009 07:50:03 -0700
Message-ID:  <4A4B779B.6040103@postgresql.org>

For Immediate Release

JULY 1, 2009: The PostgreSQL Global Development Group has released 
version 8.4, continuing the rapid development of the world's most 
advanced open source database.  This release contains an abundance of 
enhancements to make administering, querying, and programming of 
PostgreSQL databases easier than ever before.  With 293 new or improved 
features in version 8.4, there are even more reasons to choose 
PostgreSQL for your next project.

The most numerous changes in PostgreSQL 8.4 are new or improved 
administration and monitoring tools and commands.  Each user has their 
own favorite features which will make day-to-day work with PostgreSQL 
easier and more productive for them.

"We've used PostgreSQL for seven years now, and we're really looking 
forward to many of the features in 8.4, particularly column permissions, 
per-database locale, partial matches for GIN indexes and user defined 
exceptions," says Jeffrey Webster, CTO of ZooLoo.com. "PostgreSQL has 
allowed us to grow without sacrificing data integrity."

Among the most popular enhancements are:

  * Parallel Database Restore
    speeding up recovery from backup up to 8 times
  * Per-Column Permissions
    allowing more granular control of sensitive data
  * Per-database Collation Support
    making PostgreSQL more useful in multi-lingual environments
  * In-place Upgrades through pg_migrator beta
    enabling upgrades from 8.3 to 8.4 without extensive downtime
  * New Query Monitoring Tools
    giving administrators more insight into query activity

Version 8.4 makes data analysis easier through the advanced ANSI SQL2003 
features of windowing functions, common table expressions and recursive 
queries.  "These query structures increase the expressiveness of 
PostgreSQL's dialect of SQL substantially, allowing users to ask 
interesting questions in a single query that would have been impossible 
to ask before," explains Sailesh Krishnamurthy, Founder, Truviso. 
Enhancements to stored procedures, such as default parameters and 
variadic parameters, make database server programming simpler and more 
compact.

The new release boosts application performance as well, as Kevin 
Grittner, Database Administrator for the Wisconsin Courts System 
comments, "PostgreSQL continues to improve performance in every major 
release.  Version 8.4 has added several optimizations, such as 
semi-joins and anti-joins, which provide dramatic improvement in the run 
time of some of our most demanding queries."

These features mean that PostgreSQL 8.4 will serve more users than ever, 
such as the OpenStreetMap project.  "When we were planning the new 
version of the OpenStreetMap API, it became clear that we needed a 
world-class database that not only ticks the right feature boxes, but 
actually runs well at the scale we need. Although there are many open 
source databases available, PostgreSQL was the obvious choice," says Tom 
Hughes, OpenStreetMap system administrator.

Contact for more information:
	Josh Berkus
	press@postgresql.org
	415-752-2500
	San Francisco, CA

	Bruce Momjian
	press@postgresql.org
	+1-610-359-1001
	Philadelphia, PA

* Download PostgreSQL 8.4:
   http://www.postgresql.org/download/

* Full list of 8.4 Features (English):
   http://www.postgresql.org/about/press/features84

* Release Notes (English):
   http://www.postgresql.org/docs/8.4/static/release.html

* Extended Press Release:
   http://www.postgresql.org/about/press/presskit84.html

About PostgreSQL: PostgreSQL is the collective work of hundreds of 
developers, building on over twenty years of development which began at 
the University of California, Berkeley. With its long-term support of 
enterprise-level transactional database features and scalability, 
PostgreSQL is being used by many of today's most demanding businesses 
and government agencies. PostgreSQL is distributed under a BSD license, 
which allows use and distribution without fees for both commercial and 
non-commercial applications. Learn more on our home page: 
http://www.postgresql.org.

_______________________________________________
Press-mailout mailing list
Press-mailout@pgfoundry.org
http://pgfoundry.org/mailman/listinfo/press-mailout




to post comments

quite nice

Posted Jul 1, 2009 16:51 UTC (Wed) by ccyoung (guest, #16340) [Link] (3 responses)

needed doc:
window: http://www.postgresql.org/docs/8.4/static/tutorial-window...
recursive: http://www.postgresql.org/docs/8.4/static/queries-with.html

recursive approach was complete surprise (to me) without "connect by" syntax. no coffee yet, so don't understand the overall coolness of WITH.

suppress_redundent_updates() sounds like a godsend, but can find no doc on how to actually use it

array_agg() and unnest() are cute little guys that I think will see a lot of use (remember that arrays can be used for "in" in selects)

citext data type for case insensitive text - wonder if it automatically indexes on one case to preserve speed.

LIMIT (expression or subquery) - now if ALTER SEQUENCE could do the same

going up today. congrats to the pg team!!!

quite nice

Posted Jul 1, 2009 18:28 UTC (Wed) by tbrownaw (guest, #45457) [Link]

recursive approach was complete surprise (to me) without "connect by" syntax. no coffee yet, so don't understand the overall coolness of WITH.

"connect by" is Oracle-specific, I believe the "recursive WITH" is the ANSI SQL standard way to do recursive queries (but I haven't seen the RECURSIVE keyword mentioned anywhere before, so no idea if this is exactly how the standard says). WITH in general is just a useful way to factor out complicated subqueries, sometimes it's easier to read top-to-bottom instead of inside-to-outside and sometimes you need the same subquery several times.

quite nice

Posted Jul 1, 2009 21:37 UTC (Wed) by flewellyn (subscriber, #5047) [Link]

Wow, those window functions and WITH queries would be amazingly powerful with PostGIS. I'm going to have to schedule an upgrade within the next few months!

ALTER SEQUENCE (expression)

Posted Jul 1, 2009 22:03 UTC (Wed) by alvherre (subscriber, #18730) [Link]

Don't hold your breath for using an expression in ALTER SEQUENCE, but you can already use one with the setval() function.

The commenter above is right that WITH RECURSIVE is part of the SQL standard. Yes, RECURSIVE too.

PostgreSQL 8.4 released

Posted Jul 1, 2009 17:07 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link] (15 responses)

Still no built-in synchronous replication and clustering support. Sigh.

PostgreSQL 8.4 released

Posted Jul 1, 2009 18:32 UTC (Wed) by malefic (guest, #37306) [Link] (14 responses)

While initially planned, hot standby patch was postponed till 8.5. The team plans to merge the patch first thing when 8.5 development reopens.

PostgreSQL 8.4 released

Posted Jul 1, 2009 20:56 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link] (13 responses)

Hot _standby_ is not nearly enough. We need a real clustering solution, on par at least with the MySQL.

So far there is a commercial Enterprise DB based on PostgreSQL, but it costs way too much. It's easier to buy Oracle, their RAC stuff is superb.

PostgreSQL 8.4 released

Posted Jul 1, 2009 21:56 UTC (Wed) by dlang (guest, #313) [Link] (12 responses)

there are several clustering solutions to choose from, and have been for years.

is your complaint that you know that they exist?
that you think that they would be better if packaged in the same tarball?
that you think that there are too many to choose from?
that you think that they are too inefficiant?

the reason this standby mode is going into postgres itself is that it ties much more intimately to the core code to do it's real-time replication

PostgreSQL 8.4 released

Posted Jul 1, 2009 22:43 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link] (11 responses)

Notice the word "built-in" in my initial post. I know perfectly well about existing clustering solutions.

I don't trust them. I tried PgCluster and it ate my data. So I don't want to try any invasive third-party patches anymore.

It works out-of-box in MySQL, anyway.

PostgreSQL 8.4 released

Posted Jul 1, 2009 23:13 UTC (Wed) by fdr (guest, #57064) [Link] (4 responses)

PGCluster is sort of in a weird place...certainly not among the most popular solutions. Consider slony (complex, well vetted) or londiste (part of Skype's skytools, mostly for aync multi-master replication)

Also, 'clustering' (which I take to also mean parallel query execution) is orthogonal to replication. Consider middleware, pl/proxy (also a Skype tool), or just old-fashioned hand-rolled application logic.

PostgreSQL 8.4 released

Posted Jul 2, 2009 1:29 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (3 responses)

Slony is asynchronous, and I need synchronous replication _and_ clustering.

I.e. two queries should return the same data if they are executed at the same time (of course, not considering other transactions), even if they are executed on different hardware nodes.

PostgreSQL 8.4 released

Posted Jul 2, 2009 4:00 UTC (Thu) by dlang (guest, #313) [Link] (2 responses)

my understanding of mySQL is that their replication is not synchronous

for postgres, I think the option you would want is plproxy, it makes changes to all boxes in the cluster at the same time and splits queries between machines.

I haven't used it so check that it doesn't have any limitations that will kill you

PostgreSQL 8.4 released

Posted Jul 2, 2009 5:44 UTC (Thu) by fdr (guest, #57064) [Link]

You would be correct; MySQL's replication is asynchronous by in large. Much like Postgres there are some less-well traveled ways to acquire syncrep.

PostgreSQL 8.4 released

Posted Jul 3, 2009 20:27 UTC (Fri) by hingo (guest, #14792) [Link]

That is correct when talking about MySQL Replication. Google has developed "semi-synchronous" replication which should be in MySQL 5.4. Semi-synchronous is to say that changes are not applied synchronously, but data is copied to both masters so it can be considered safe/redundant.

MySQL Cluster on the other hand does provide synchronous replication, not to mention transparent sharding (scale-out) too.

Also for MySQL there are 3rd party solutions to do synchronous replication. I don't have enough experience to comment on those, I've seen people like them and dislike them all.

PostgreSQL 8.4 released

Posted Jul 1, 2009 23:20 UTC (Wed) by dlang (guest, #313) [Link] (5 responses)

I've had friends use the MySQL replication extensivly (admittedly a couple of years ago), and it works for some definitions of 'works'

there are many horror stories around about MySQL replication eating people's data. being 'built-in' doesn't eliminate that possibility.

there are many different ways to do replication and failover for databases, each has advantages and disadvantages. Postgres (through these external projects) has most of the range covered, the hit-standby,synchronous-write mode is missing, and that is what is going to be added in 8.5

it may be that once this gets in, some of the other solutions that need patches will ask to be added as well, but so far it's been a case of trying to to imply that one solution is better than all the others by including it and not the others

most of the different replication solutions that are available for postgres are significantly better than all of the others, for a specific set of requirements.

PostgreSQL 8.4 released

Posted Jul 1, 2009 23:53 UTC (Wed) by akumria (guest, #7773) [Link] (4 responses)

> there are many horror stories around about MySQL replication eating
> people's data. being 'built-in' doesn't eliminate that possibility.

google: "mysql replication horror story"

Presumably they would be so widely known that showing up in the first 10 hits on google is a reasonable test.

Hmm - which of those non-stories was the 'many' that you had in mind?

Anand

PostgreSQL 8.4 released

Posted Jul 2, 2009 0:33 UTC (Thu) by dlang (guest, #313) [Link] (2 responses)

by your own criteria, postgres doesn't have problems with replication iether (just substatute postgres for mysql in your google search)

PostgreSQL 8.4 released

Posted Jul 2, 2009 0:59 UTC (Thu) by akumria (guest, #7773) [Link] (1 responses)

No, I am not the one who said there were 'many horror stories' about MySQL replication.

Please do not weasel out of pointing out information that could be beneficial to those of us attempting to make a balanced consideration between the two.

If you have any stories you can point to -- let us know; I would appreciate the information. It would help to inform my opinion about MySQL and the merits (or otherwise) of it's replication.

Otherwise your comment just serves to inform my opinion about hyperbole on the Internet and its continuing rise.

(pun intended).

Thanks,
Anand

PostgreSQL 8.4 released

Posted Jul 2, 2009 4:09 UTC (Thu) by dlang (guest, #313) [Link]

I have waited many long nights while sysadmins that I know have had to restore mySQL databases from backup or re-clone replicas from the original on mySQL clusters. I was seeing repeated cases where the replication stops, but claims that it is still going, cases where it would corrupt a copy to the point where it was easier and faster to recreate it, as well as issues with the daisy-chain approach to replication where the replicas downstream of the box that first had a problem suffered as well (sometimes recoverably once the problem box was fixed, other times not so)

this was without any system crashes

no, I don't know of Internet links that document this.

my prior post was intended to make the point that doing a google search for "mysql replication horror story" and not finding a real one in the first ten hits has very little, if anything to do with the quality or lack of quality of mysql (or postgres) replication.

I never like to hear of anyone loosing their data, but to then make the claim that if the replication tool was built-in instead of a seperate project it would not have happened, and that mysql 'just works' as an example of this always being true is just not a valid chain of logic.

PostgreSQL 8.4 released

Posted Jul 2, 2009 18:00 UTC (Thu) by yoe (guest, #25743) [Link]

That's not how you search for horror stories on google, and you know it.

"Results 1-10 of about 122,000 for mysql replication broken (0.60 seconds)"

Then again, what with mysql being a horrible toy, clustering being broken is hardly a suprise.

PostgreSQL 8.4 released

Posted Jul 1, 2009 17:37 UTC (Wed) by khc (guest, #45209) [Link] (1 responses)

The gmane links report "No such article"

PostgreSQL 8.4 released

Posted Jul 1, 2009 23:37 UTC (Wed) by alvherre (subscriber, #18730) [Link]

Yes, it comes from a closed list which is only used to send out press releases. You can see the pgsql-announce archives:
http://archives.postgresql.org/message-id/4A4B77A7.609070...


Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds