Search Postgresql Archives

Re: Things I learned about PG8 on AIX5.3 with XLC compiler

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



:-) 

LIBPATH=./usr/local/lib:/local/lib:/lib:/usr/lib:/usr/local/pgsql/lib:/home/app/postgresql-8.0.2/src/port


While I very much wish I had this little list before I started this, I'd 
be loathe to consider it the end of the story.  I'd say, maybe, "A Small Subset 
of Helpful Things to Consider". 

I can get it to compile under all optimization levels (an optimization level
is a bundle of little features...), but on almost all of them, the runtime
breaks ( e.g. at initdb -D  with "...broken node..." errors) 


I am going to try to optimize this thing, still. Several things are in the way:


1) Many (many!) uninitialized variables in code. Optimizers don't
    do well with this. 

2) Not clear (to me, a nonprogrammer) whether this is GNU C, ANSI C, 
    "Postgres" C, or what the overall coding protocol is. This would
    be helpful in dis-assembling the pre-packaged compiler optimization
    bundles, and just picking the compiler flags the code can withstand. 

3)  Compilation with profiling/debugging support appears, also, to break 
    the runtime. Makes it hard to...erm...debug. 


Anyways, tallyho. 

-- Ross

p.s. by the way, there is no more "Visual Age" compiler. It's been re-branded
     as XL C/C++.     :-) 



-----Original Message-----
From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of Chris Browne
Sent: Tuesday, June 07, 2005 3:23 PM
To: pgsql-general@xxxxxxxxxxxxxx
Subject: Re:  Things I learned about PG8 on AIX5.3 with XLC compiler


RMohan@xxxxxxxxxxx ("Mohan, Ross") writes:
It would be worthwhile to try to formulate this as a patch to the FAQ_AIX file.  Probably something like....

PostgreSQL 8 on AIX 5.3, compiled using VisualAge C
------------------------------------------------------

- Use only default optimization.  Higher optimization levels have been
  observed to lead to runtime problems, particularly with IPA

- Be sure to "export OBJECT_MODE=64" to compile in 64 bit mode

- Upgrading m4/autoconf helps with ./configure.

- m4 needs __STDC__ defined in order to avoid "va_list" compilation
  errors.

- Setting LIBPATH (to what???) has proved useful
-- 
(format nil "~S@~S" "cbbrowne" "acm.org") http://www.ntlug.org/~cbbrowne/sap.html
Rules of the Evil Overlord #78.  "I will not tell my Legions of Terror "And he must  be taken alive!" The command will be:  ``And try to take him alive if it is reasonably practical.''" <http://www.eviloverlord.com/>

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@xxxxxxxxxxxxxx

---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux