Thread: Upgrading side by side in Gentoo

Upgrading side by side in Gentoo

From
"Andrus"
Date:
I have separate production server running

"PostgreSQL 8.1.4 on i686-pc-linux-gnu, compiled by GCC
i686-pc-linux-gnu-gcc (GCC) 3.4.6 (Gentoo 3.4.6-r1, ssp-3.4.5-1.0,
pie-8.7.9)"

and want to upgrade this to something newer.
I can allow some hours of downtime for upgrade at night.

I have found Gentoo upgrade instructions here
http://hasno.info/2008/7/31/upgrading-to-postgresql-8-3-on-gentoo

I have no idea how PostgreSql is installed in this server, maybe it is
compiled from source.
So I'm afraid that using those instructions may corrupt the server so it
will no longer come up in morning and I'm not able to fix it due to lack of
allowed downtime and knowledge.

So I'm planning  the following strategy:

1. Create backup copy in this 8.1.4
2. Stop postmaster
3. Install latest version of PostgreSql to separate directory
4. Restore to it from backup
5. If something fails, stop new and re-start old 8.1.4 postmaster.

The difficult point for me is (3).
How to install latest version in gentoo side-by side so that old version is
not touched?
In windows it is easy: I can select other directory from installer. How to
do same thing in this Gentoo ? I need also adminpack to read log files from
pgAdmin.

Andrus.


Re: Upgrading side by side in Gentoo

From
Adriana Alfonzo
Date:
*no more mesages please*

Andrus escribió:
> I have separate production server running
>
> "PostgreSQL 8.1.4 on i686-pc-linux-gnu, compiled by GCC
> i686-pc-linux-gnu-gcc (GCC) 3.4.6 (Gentoo 3.4.6-r1, ssp-3.4.5-1.0,
> pie-8.7.9)"
>
> and want to upgrade this to something newer.
> I can allow some hours of downtime for upgrade at night.
>
> I have found Gentoo upgrade instructions here
> http://hasno.info/2008/7/31/upgrading-to-postgresql-8-3-on-gentoo
>
> I have no idea how PostgreSql is installed in this server, maybe it is
> compiled from source.
> So I'm afraid that using those instructions may corrupt the server so
> it will no longer come up in morning and I'm not able to fix it due to
> lack of allowed downtime and knowledge.
>
> So I'm planning  the following strategy:
>
> 1. Create backup copy in this 8.1.4
> 2. Stop postmaster
> 3. Install latest version of PostgreSql to separate directory
> 4. Restore to it from backup
> 5. If something fails, stop new and re-start old 8.1.4 postmaster.
>
> The difficult point for me is (3).
> How to install latest version in gentoo side-by side so that old
> version is not touched?
> In windows it is easy: I can select other directory from installer.
> How to do same thing in this Gentoo ? I need also adminpack to read
> log files from pgAdmin.
>
> Andrus.
>

Aviso Legal  Este mensaje puede contener informacion de interes solo para CVG Venalum. Solo esta permitida su copia,
distribuciono uso a personas autorizadas. Si recibio este corre por error, por favor destruyalo. Eventualmentew los
correoselectonicos pueden ser alterados. Al respecto, CVG Venalum no se hace responsable por los errores que pudieran
afectaral mensaje original. 

Attachment

Re: Upgrading side by side in Gentoo

From
Adriana Alfonzo
Date:
*can you teach me?? i don't know unsuscribe!!! please..*

Raymond O'Donnell escribió:
> On 12/11/2008 17:37, Adriana Alfonzo wrote:
>
>> *no more mesages please*
>>
>
> You have subscribed to a mailing list, or someone has done it on your
> behalf.
>
> If you don't want any posts from the list, please unsubscribe.
>
> Ray.
>
> ------------------------------------------------------------------
> Raymond O'Donnell, Director of Music, Galway Cathedral, Ireland
> rod@iol.ie
> Galway Cathedral Recitals: http://www.galwaycathedral.org/recitals
> ------------------------------------------------------------------
>
>

