The collected works of andarm16

I've been trying to get postgresql working on IRIX. It compiles successfully with MIPSPRO, but it comes up with a variety of errors, with the end result being that initdb will not complete. With version 9.1.9, it fails due to a syntax error in the sql commands to init the template database. With 9.0.9, it has a problem with one of the .so files. I didn't try to build a 9.2, because the last time I tried to do this, I had the syntax error problem with all of the 9.2 versions I tried.

However, all is not lost. If one uses the version of gcc off the sgi freeware distro, it works perfectly (or at least version 9.2.4 does (just use CC=gcc for gcc(assuming that /usr/freeware/bin is on your path) and LIBS="-lpthread"(this allows it to pass the thread safety test, which fails unless this is declared)). (I'm sure it will also work with the nekoware gcc, but I was feeling lazy, and I just wanted click and go convenience) So, the point of this post is if you are compiling a modern postgresql, and are tearing your hair out, and cursing at the computer, the problem isn't the code, it's the compiler.

What's going wrong? I'm guessing that since MIPSPRO has better optimization, that is causing the problem. Now, I'm not a computer engineer (nor do I play one on TV) but that would be my best guess as to a problem. If anyone wants to take a look, and chime in with a fix, go ahead. But, I feel that just using gcc is a good enough work around.

_________________
SGI: :Fuel: IBM: OpenPower 710; RS/6000 7046-B50 DEC: VaxStation 4000/90; Personal Workstation 500AU; Dec 3000/500; DECSERVER 200/MC
Code:
Location: /hw/module/001c01/node
IP34 Board: barcode MSX798     part 030-1707-003 rev -K
Location: /hw/module/001c01/node/cpubus/0
IP34PIMM Board: barcode MSX247     part 030-1836-001 rev -C
Location: /hw/module/001c01/Ibrick/xtalk/13
ASTODY Board: barcode MNV113     part 030-1726-003 rev -E
Location: /hw/module/001c01/Ibrick/xtalk/14
IP34 Board: barcode MSX798     part 030-1707-003 rev -K
Location: /hw/module/001c01/Ibrick/xtalk/15
IP34 Board: barcode MSX798     part 030-1707-003 rev -K
1 600 MHZ IP35 Processor
CPU: MIPS R14000 Processor Chip Revision: 2.4
FPU: MIPS R14010 Floating Point Chip Revision: 2.4
CPU 0 at Module 001c01/Slot 0/Slice A: 600 Mhz MIPS R14000 Processor Chip (enabled)
Processor revision: 2.4. Scache: Size 4 MB Speed 300 Mhz  Tap 0xa
Main memory size: 2048 Mbytes
Instruction cache size: 32 Kbytes
Data cache size: 32 Kbytes
Secondary unified instruction/data cache size: 4 Mbytes
Memory at Module 001c01/Slot 0: 2048 MB (enabled)
Bank 0 contains 512 MB (Standard) DIMMS (enabled)
Bank 1 contains 512 MB (Standard) DIMMS (enabled)
Bank 2 contains 512 MB (Standard) DIMMS (enabled)
Bank 3 contains 512 MB (Standard) DIMMS (enabled)
Integral SCSI controller 0: Version QL12160, low voltage differential
Disk drive: unit 1 on SCSI controller 0 (unit 1)
Tape drive: unit 5 on SCSI controller 0: unknown
Integral SCSI controller 1: Version QL12160, single ended
IOC3/IOC4 serial port: tty1
IOC3/IOC4 serial port: tty2
IOC3 parallel port: plp1
Graphics board: V12
Integral Fast Ethernet: ef0, version 1, module 001c01, pci 4
Iris Audio Processor: USB audio revision 1.0, number 0
PCI Adapter ID (vendor 0x1077, device 0x1216) PCI slot 1
PCI Adapter ID (vendor 0x10a9, device 0x0003) PCI slot 4
PCI Adapter ID (vendor 0x1045, device 0xc861) PCI slot 5
HUB in Module 001c01/Slot 0: Revision 2 Speed 200.00 Mhz (enabled)
IP35prom in Module 001c01/Slot n0: Revision 6.210
USB controller: type OHCI
USB Human Interface Device: device id 0 type keyboard
USB Human Interface Device: device id 0 type mouse


Code:
server glx vendor string: SGI
server glx version string: 1.3 Irix 6.5
server glx extensions (GLX_):
EXT_import_context, EXT_visual_info, EXT_visual_rating,
SGI_make_current_read, SGI_swap_control, SGI_video_sync, SGIX_fbconfig,
SGIX_hyperpipe, SGIX_pbuffer, SGIX_swap_barrier, SGIX_swap_group.
client glx version 1.3
client glx extensions (GLX_):
EXT_import_context, EXT_visual_info, EXT_visual_rating,
SGI_make_current_read, SGI_swap_control, SGI_video_sync, SGIX_fbconfig,
SGIX_hyperpipe, SGIX_pbuffer, SGIX_swap_barrier, SGIX_swap_group.
OpenGL vendor string: SGI
OpenGL renderer string: VPRO/B/128
OpenGL version string: 1.2 Irix 6.5
OpenGL extensions (GL_):
ARB_imaging, EXT_abgr, EXT_blend_color, EXT_blend_logic_op,
EXT_blend_minmax, EXT_blend_subtract, EXT_convolution, EXT_copy_texture,
EXT_histogram, EXT_packed_pixels, EXT_polygon_offset, EXT_subtexture,
EXT_texture, EXT_texture3D, EXT_texture_env_add, EXT_texture_object,
EXT_vertex_array, INGR_interlace_read, SGI_color_matrix, SGI_color_table,
SGI_texture_color_table, SGIS_detail_texture, SGIS_fog_function,
SGIS_pixel_texture, SGIS_texture_border_clamp, SGIS_texture_color_mask,
SGIS_texture_edge_clamp, SGIS_texture_lod, SGIX_async, SGIX_async_pixel,
SGIX_blend_alpha_minmax, SGIX_convolution_accuracy, SGIX_fog_offset,
SGIX_fragment_lighting, SGIX_interlace, SGIX_list_priority, SGIX_resample,
SGIX_scalebias_hint, SGIX_subsample, SGIX_texture_coordinate_clamp,
SGIX_texture_lod_bias, SGIX_texture_scale_bias, SGIX_vertex_preclip.
glu version: 1.3 Irix 6.5
glu extensions (GLU_):
EXT_abgr, EXT_nurbs_tessellator, EXT_object_space_tess, EXT_packed_pixels,
EXT_texture.

visual  x  bf lv rg d st  r  g  b a  ax dp st accum buffs  ms
id dep cl sp sz l  ci b ro sz sz sz sz bf th cl  r  g  b  a ns b
-----------------------------------------------------------------
0x20  8 pc  .  8  . c  .  .  .  .  .  .  . 24  .  .  .  .  .  . .
0x21  8 pc  .  8  . c  y  .  .  .  .  .  . 24  .  .  .  .  .  . .
0x23  8 pc  y  8  1 c  .  .  .  .  .  .  .  .  .  .  .  .  .  . .
0x24  8 pc  .  8  1 c  .  .  .  .  .  .  .  .  .  .  .  .  .  . .
0x25  8 pc  .  8  . r  y  .  8  .  .  .  . 24  .  .  .  .  .  . .
0x26  8 pc  .  8  . r  y  .  8  .  .  8  . 24  .  .  .  .  .  . .
0x27  8 pc  .  8  . r  y  .  8  .  .  8  . 24  8  .  .  .  .  . .
0x28  8 pc  .  8  . c  y  y  .  .  .  .  . 24  .  .  .  .  .  . .
0x29  8 pc  .  8  . c  y  y  .  .  .  .  . 24  8  .  .  .  .  . .
0x2a  8 pc  .  8  . r  y  y  8  .  .  .  . 24  .  .  .  .  .  . .
0x2b  8 pc  .  8  . r  y  y  8  .  .  8  . 24  .  .  .  .  .  . .
0x2c 12 pc  . 12  . c  .  .  .  .  .  .  . 24  .  .  .  .  .  . .
0x2d 12 pc  . 12  . c  .  .  .  .  .  .  . 24  8  .  .  .  .  . .
0x2e 12 pc  . 12  . c  y  .  .  .  .  .  . 24  .  .  .  .  .  . .
0x2f 12 pc  . 12  . c  y  .  .  .  .  .  . 24  8  .  .  .  .  . .
0x30 12 pc  . 12  . c  y  y  .  .  .  .  . 24  .  .  .  .  .  . .
0x31 12 pc  . 12  . c  y  y  .  .  .  .  . 24  8  .  .  .  .  . .
0x32 12 pc  . 12  . r  y  . 12  .  .  .  . 24  .  .  .  .  .  . .
0x33 12 pc  . 12  . r  y  y 12  .  .  .  . 24  .  .  .  .  .  . .
0x34 12 pc  . 12  . r  .  . 12  .  . 12  . 24  .  .  .  .  .  . .
0x35 12 pc  . 12  . r  .  . 12  .  . 12  . 24  8  .  .  .  .  . .
0x36 12 pc  . 12  . r  y  . 12  .  . 12  . 24  .  .  .  .  .  . .
0x37 12 pc  . 12  . r  y  . 12  .  . 12  . 24  8  .  .  .  .  . .
0x38 12 tc  . 16  . r  y  .  4  4  4  4  . 24  . 24 24 24 24  . .
0x39 12 tc  . 16  . r  y  .  4  4  4  4  . 24  8 24 24 24 24  . .
0x3a 12 tc  . 16  . r  y  y  4  4  4  4  . 24  . 24 24 24 24  . .
0x3b 12 tc  . 16  . r  y  y  4  4  4  4  . 24  8 24 24 24 24  . .
0x3c 15 tc  . 16  . r  y  .  5  5  5  1  . 24  . 24 24 24 24  . .
0x3d 15 tc  . 16  . r  y  .  5  5  5  1  . 24  8 24 24 24 24  . .
0x3e 15 tc  . 16  . r  y  y  5  5  5  1  . 24  . 24 24 24 24  . .
-----------------------------------------------------------------
id dep cl xp bs lv rg d st rb gb bb ab ax dp st ar ag ab aa ms,b
-----------------------------------------------------------------
0x3f 15 tc  . 16  . r  y  y  5  5  5  1  . 24  8 24 24 24 24  . .
0x40 24 tc  . 32  . r  .  .  8  8  8  8  . 24  . 24 24 24 24  . .
0x41 24 tc  . 32  . r  .  .  8  8  8  8  . 24  8 24 24 24 24  . .
0x42 24 tc  . 32  . r  y  .  8  8  8  8  . 24  . 24 24 24 24  . .
0x43 24 tc  . 32  . r  y  .  8  8  8  8  . 24  8 24 24 24 24  . .
0x45 30 tc  . 32  . r  .  . 10 10 10  2  . 24  . 24 24 24 24  . .
0x46 30 tc  . 32  . r  .  . 10 10 10  2  . 24  8 24 24 24 24  . .
0x47 30 tc  . 32  . r  y  . 10 10 10  2  . 24  . 24 24 24 24  . .
0x48 30 tc  . 32  . r  y  . 10 10 10  2  . 24  8 24 24 24 24  . .
0x49 30 tc  . 48  . r  .  . 12 12 12 12  .  .  . 24 24 24 24  . .
0x4a 30 tc  . 48  . r  .  . 12 12 12 12  . 16  . 24 24 24 24  . .
0x4b 30 tc  . 48  . r  y  . 12 12 12 12  . 16  . 24 24 24 24  . .
-1 -1 ??  . 16  . r  y  .  4  4  4  4  . 24  . 16 16 16 16  . .
-1 -1 ??  . 16  . r  y  .  4  4  4  4  . 24  8 16 16 16 16  . .
-1 -1 ??  . 16  . r  y  y  4  4  4  4  . 24  . 16 16 16 16  . .
-1 -1 ??  . 16  . r  y  y  4  4  4  4  . 24  8 16 16 16 16  . .
-1 -1 ??  . 16  . r  y  .  5  5  5  1  . 24  . 16 16 16 16  . .
-1 -1 ??  . 16  . r  y  .  5  5  5  1  . 24  8 16 16 16 16  . .
-1 -1 ??  . 16  . r  y  y  5  5  5  1  . 24  . 16 16 16 16  . .
-1 -1 ??  . 16  . r  y  y  5  5  5  1  . 24  8 16 16 16 16  . .
-1 -1 ??  . 32  . r  .  .  8  8  8  8  . 24  . 16 16 16 16  . .
-1 -1 ??  . 32  . r  .  .  8  8  8  8  . 24  8 16 16 16 16  . .
-1 -1 ??  . 32  . r  y  .  8  8  8  8  . 24  . 16 16 16 16  . .
-1 -1 ??  . 32  . r  y  .  8  8  8  8  . 24  8 16 16 16 16  . .
-1 -1 ??  . 32  . r  .  . 10 10 10  2  . 24  . 16 16 16 16  . .
-1 -1 ??  . 32  . r  .  . 10 10 10  2  . 24  8 16 16 16 16  . .
-1 -1 ??  . 32  . r  y  . 10 10 10  2  . 24  . 16 16 16 16  . .
-1 -1 ??  . 32  . r  y  . 10 10 10  2  . 24  8 16 16 16 16  . .
-1 -1 ??  . 48  . r  .  . 12 12 12 12  .  .  . 16 16 16 16  . .
-1 -1 ??  . 48  . r  .  . 12 12 12 12  . 16  . 16 16 16 16  . .
-----------------------------------------------------------------
id dep cl xp bs lv rg d st rb gb bb ab ax dp st ar ag ab aa ms,b
-----------------------------------------------------------------
-1 -1 ??  . 48  . r  y  . 12 12 12 12  . 16  . 16 16 16 16  . .


(The tape drive is a DDS-4 IBM oem unit, and the hard drive is a generic Seagate (on the end of an sca80 to 68 pin adapter). The keyboard and mouse are generic Walmart units (They work great in IRIX, but stop working after a slight move of the mouse in the prom), and the USB sound device is a set of HP branded speakers that were on clearance at Walmart.)
(Here is an old picture, from way back in 2011 when I first got the machine. (The trapdoor is taped closed btw))

_________________
SGI: :Fuel: IBM: OpenPower 710; RS/6000 7046-B50 DEC: VaxStation 4000/90; Personal Workstation 500AU; Dec 3000/500; DECSERVER 200/MC
This is an experimental setup, I wanted to see if it worked, before I installed the nekoware compiler. I'm also experimenting with replication, so the version has to be the same major version as the one on my main IBM server for it to work.

_________________
SGI: :Fuel: IBM: OpenPower 710; RS/6000 7046-B50 DEC: VaxStation 4000/90; Personal Workstation 500AU; Dec 3000/500; DECSERVER 200/MC
I have an OpenPower 710 (9123-710) 2 way power 5 at 1.65GHZ with 4GB ram. It runs Fedora 18 on bare metal.

I also have a IBM RS/6000 7046-B50, with a 375 MHz PowerPC 604e processor and 384MB of ram that runs AIX 5.3, and has a Matrox Millennium so it can do the whole AIX workstation thing.
SGI: :Fuel: IBM: OpenPower 710; RS/6000 7046-B50 DEC: VaxStation 4000/90; Personal Workstation 500AU; Dec 3000/500; DECSERVER 200/MC
Yes, it's a usb mouse, and PS/2 works fine. I always assumed that the problem was that I didn't have some magical SGI usb mouse / keyboard.

_________________
SGI: :Fuel: IBM: OpenPower 710; RS/6000 7046-B50 DEC: VaxStation 4000/90; Personal Workstation 500AU; Dec 3000/500; DECSERVER 200/MC
ClassicHasClass wrote: How hot does your POWER5 run and how many watts? I'm pretty good with POWER4, and I'm typing this on a G5, but I've never used a 5.

My personal POWER6 can get toasty, but throttled down through ASMI it "only" consumes around 300W (4.2GHz 2-way, RAID 5 + hot spare).


Heat wise, it produces a fair amount. It lives under my bed, and most of the hot air vents under there. (Yes, it's loud, but that doesn't seem to bother me, and I live in a studio apartment so there isn't much else I can do).

Power wise, I have no clue. It's got a 750 watt power supplies if I recall correctly, but how much of that is used, I can't say as I don't have something to measure it with. (If it says so in ASMI, I've also just administered the machine in serial mode so I wouldn't know)
SGI: :Fuel: IBM: OpenPower 710; RS/6000 7046-B50 DEC: VaxStation 4000/90; Personal Workstation 500AU; Dec 3000/500; DECSERVER 200/MC
hamei wrote:
andarm16 wrote:
This is an experimental setup, I wanted to see if it worked, before I installed the nekoware compiler. I'm also experimenting with replication, so the version has to be the same major version as the one on my main IBM server for it to work.

A caveat : you can't safely share libraries between MIPSPro binaries and gcc binaries. So using the rest of nekoware with a gcc postgresql is going to be a less than salutary situation. At the very least you will want to also compile the libraries which postgresql requires with gcc - krb5, libiconv, libxml2, openssl, readline, zlib. Then you can't safely use those with any other nekoware applications. Those are pretty common libraries.

So if you don't want to use any other nekoware, go for it. (Or you could do a static postgresql.)

Generally, on Irix, you want to avoid gcc. This has been discussed to death elsewhere here.


I've recompiled it with the 4.7.1 included in Nekoware, and It seems to work. I do have mixed gcc and nekoware but, as the purpose of this is solely to serve as a toy, seems to work is good enough for me. I might clone the /data directory from my GCC compiled postgres, and try it with a mipspro compiled version, but since initdb was failing with a syntax error, mipspro might be breaking the postgres parser.

I only posted this here as a kind of howto, if anyone else wanted a similar environment, they'd have a place to look for instructions

_________________
SGI: :Fuel: IBM: OpenPower 710; RS/6000 7046-B50 DEC: VaxStation 4000/90; Personal Workstation 500AU; Dec 3000/500; DECSERVER 200/MC