Subject: postgresql 8.0 advantages

From: Si Chen <[email-masked]>
Date: Fri, 25 Feb 2005 06:41:42 -0800

Hello.

I read the PostgreSQL 8.0 "What's New" page 
(http://www.postgresql.org/docs/whatsnew) and wasn't sure whether 
version 8.0 is significantly faster, more scalability, or more stable 
than versions 7.4?  I remember big speed improvements between 7.3 and 
7.4.  It seems the biggest advantage of version 8.0 is being able to run 
in Windows. 

Is that true?

Thanks,

Si Chen

---

From: Sean Davis <[email-masked]>
Date: Fri, 25 Feb 2005 09:53:09 -0500

On Feb 25, 2005, at 9:41 AM, Si Chen wrote:

> 7.4.  It seems the biggest advantage of version 8.0 is being able to 
> run in Windows.
> Is that true?

I like programming in perl and the new pl/perl adds a totally new 
dimension to databasing.  For example, the dbi-link 
(http://pgfoundry.org/projects/dbi-link/) project allows you to create 
a schema within your database that mirrors another data source (any 
data sources available via perl DBI).  You could have an XML file 
served from the web as a set of tables in one schema, a mysql database 
as a second schema, and a set of csv files in a directory as a third 
schema, all with views within Postgres that allow query, update, 
delete, etc.  Other projects such as this are likely to spring up, I 
would imagine.  Performance characteristics aside (which I will leave 
to others to comment about), I have found the pl/perl improvements well 
worth the switch.

Sean

---

From: Tom Lane <[email-masked]>
Date: Fri, 25 Feb 2005 11:15:15 -0500

> 7.4.  It seems the biggest advantage of version 8.0 is being able to run 

There are some speed improvements in 8.0 too, though that wasn't the
main focus of the release cycle.  For instance, Lonni Friedman's nearby
thread reports on a case where 8.0 consistently finds a much better
query plan for a complex query than prior releases did, because we fixed
some issues in the GEQO planner module.

			regards, tom lane

---

From: Lonni J Friedman <[email-masked]>
Date: Fri, 25 Feb 2005 09:20:23 -0800

On Fri, 25 Feb 2005 09:20:29 -0800, Si Chen <[email-masked]> wrote:
> Thanks!
> 
> Is there any documentation on how to upgrade to 8.0?

Dump your DB, install 8.0, reload your DB.  Since you'e using RHEL3,
you should use the RPMs and it will be fairly easy.

> Is it possible to upgrade from 7.4 to 8.0 while keeping a production
> database running "in place"?  Or should I install 8.0 in another

No, its not. 

> directory/machine and then restore the database into it?  Are there any
> incompatibilities/modifications to databases from the earlier veresion
> required?

Depends on what kind of data structures you have in the DB

-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
L. Friedman                                    [email-masked]
LlamaLand                       http://netllama.linux-sxs.org

---

From: Si Chen <[email-masked]>
Date: Fri, 25 Feb 2005 09:20:29 -0800

Thanks!

(I am running RHEL3.)

Si Chen

---

From: Jeff Davis <[email-masked]>
Date: Sat, 26 Feb 2005 01:27:55 -0800

> incompatibilities/modifications to databases from the earlier veresion 

You might want to check out Slony-I <http://www.slony.info> for the
purpose of upgrading. Slony is actually a replication engine, but it can
be used to upgrade with little or no downtime. Otherwise, just
dump/upgrade/restore like normal.

As far as compatibility, 8.0 should be mostly backwards compatible.
There may be some minor things that I don't know about, so I recommend
some testing first.

Regards,
	Jeff Davis

---

From: "Jim C. Nasby" <[email-masked]>
Date: Sat, 26 Feb 2005 15:35:27 -0600

> dump/upgrade/restore like normal.

Has anyone tried moving a database from one location to another on the
HD? I'd like to use slony to minimize downtime, but I'd also like my
data to end up in the same place it is right now when I'm done.
-- 
Jim C. Nasby, Database Consultant               [email-masked] 
Give your computer some brain candy! www.distributed.net Team #1828

Windows: "Where do you want to go today?"
Linux: "Where do you want to go tomorrow?"
FreeBSD: "Are you guys coming, or what?"

---

From: Christopher Browne <[email-masked]>
Date: Sat, 26 Feb 2005 21:12:54 -0500

> data to end up in the same place it is right now when I'm done.

Yes, that certainly ought to work.

If what you're meaning is that you make a replica that sits in
/opt/VERSION8, and then, once the upgrade is complete, rename that to
/opt/MYDATABASE which was where your version 7.4 DB used to be.

We have copied databases from one server to another by copying the
files; making it work was as easy as making sure we ran "pg_ctl -D
$RIGHT_DIRECTORY start" :-).
-- 
let name="cbbrowne" and tld="cbbrowne.com" in name ^ "@" ^ tld;;
http://cbbrowne.com/info/lisp.html
"I don't know why, but first C  programs tend to look a lot worse than
first programs  in any other  language (maybe except for  FORTRAN, but
then I suspect all FORTRAN programs look like `firsts')" -- Olaf Kirch

---

From: "Julian Scarfe" <[email-masked]>
Date: Sun, 27 Feb 2005 10:58:16 -0000

From: "Tom Lane" <[email-masked]>

> some issues in the GEQO planner module.

Could you give an example or two of the sorts of queries for which 
performance is improved under 8.0 compared with 7.4, please Tom?

Thanks

Julian Scarfe

---

From: Christopher Browne <[email-masked]>
Date: 27 Feb 2005 12:19:18 GMT

---

From: Tino Wildenhain <[email-masked]>
Date: Sun, 27 Feb 2005 21:27:41 +0100

Hi,

> data to end up in the same place it is right now when I'm done.

I used a straight copy of the filesystem with running database
(over the net in my case) and immediately after that,
stop the db and rsync for the last changes. This took only
10 minutes (compared to 1.5h for the full filesystem copy)
and I could start up the db in new location.

this could work for you too.

Regards
Tino

---

From: "Jim C. Nasby" <[email-masked]>
Date: Mon, 28 Feb 2005 13:36:59 -0600

> this could work for you too.

I hadn't thought about using rsync; that's a great idea!

Is there somewhere this could be documented? In an FAQ maybe?
-- 
Jim C. Nasby, Database Consultant               [email-masked] 
Give your computer some brain candy! www.distributed.net Team #1828

---

From: Martijn van Oosterhout <[email-masked]>
Date: Mon, 28 Feb 2005 21:27:46 +0100

> Is there somewhere this could be documented? In an FAQ maybe?

It works only in the special case where the PostgreSQL version number
is the same and you're running on the same platform. How often are you
transferring databases like that. Even transferring from i386 to amd64
wouldn't work like this AFAIUI.
-- 
Martijn van Oosterhout   <[email-masked]>   http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
> tool for doing 5% of the work and then sitting around waiting for someone
> else to do the other 95% so you can sue them.

---

From: "Jim C. Nasby" <[email-masked]>
Date: Tue, 1 Mar 2005 13:14:26 -0600

> wouldn't work like this AFAIUI.

Absolutely true, although in the case of database version PostgreSQL
will check that itself. But in the context this was originally brought
up in (using Sloney to upgrade a machine from 7.4.x to 8.x), it would
work great, and rsync would make a huge difference in downtime.
-- 
Jim C. Nasby, Database Consultant               [email-masked] 
Give your computer some brain candy! www.distributed.net Team #1828

---

From: Bruce Momjian <[email-masked]>
Date: Thu, 17 Mar 2005 00:02:55 -0500 (EST)

> Is there somewhere this could be documented? In an FAQ maybe?

Added to documentation, patch attached.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  [email-masked]               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
Index: doc/src/sgml/backup.sgml
===================================================================
RCS file: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v
retrieving revision 2.56
diff -c -c -r2.56 backup.sgml
*** doc/src/sgml/backup.sgml	25 Feb 2005 04:56:01 -0000	2.56
--- doc/src/sgml/backup.sgml	17 Mar 2005 05:01:54 -0000
***************
*** 374,379 ****
--- 374,388 ----
    </para>
  
    <para>
+    Another option is to use <application>rsync</> to perform a file
+    system backup.  First, while the database server is running, 
+    run <application>rsync</>, then shut down the database
+    server and perform a second <application>rsync</>, then
+    restart the database server.  This allows a file system backup to be
+    performed with minimal downtime.
+   </para>
+ 
+   <para>
     Note that a file system backup will not necessarily be
     smaller than an SQL dump. On the contrary, it will most likely be
     larger. (<application>pg_dump</application> does not need to dump