Обсуждение: Problem: Failed Make on Linux Pgres v. 7.1.2

Поиск
Список
Период
Сортировка

Problem: Failed Make on Linux Pgres v. 7.1.2

От
R Talbot
Дата:
Help.. I had been running my compiled source v. 7.0.3 this compiled and
runs fine..
First is there a great need to move to v. 7.1.2?
What advantages are offred?
I had one success and two failures on Make .....
DUe to either the  libc difference or GNU Make difference
If I am right is it worth the trouble to upgrade the libc..
I haven't done that chore in years and can't remember how???

Below are my results ... PLease advise

             Failed MAKE                      Installed
Caldera linux 2.3 kernal 2.2.10      Caldera linux 2.4 kernal 2.2.13
libc-2.1.1.so   ld-2.1.1.so   vs.    libc-2.2.2.so     ld-2.1.2.so
    GNU make 3.77             vs     GNU Make   3.78.1

Postgresql 7.1.2 make errors

/usr/lib/gcc-lib/i386-linux/egcs-2.91.66/crtendS.o: In function
`init_dummy':
/usr/lib/gcc-lib/i386-linux/egcs-2.91.66/crtendS.o(.text+0x53):
undefined reference to
`___brk_addr'
make[3]: *** [libpsqlodbc.so.0.26] Error 1
make[3]: Leaving directory
`/usr/src/OpenLinux/SOURCES/postgresql-7.1.2/src/interfaces/odbc'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/usr/src/OpenLinux/SOURCES/postgresql-7.1.2/src/interfaces'
make[1]: *** [all] Error 2
make[1]: Leaving directory
`/usr/src/OpenLinux/SOURCES/postgresql-7.1.2/src'
make: *** [all] Error 2
[root postgresql-7.1.2]#
libc-2.1.1.so   ld-2.1.1.so   vs. 2.1.2.so
and GNU make 3.77  vs  3.78.1


Bob T


Re: Problem: Failed Make on Linux Pgres v. 7.1.2

От
Doug McNaught
Дата:
R Talbot <rjtalbo@attglobal.net> writes:

> First is there a great need to move to v. 7.1.2?
> What advantages are offred?

7.1.x has a lot of enhancements, including outer joins, write-ahead
logging (WAL) for better performance, enhancements to PL/pgSQL and
much more.

> Below are my results ... PLease advise
>
> Postgresql 7.1.2 make errors
>
> /usr/lib/gcc-lib/i386-linux/egcs-2.91.66/crtendS.o: In function
> `init_dummy':
> /usr/lib/gcc-lib/i386-linux/egcs-2.91.66/crtendS.o(.text+0x53):
> undefined reference to
> `___brk_addr'

This looks like your build environmemt is all messed up.  Are you
actually able to compile C programs on this system with this compiler?

-Doug
--
In a world of steel-eyed death, and men who are fighting to be warm,
Come in, she said, I'll give you shelter from the storm.    -Dylan

Re: Problem: Failed Make on Linux Pgres v. 7.1.2

От
R Talbot
Дата:
Doug McNaught wrote:

> R Talbot <rjtalbo@attglobal.net> writes:
>
>
>
> > Below are my results ... PLease advise
> >
> > Postgresql 7.1.2 make errors
> >
> > /usr/lib/gcc-lib/i386-linux/egcs-2.91.66/crtendS.o: In function
> > `init_dummy':
> > /usr/lib/gcc-lib/i386-linux/egcs-2.91.66/crtendS.o(.text+0x53):
> > undefined reference to
> > `___brk_addr'
>
> This looks like your build environmemt is all messed up.  Are you
> actually able to compile C programs on this system with this compiler?
>
> -Doug

Doug & All
  Yeah, I compiled v. 7.0.2 It is installed and has run fine for a year.
I did this on three machines.. I have compile many other working
programs.
  One of the Postgres FAQs note that you can not use the RPM binary
on a the Caldera Desktop Install.. SO I  must Complie ..
   I tried the binary and it fails even on v. 7.0.2...

 I also have the same problem with Mysql , the binary doesn't work.
You must compile for Caldera.. Has to do with the fact that Red Hat
places some items in non GNU locations.. And Everbody prepares
for Red Hat..

    So my question is it worth my time to upgrade my libc,  no small
task.
Because it may not even make a differece regarding my Success.

     I have too much invested in time and apps and upgrades to abandon
four Caldera installations...
    Any help is appreciated, I would like to stick with Postgres..

 Installed and working fine
    PostgeSQL 7.0.2
    DB2 v 7.1
    Sybase Server 11
    MySQL 3.22.32
    VA for Java v.2.0
    Perl v 5.003
    JDK 1.18

Bob T


Problem while logging primary key of updated field.

От
"Gurunandan R. Bhat"
Дата:
Hi,

I want to log the primary key of a table whenever a new row is inserted.
To achieve this, I created the following function as trigger on update.
However I get the following error on inserts:

ERROR:  NEW used in non-rule query

Here is my function:
The first select inside the function body gives me the name of the primary
key field.

-----------------------------------------------------------------------
create function log_insert() returns opaque as '
       declare
       currtime timestamp := ''now'';
       pkeyname name;
       query text;
       begin
       select into pkeyname c.attname
       from    pg_class a,
           pg_index b,
           pg_attribute c
       where
         a.relname = TG_RELNAME and
         a.oid = b.indrelid and
         a.oid = c.attrelid and
         b.indkey[0] = c.attnum and
         b.indisprimary=''t'';
       query :=  ''insert into logtable (pkvalue, tablename, time)
             values (NEW.'' ||
             quote_ident(pkeyname) ||
             '', '' ||
             quote_ident(TG_RELNAME) ||
             '', '' ||
             quote_ident(currtime) ||
             '');'';
       execute query;
       return null;
       end;
' language 'plpgsql';
----------------------------------------------------------------------

I would be extremely grateful for any help. I might add that when I print
the dynamic query with a "raise notice" the query looks fine.

Thanks in advance

Gurunandan