Thread: Irix 6.2, Postgres 7.3.1, some brokenness
I've got a 6-way SGI Challenge L with R4400/200 cpu's in it, and a gig of interleaved ram. I am running postgres 7.3.1, which I compiled 64-bit with MIPSPro. The database is living on an ultrawide scsi raid. I am also running postgres on a 2-cpu (85mhz) Sparc 20 with 384mb of ram, and the database lives on a 10krpm single narrow disk. I'm finding that the Sparc 20 is about twice as fast as the Challenge. Postgres on the '20 was compiled 32-bit (of course) with gcc 3.2. When I am testing the machines, I have run tests with 1 db handle, with 2 db handles, and with 2 vs 6 handles. Consistently, the 20 is faster than the Challenge. I suspect something is going wrong here on mips. I have tried, without any luck, to get postgres compiled with gcc 3.2 (from freeware.sgi.com). It keeps adding '-r' when its linking, even when LDFLAGS is unset, LD is 'gcc' and CC is 'gcc'. I could do the linking manually, but this is not really a viable option for a release. Additionally, postgres does *not* trap divide-by-zero errors, as Solaris and Linux do. 'select 1/0' causes the backend to crash. elvis=# select 1/0; server closed the connection unexpectedly This probably means the server terminated abnormally before or whileprocessing the request. The connection to the server was lost. Attempting reset: WARNING: Message from PostgreSQL backend: The Postmaster has informed me that some other backend died abnormally andpossibly corrupted shared memory. I have rolled back the current transaction and am going to terminate yourdatabase system connection and exit. Please reconnect to the database system and repeat your query. Failed. !# Justin tells me there is a release imminent, and that I should mention this ASAP. Neil suggested I try with gcc, but as I said, I've been unable to get it to compile with gcc. Also, I understand (but can confirm on monday) that Oracle has dropped support for Irix entirely. This would make postgres the *only* database for SGI MIPS, and I'd really like to see it better supported. SGI machines are awesome for database servers. Anyone needing a shell on the machine can feel free to ask. Alex -- alex avriette $^X is my programming language of choice. alex@posixnap.net
> I have tried, without any luck, to get postgres compiled with gcc 3.2 > (from freeware.sgi.com). It keeps adding '-r' when its linking, even > when LDFLAGS is unset, LD is 'gcc' and CC is 'gcc'. I could do the > linking manually, but this is not really a viable option for a > > release. Looking at this more, I see this: [goro:~/postgresql-7.3.1/src] alex% grep LD Makefile* | grep -- '-r' Makefile.global:LDREL = -r Can we just not append LDREL to LD if we're on Irix? alex -- alex avriette $^X is my programming language of choice. alex@posixnap.net
alex avriette <alex@posixnap.net> writes: > I've got a 6-way SGI Challenge L with R4400/200 cpu's in it, and a gig > of interleaved ram. I am running postgres 7.3.1, which I compiled > 64-bit with MIPSPro. > I'm finding that the Sparc 20 is about twice as fast as the Challenge. I'm betting that Postgres doesn't think there's any TAS support on the MIPS machine. This may actually be true depending on what model of MIPS it is --- IIRC, there were no userland synchronization instructions in MIPS-1. If it's MIPS-2 architecture, then the problem is we don't know what to test for. > Additionally, postgres does *not* trap divide-by-zero errors, as > Solaris and Linux do. 'select 1/0' causes the backend to crash. What's the signal you're getting? regards, tom lane
When compiled with gcc, it does trap divide by zero. Alex
Disregard previous. Using /bin/ld (with LDREL = -r) works fine as a linker. Call it force of habit. Is it worth warning the user that you cannot use gcc as ld on Irix? I used it because I figured I would need gnu ld (which I of course didn't have). Anyhow, 7.3.1 is successfully built. Alex -- alex avriette $^X is my programming language of choice. alex@posixnap.net
alex avriette writes: > Is it worth warning the user that you cannot use gcc as ld on Irix? You cannot use gcc as ld on any system. -- Peter Eisentraut peter_e@gmx.net
Peter Eisentraut wrote: > alex avriette writes: > > > Is it worth warning the user that you cannot use gcc as ld on Irix? > > You cannot use gcc as ld on any system. Erm, perhaps not, but you can use it as the link step (both to generate executables and to generate shared objects) on many systems. Perhaps that's what he meant? -- Kevin Brown kevin@sysexperts.com