Aviso Legal  Este mensaje puede contener informacion de interes solo para CVG Venalum. Solo esta permitida su copia,
distribuciono uso a personas autorizadas. Si recibio este corre por error, por favor destruyalo. Eventualmentew los
correoselectonicos pueden ser alterados. Al respecto, CVG Venalum no se hace responsable por los errores que pudieran
afectaral mensaje original. 

Attachment

Re: Upgrading side by side in Gentoo

From
Adrian Klaver
Date:
----- "Adriana Alfonzo" <adriana.alfonzo@venalum.com.ve> wrote:

> *can you teach me?? i don't know unsuscribe!!! please..*
>
> Raymond O'Donnell escribió:
> > On 12/11/2008 17:37, Adriana Alfonzo wrote:
> >
> >> *no more mesages please*
> >>
> >
> > You have subscribed to a mailing list, or someone has done it on
> your
> > behalf.
> >
> > If you don't want any posts from the list, please unsubscribe.
> >
> > Ray.
> >
> > ------------------------------------------------------------------
> > Raymond O'Donnell, Director of Music, Galway Cathedral, Ireland
> > rod@iol.ie
> > Galway Cathedral Recitals: http://www.galwaycathedral.org/recitals
> > ------------------------------------------------------------------
> >
> >
>
> Aviso Legal  Este mensaje puede contener informacion de interes solo
> para CVG Venalum. Solo esta permitida su copia, distribucion o uso a
> personas autorizadas. Si recibio este corre por error, por favor
> destruyalo. Eventualmentew los correos electonicos pueden ser
> alterados. Al respecto, CVG Venalum no se hace responsable por los
> errores que pudieran afectar al mensaje original.
>
>
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Also at bottom of this message.


Adrian Klaver
aklaver@comcast.net


Re: Upgrading side by side in Gentoo

From
Guy Rouillier
Date:
Andrus wrote:
> I have separate production server running
>
> "PostgreSQL 8.1.4 on i686-pc-linux-gnu, compiled by GCC
> i686-pc-linux-gnu-gcc (GCC) 3.4.6 (Gentoo 3.4.6-r1, ssp-3.4.5-1.0,
> pie-8.7.9)"

This is a bad idea.  I run Gentoo at home on a workstation, and I like
the approach it uses.  But it is really targeted to the individual user
who likes to be on the bleeding edge.  *Everything* on Gentoo is
compiled from source; that's the whole point of the distribution.  This
is not what you want in a production platform in a business environment.

You should be looking at a distribution that has a support package (even
if you elect not to use it), a minimum number of years that each version
will be supported, and a predictable maintenance schedule.  You have
many to choose from: Redhat and its free derivatives like CentOS, Ubuntu
with its supported releases, etc.

To answer your question directly, you won't find a prepackaged solution
to running simultaneous version of PG (or any other software package) on
Gentoo.  That's not how Gentoo is designed to be used.  Having said
that, I remember reading about slots, which may allow what you are
trying to do.  But I've never investigated.

--
Guy Rouillier

can someone help me to make a sql more pretty and more concise?

From
Yi Zhao
Date:
I want to select some column(a, b) from the table with the specified
condition, so, i can do like this:
select a, b from mytable where id = (select id from temptable where
tname = 'df' ) and stype = 'def' and range = 'afk'

!!!!but, I want the result contains a sum(c) and a count value extra,
so, I use the sql below:
select a, b,
    (select count(1) from mytable where id =
      (
        select id from temptable where tname = 'df'
      ) and stype = 'def' and range = 'afk'
    ),
    (select sum(c) from mytable where id =
      (
        select id from temptable where tname = 'df'
      ) and stype = 'def' and range = 'afk'
    )
  from mytable where id = (
    select id from temptable where tname = 'df'
  ) and stype = 'def' and range = 'afk';

