OpenBSD Journal

PostgreSQL and OpenBSD 4.1 Heads Up

Contributed by dwc on from the “dump: The SQL” dept.

As a PostgreSQL user, I noticed the following message by mbalmer@:

PostgreSQL users, this is a reminder for you...

OpenBSD 4.1 CD's are hitting the street and release date is approaching.
The PostgreSQL database port was updated from the 8.1 series to the 8.2
series.  To update you databases you must dump them and restore them
after the update.

I just wanted to remind you of this, when you updated your system and
packages, it's to late to do the database dump...;)

Just to be completely clear on this, do a database dump BEFORE you perform an upgrade or reinstall. Once upon a time I blindly moved to a new version of PostgreSQL without doing this only to find I was hosed. Dumping first keeps the upgrade process as smooth as you've come to expect, and it's something you should do anyway!

Thanks for the heads up, Marc!

(Comments are closed)


Comments
  1. By Steve Shockley (66.28.244.19) on

    Just so everyone knows, you can uninstall the new version, reinstall the old version, dump the DB, uninstall the old version, reinstall the new version, then restore/import. I've had to do this plenty of times when I forget to dump the DBs before an upgrade.

  2. By Devin Smith (drs) devin@devinsmith.net on

    I noticed that the comment was backed out from the upgrade...

    CVSROOT: /cvs
    Module name: www
    Changes by: kili@cvs.openbsd.org 2007/04/24 06:03:43

    Modified files:
    faq : upgrade41.html

    Log message:
    Backout after some discussions.

    The problem is that the note for PostgreSQL may give users a warm fuzzy
    feeling that everything else is safe, which may be false.



    So it may not be safe to do the dump after all?

    Comments
    1. By Anonymous Coward (213.189.152.34) on

      > I noticed that the comment was backed out from the upgrade...
      >
      > CVSROOT: /cvs
      > Module name: www
      > Changes by: kili@cvs.openbsd.org 2007/04/24 06:03:43
      >
      > Modified files:
      > faq : upgrade41.html
      >
      > Log message:
      > Backout after some discussions.
      >
      > The problem is that the note for PostgreSQL may give users a warm fuzzy
      > feeling that everything else is safe, which may be false.
      >
      >
      >
      > So it may not be safe to do the dump after all?

      Yes it is and you have to do it. kili meant in his committ message that is maybe not safe to assume as updates will go as smooth as the PostgreSQL update, now that you have been briefed.

    2. By Matthias Kilian (91.3.1.246) on

      > I noticed that the comment was backed out from the upgrade...
      > The problem is that the note for PostgreSQL may give users a warm fuzzy
      > feeling that everything else is safe, which may be false.
      >
      > So it may not be safe to do the dump after all?

      No, the warm fuzzy feeling applies to people not using PostgreSQL at all. People may say "hey, they mention PostgreSQL in the upgrade guide. I'm not using PostgreSQL at all, so nothing bad can happen to me." But bad things CAN happen, you HAVE to watch out for install messages, for configuration file changes, etc. The main difference for PostgreSQL is that it is a real PITA to recover if you're updating blindly.

      That's the reason for the backout.

      If you're using PostgreSQL, just backup with pg_dumpall(1) before updating it.

      We'd some ongoing discussions, and nick@ will try to write a better (more general, less misleading, but yet informative) text for the package section of the upgrade guide.

      Comments
      1. By Sean Brown (72.242.202.250) on

        >
        > No, the warm fuzzy feeling applies to people not using PostgreSQL at all. People may say "hey, they mention PostgreSQL in the upgrade guide. I'm not using PostgreSQL at all, so nothing bad can happen to me." But bad things CAN happen, you HAVE to watch out for install messages, for configuration file changes, etc. The main difference for PostgreSQL is that it is a real PITA to recover if you're updating blindly.

        Um, what? Do you not list important notices about changes to pf or X because not everyone uses pf or X for fear that they might jump to the conclusion that because they don't use one mentioned system they must be completely safe and the rest of the document doesn't apply to them?

        Comments
        1. By Antoine Jacoutot (ajacoutot) on http://www.lphp.org

          > Um, what? Do you not list important notices about changes to pf or X because not everyone uses pf or X for fear that they might jump to the conclusion that because they don't use one mentioned system they must be completely safe and the rest of the document doesn't apply to them?
          >

          base system != ports
          Important base system changes are _always_ listed (and if not, they should).
          Now, if you want to warn people about upgrading one particular port, they will assume that other ports should be completely safe to upgrade, which might not be the case.
          While "pkg_add -u" is a great tool, it won't dump your database, save your mail spool... or whatever is needed to make sure your upgrade goes smoothly.

          So either check _all_ ports and make a note about those who might give a problem on upgrade, or don't mention any.
          Anyway, before upgrading a box, one should do his homework...

          Comments
          1. By Marc Espie (163.5.254.20) espie@openbsd.org on

            This discussion is not finished. There was some major disagreement, and
            I haven't had time to come back to it.

            Yes, there are issues updating PostGres.
            Yes, I'm all for listing those issues, because they are deadly.

            Yes, I disagree with the 2nd commit because it removes information, and at
            least one confused user has already stated that he doesn't know if he can
            update postgres blindly.

            Like, duh, of course, all system updates must be done carefully, be they
            the base system, or ports. And the upgrade FAQ should mention this in no
            uncertain terms.

            But at the same time, I feel *strongly* there is *no reason* to not give
            extra information regarding some specific software. There is at most a
            handful of ports like postgres where updating blindly may fuck you up badly.

            Just because we do not cover them all does *not* mean posgres *IN PARTICULAR*
            does not deserve a specific mention.

            Comments
            1. By Nick Holland (63.85.131.10) nick@holland-consulting.net on http://www.openbsd.org/faq/upgrade41.html

              > This discussion is not finished.

              maybe it is, now. :)
              I've committed a note that
              1) Postgresql IS a problem.
              2) Other problems may well exist.

              Assuming I'm not given reason to regret this, hopefully this will be a new section in upgrade42.html, with maybe a less incomplete list.

              It is always an interesting question, when given a new tool, will people do more good or harm to themselves with it. (There is also the interesting question, will perception match reality...but that's another rant...)

              Nick.

  3. By Anonymous Coward (66.186.93.3) on

    Another bit of a heads up, stuff changed with the internals of tsearch2 so this adds a bit more sillyness to the dump/restore process if you use it.

  4. By JuJuBeGood (jujubegood) jujubegood@gmail.com on

    Hi all,

    Just to avoid you to upgrade 2 times in 2 days :)

    A postgres security bug fix had been released only few days ago.
    As i don't known which postgresql version will be included in OpenBDSD 4.1 (guess 8.2.3 as that bugfix is really brand new?), this could be usefull to upgrade only one time, to the v8.2.4

    More info on CVE page:
    http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-2138

    confirm by postgresql at:
    http://www.postgresql.org/support/security.html

    Regards,
    JuJu

    Comments
    1. By Marc Balmer (213.189.152.34) on


      > A postgres security bug fix had been released only few days ago.
      > As i don't known which postgresql version will be included in OpenBDSD 4.1 (guess 8.2.3 as that bugfix is really brand new?), this could be usefull to upgrade only one time, to the v8.2.4

      4.1-release will contain PostgreSQL 8.2.3, PostgreSQL 8.2.4 will be committed to the -stable branch after release.

      OpenBSD 4.1-current contains PostgreSQL 8.2.4.

Latest Articles

Credits

Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original deadly.org with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]