can someone help me to make this sql statement above more pretty and more concise?


Re: Upgrading side by side in Gentoo

From
Greg Smith
Date:
On Wed, 12 Nov 2008, Andrus wrote:

> How to install latest version in gentoo side-by side so that old version is
> not touched?

You need to get one of the experimental builds that include slotted
support.  Take a look at
http://overlays.gentoo.org/proj/postgresql/wiki/ExperimentalFAQ and the
page linked to by the blog article you mentioned at
http://dev-zero.ch/blog/archives/6-PostgreSQL-Status.html

This looks like it's still in the early stages of release, so you might
have to get some suggestions from the Gentoo package maintainers if you
run into problems.  The fact that this problem has been lingering around
for over four years (http://bugs.gentoo.org/show_bug.cgi?id=42894) and
it's not completely cleaned up gives you an idea how well the PostgreSQL
packages are (not) maintained on Gentoo.  You really should consider just
installing your own PostgreSQL from source rather than fooling with the
official pacakges.  I would wager it will take you less time to figure out
how to do that than to fight these experimental packages into submission.

--
* Greg Smith gsmith@gregsmith.com http://www.gregsmith.com Baltimore, MD

Re: can someone help me to make a sql more pretty and more concise?

From
Russell Smith
Date:
Yi Zhao wrote:
> I want to select some column(a, b) from the table with the specified
> condition, so, i can do like this:
> select a, b from mytable where id = (select id from temptable where
> tname = 'df' ) and stype = 'def' and range = 'afk'
>
How about;

SELECT a, b, count(1), sum(c) FROM mytable WHERE id = (select id from
temptable where
tname = 'df' ) and stype = 'def' and range = 'afk' GROUP BY 1,2;

Russell.
> !!!!but, I want the result contains a sum(c) and a count value extra,
> so, I use the sql below:
> select a, b,
>     (select count(1) from mytable where id =
>       (
>         select id from temptable where tname = 'df'
>       ) and stype = 'def' and range = 'afk'
>     ),
>     (select sum(c) from mytable where id =
>       (
>         select id from temptable where tname = 'df'
>       ) and stype = 'def' and range = 'afk'
>     )
>   from mytable where id = (
>     select id from temptable where tname = 'df'
>   ) and stype = 'def' and range = 'afk';
>
> can someone help me to make this sql statement above more pretty and more concise?
>
>
>


Re: can someone help me to make a sql more pretty and more concise?

From
Yi Zhao
Date:
thanks for ur help,
but, I think that is not my want:D
if you use sum like this, it must be with group by,
what I want is do sum on all columns, not group by.

thanks

regards,

在 2008-11-13四的 19:27 +1100,Russell Smith写道:
> Yi Zhao wrote:
> > I want to select some column(a, b) from the table with the specified
> > condition, so, i can do like this:
> > select a, b from mytable where id = (select id from temptable where
> > tname = 'df' ) and stype = 'def' and range = 'afk'
> >
> How about;
>
> SELECT a, b, count(1), sum(c) FROM mytable WHERE id = (select id from
> temptable where
> tname = 'df' ) and stype = 'def' and range = 'afk' GROUP BY 1,2;
>
> Russell.
> > !!!!but, I want the result contains a sum(c) and a count value extra,
> > so, I use the sql below:
> > select a, b,
> >     (select count(1) from mytable where id =
> >       (
> >         select id from temptable where tname = 'df'
> >       ) and stype = 'def' and range = 'afk'
> >     ),
> >     (select sum(c) from mytable where id =
> >       (
> >         select id from temptable where tname = 'df'
> >       ) and stype = 'def' and range = 'afk'
> >     )
> >   from mytable where id = (
> >     select id from temptable where tname = 'df'
> >   ) and stype = 'def' and range = 'afk';
> >
> > can someone help me to make this sql statement above more pretty and more concise?
> >
> >
> >
>
>


Re: Upgrading side by side in Gentoo

From
"Andrus"
Date:
Greg,

> You need to get one of the experimental builds that include slotted
> support.  Take a look at
> http://overlays.gentoo.org/proj/postgresql/wiki/ExperimentalFAQ and the
> page linked to by the blog article you mentioned at
> http://dev-zero.ch/blog/archives/6-PostgreSQL-Status.html

Thank you.
I have SSH root access to this system over internet only and no experiences
on Linux.
Person who installed this server has left the company.
So I think it is not possible/reasonable to try change OS in this server.

> You really should consider just installing your own PostgreSQL from source
> rather than fooling with the official pacakges.  I would wager it will
> take you less time to figure out how to do that than to fight these
> experimental packages into submission.

Where to get ready binaries which can be copied and ran in Gentoo ?
Is there any how-to pages or tips about compiling PostgreSql from source in
this Gentoo ?

Andrus.


Re: Upgrading side by side in Gentoo

From
"Holger Hoffstaette"
Date:
On Wed, 12 Nov 2008 19:47:15 -0500, Guy Rouillier wrote:

> To answer your question directly, you won't find a prepackaged solution to
> running simultaneous version of PG (or any other software package) on
> Gentoo.  That's not how Gentoo is designed to be used.  Having said that,

You are contradicting yourself:

> I remember reading about slots, which may allow what you are trying to do.
>  But I've never investigated.

Slots are *exactly* the mechanism that enables multiple versions of the
same package to be installed in parallel and it works fantastically well.
However since not every package is easily slottable (such as the old and
therefore unslotted postgres 8.1.x) it is not an option in Andrus' case,
and also wouldn't solve the problem of upgrading the DB itself, which is
purely a PostgreSQL problem on any platform.

And FYI Gentoo supports binary packages just fine; in fact that's how you
are supposed to install packages on larger installations.

-h


Re: Upgrading side by side in Gentoo

From
"Holger Hoffstaette"
Date:
On Thu, 13 Nov 2008 11:41:35 +0200, Andrus wrote:

> Greg,
>
>> You need to get one of the experimental builds that include slotted
>> support.  Take a look at
>> http://overlays.gentoo.org/proj/postgresql/wiki/ExperimentalFAQ and the
>> page linked to by the blog article you mentioned at
>> http://dev-zero.ch/blog/archives/6-PostgreSQL-Status.html
>
> Thank you.

Please forget those pages, they are very outdated.

> I have SSH root access to this system over internet only and no
> experiences on Linux.

If the system and/or the database are important, get someone who knows
what they are doing.

> Person who installed this server has left the company. So I think it is
> not possible/reasonable to try change OS in this server.

You don't have to do that - it would not solve anything. The main probem is
the old PostgreSQL version, not the OS.

> Where to get ready binaries which can be copied and ran in Gentoo ? Is
> there any how-to pages or tips about compiling PostgreSql from source in
> this Gentoo ?

This would do more harm than good so *don't*.

No matter what you do you will have to dump the DB to upgrade it from
8.1.x anyway so some downtime is unavoidable. Depending on the contents
you may even have to fix some bits of the schema since 8.3 is more strict
than 8.1 in some ways. This is the hard part, and it has *nothing* to do
with Gentoo; upgrading your installation is the easiest part and will only
take a few minutes since it is completely automated (2 or 3 commands).

If you are willing to pay for professional help feel free to email me.

-h


Re: Upgrading side by side in Gentoo

From
Adriana Alfonzo
Date:
no more mesages please..

Holger Hoffstaette escribió:
> On Thu, 13 Nov 2008 11:41:35 +0200, Andrus wrote:
>
>
>> Greg,
>>
>>
>>> You need to get one of the experimental builds that include slotted
>>> support.  Take a look at
>>> http://overlays.gentoo.org/proj/postgresql/wiki/ExperimentalFAQ and the
>>> page linked to by the blog article you mentioned at
>>> http://dev-zero.ch/blog/archives/6-PostgreSQL-Status.html
>>>
>> Thank you.
>>
>
> Please forget those pages, they are very outdated.
>
>
>> I have SSH root access to this system over internet only and no
>> experiences on Linux.
>>
>
> If the system and/or the database are important, get someone who knows
> what they are doing.
>
>
>> Person who installed this server has left the company. So I think it is
>> not possible/reasonable to try change OS in this server.
>>
>
> You don't have to do that - it would not solve anything. The main probem is
> the old PostgreSQL version, not the OS.
>
>
>> Where to get ready binaries which can be copied and ran in Gentoo ? Is
>> there any how-to pages or tips about compiling PostgreSql from source in
>> this Gentoo ?
>>
>
> This would do more harm than good so *don't*.
>
> No matter what you do you will have to dump the DB to upgrade it from
> 8.1.x anyway so some downtime is unavoidable. Depending on the contents
> you may even have to fix some bits of the schema since 8.3 is more strict
> than 8.1 in some ways. This is the hard part, and it has *nothing* to do
> with Gentoo; upgrading your installation is the easiest part and will only
> take a few minutes since it is completely automated (2 or 3 commands).
>
> If you are willing to pay for professional help feel free to email me.
>
> -h
>
>
>
>

Aviso Legal  Este mensaje puede contener informacion de interes solo para CVG Venalum. Solo esta permitida su copia,
distribuciono uso a personas autorizadas. Si recibio este corre por error, por favor destruyalo. Eventualmentew los
correoselectonicos pueden ser alterados. Al respecto, CVG Venalum no se hace responsable por los errores que pudieran
afectaral mensaje original. 

Attachment

Re: Upgrading side by side in Gentoo

From
"Holger Hoffstaette"
Date:
On Wed, 12 Nov 2008 21:33:26 -0500, Greg Smith wrote:

> You need to get one of the experimental builds that include slotted
> support.  Take a look at
> http://overlays.gentoo.org/proj/postgresql/wiki/ExperimentalFAQ and the
> page linked to by the blog article you mentioned at
> http://dev-zero.ch/blog/archives/6-PostgreSQL-Status.html

No, don't because those page are completely outdated.
Slotted 8.3.4 is in regular portage, though marked for testing (~). It
works fine, and so does updating those ebuilds to the very latest 8.3.5.

> This looks like it's still in the early stages of release, so you might

No.

> packages are (not) maintained on Gentoo.  You really should consider just
> installing your own PostgreSQL from source rather than fooling with the
> official pacakges.  I would wager it will take you less time to figure out
> how to do that than to fight these experimental packages into submission.

Your information is very outdated. There is exactly no reason to build
stuff yourself, especially since the OP doesn't seem to know what he's
doing anyway.

-h


Re: Upgrading side by side in Gentoo

From
"Andrus"
Date:
>> Where to get ready binaries which can be copied and ran in Gentoo ? Is
>> there any how-to pages or tips about compiling PostgreSql from source in
>> this Gentoo ?
>
> This would do more harm than good so *don't*.

How can compiling PostgreSql 8.3.x from source on Gentoo do more harm than
good ?
I expect that compiling form source operates on different environment which
will not touch existing
working 8.1.4 server
Only shared resource is listening port (5432) and I can set it to some other
for testing.

> No matter what you do you will have to dump the DB to upgrade it from
> 8.1.x anyway so some downtime is unavoidable. Depending on the contents
> you may even have to fix some bits of the schema since 8.3 is more strict
> than 8.1 in some ways. This is the hard part, and it has *nothing* to do
> with Gentoo; upgrading your installation is the easiest part and will only
> take a few minutes since it is completely automated (2 or 3 commands).

Last shop will closed at 24:00 and first is opened at 6:30 am.
So there is 6.5 hours allowed downtime in every night in this server.
Client applicaton which uses this server and db schema works with lot of 8.2
and 8.3 servers.
So I expect that server version change will be transparent to users.

Andrus.


Re: Upgrading side by side in Gentoo

From
Erik Jones
Date:
Ok, I work at a hosting company that runs Gentoo as it's main host
operating system so here's the skivvy on the current status of
PostgreSQL under portage.

Up until just a few months ago the needed packages were called libpq
and postgresql (go figure).  These were *not* slotted and so did not
support having multiple versions of Postgres installed from portage
simultaneously.  For 8.2, 8.2, and 8.3 those packages go up to 8.1.11,
8.2.7 and 8.3.1, respectively.

So, recently the Postgres package maintainer decided to remedy that
situation by changing the ebuild format to a slotted format to allow
(supposedly) multiple versions to be installed side-by-side, these are
called postgresql-base and postgresql-server and start with 8.1.11,
8.2.10, and 8.3.4.   Of course, when this change was made this created
much havoc in our install scripts here at work as the two package
formats are incompatible (meaning you can't both libpq/postgresql and
postgresql-base/postgresql-server installed at the same time) and they
even changed the names of the init scripts and /etc/conf.d/ files.

In addition, the first time I had the, um, opportunity to install the
slotted versions of 8.2 and 8.3 side by side it didn't work out too
well.  They both installed fine but I ran into problems when I needed
to emerge postgis linked against 8.2:  the packages install wrapper
scripts for the client programs that find the latest available version
on the system, including pg_config.  In the end I had to completely
unmerge 8.3 in order to get postgis to link against 8.2.  For simple
upgrades this kind of thing won't be an issue.

So, Andrus, if you want to upgrade to the latest version of 8.3 using
portage you're going to have to unmerge 8.1 (both libpq and
postgreseql) in addition to all of the steps you've already listed
which are pretty standard.  Given that, if something goes wrong you'll
need to include umerging 8.3 (postgresql-base and postgresql-server)
and re-emerging 8.1.

P.S.  To whomever said that Gentoo for for single users running
cutting edge software, poppycock.  Any self-respecting company running
Gentoo should be maintaining their own portage build servers just as a
Debian based company would maintain their own build servers for apt or
RedHat/CentOS for rpm/yum.

Erik Jones, Database Administrator
Engine Yard
Support, Scalability, Reliability
866.518.9273 x 260
Location: US/Pacific
IRC: mage2k






Re: Upgrading side by side in Gentoo

From
Guy Rouillier
Date:
Erik Jones wrote:

> P.S.  To whomever said that Gentoo for for single users running cutting
> edge software, poppycock.

That was me.  Andrus said in a former post on this thread:

 >> I have ... no experiences on Linux.

I stand by my assertion that his company should not be running Gentoo in
a production environment.  I have quite a bit of experience in Gentoo
and other distros, and for Andrus's situation, I continue to recommend a
binary distro with committed multi-year support.

--
Guy Rouillier

Re: Upgrading side by side in Gentoo

From
Sam Mason
Date:
On Thu, Nov 13, 2008 at 11:31:51AM -0800, Erik Jones wrote:
> P.S.  To whomever said that Gentoo for for single users running
> cutting edge software, poppycock.

I'm a fellow ex-Gentoo user; moved to Debian and things are much easier.

> Any self-respecting company running
> Gentoo should be maintaining their own portage build servers just as a
> Debian based company would maintain their own build servers for apt or
> RedHat/CentOS for rpm/yum.

That all sounds awfully complicated for small setups to be organizing!
I can't imagine many organizations go to that trouble; or have I just
just had the luck of having my head in the sand for too long?  I'd
maybe expect the more technically proficient hosting companies will do
this, or is this more a symptom of rpm awkwardness whereas I'm used to
apt?  I haven't used RedHat for a while but I do remember getting into
dependency hell far too often whereas apt just tends to work.


  Sam