bugzilla-daemon at main.slony.info bugzilla-daemon at main.slony.info
Tue Jul 19 08:46:22 PDT 2011
http://www.slony.info/bugzilla/show_bug.cgi?id=225

--- Comment #2 from douganla at gru.com 2011-07-19 08:46:22 PDT ---
(In reply to comment #1)
> If you look at the config.log file that is generated by the configure step of
> your slony build you can determine which libpq is being picked up.   You need
> to verify that this libpq really does have thread safety built in.
> You might also want to include the output of pg_config to this report.
> Another thing to try might be to build postgreql from the source tarball by
> hand and put it in  /usr/local/pgsql and build slony against that version to
> try and figure out if it is an issue with your gentoo postgresql-server
> package.

I am new to this so any help would be great I did a grep on config.log and got
this:
# grep "libpq"
/var/tmp/portage/dev-db/slony1-2.0.6/work/slony1-2.0.6/config.log
configure:5235: checking libpq-fe.h usability
configure:5235: checking libpq-fe.h presence
configure:5235: checking for libpq-fe.h
| #include "libpq-fe.h"
ac_cv_header_libpq_fe_h=yes

# grep "LIBPQ"
/var/tmp/portage/dev-db/slony1-2.0.6/work/slony1-2.0.6/config.log
| #define PG_LIBPQ_VERIFIED 1
| #define PG_LIBPQSERVER_VERIFIED 1
#define PG_LIBPQ_VERIFIED 1
#define PG_LIBPQSERVER_VERIFIED 1

I also did a grep on enable-thread-safety but got nothing. How do I determine
if thread safety is built in?


This /usr/lib/postgresql-9.0/bin/pg_config. Is this the right file?

ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Intel 80386
  Version:                           0x1
  Entry point address:               0x8048d10
  Start of program headers:          52 (bytes into file)
  Start of section headers:          20840 (bytes into file)
  Flags:                             0x0
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         9
  Size of section headers:           40 (bytes)
  Number of section headers:         26
  Section header string table index: 25

Section Headers:
  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf
Al
  [ 0]                   NULL            00000000 000000 000000 00      0   0 
0
  [ 1] .interp           PROGBITS        08048154 000154 000013 00   A  0   0 
1
  [ 2] .note.ABI-tag     NOTE            08048168 000168 000020 00   A  0   0 
4
  [ 3] .hash             HASH            08048188 000188 0001ec 04   A  5   0 
4
  [ 4] .gnu.hash         GNU_HASH        08048374 000374 000040 04   A  5   0 
4
  [ 5] .dynsym           DYNSYM          080483b4 0003b4 0002c0 10   A  6   1 
4
  [ 6] .dynstr           STRTAB          08048674 000674 0001e8 00   A  0   0 
1
  [ 7] .gnu.version      VERSYM          0804885c 00085c 000058 02   A  5   0 
2
  [ 8] .gnu.version_r    VERNEED         080488b4 0008b4 000060 00   A  6   1 
4
  [ 9] .rel.dyn          REL             08048914 000914 000020 08   A  5   0 
4
  [10] .rel.plt          REL             08048934 000934 000138 08   A  5  12 
4
  [11] .init             PROGBITS        08048a6c 000a6c 000017 00  AX  0   0 
4
  [12] .plt              PROGBITS        08048a84 000a84 000280 04  AX  0   0 
4
  [13] .text             PROGBITS        08048d10 000d10 002334 00  AX  0   0
16
  [14] .fini             PROGBITS        0804b044 003044 00001c 00  AX  0   0 
4
  [15] .rodata           PROGBITS        0804b060 003060 00138c 00   A  0   0
32
  [16] .eh_frame         PROGBITS        0804c3ec 0043ec 000004 00   A  0   0 
4
  [17] .ctors            PROGBITS        0804defc 004efc 000008 00  WA  0   0 
4
  [18] .dtors            PROGBITS        0804df04 004f04 000008 00  WA  0   0 
4
  [19] .jcr              PROGBITS        0804df0c 004f0c 000004 00  WA  0   0 
4
  [20] .dynamic          DYNAMIC         0804df10 004f10 0000e0 08  WA  6   0 
4

[21] .got              PROGBITS        0804dff0 004ff0 000004 04  WA  0   0  4
  [22] .got.plt          PROGBITS        0804dff4 004ff4 0000a8 04  WA  0   0 
4
  [23] .data             PROGBITS        0804e09c 00509c 000008 00  WA  0   0 
4
  [24] .bss              NOBITS          0804e0c0 0050a4 000580 00  WA  0   0
32
  [25] .shstrtab         STRTAB          00000000 0050a4 0000c2 00      0   0 
1
Key to Flags:
  W (write), A (alloc), X (execute), M (merge), S (strings)
  I (info), L (link order), G (group), x (unknown)
  O (extra OS processing required) o (OS specific), p (processor specific)

There are no section groups in this file.

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  PHDR           0x000034 0x08048034 0x08048034 0x00120 0x00120 R E 0x4
  INTERP         0x000154 0x08048154 0x08048154 0x00013 0x00013 R   0x1
      [Requesting program interpreter: /lib/ld-linux.so.2]
  LOAD           0x000000 0x08048000 0x08048000 0x043f0 0x043f0 R E 0x1000
  LOAD           0x004efc 0x0804defc 0x0804defc 0x001a8 0x00744 RW  0x1000
  DYNAMIC        0x004f10 0x0804df10 0x0804df10 0x000e0 0x000e0 RW  0x4
  NOTE           0x000168 0x08048168 0x08048168 0x00020 0x00020 R   0x4
  GNU_STACK      0x000000 0x00000000 0x00000000 0x00000 0x00000 RW  0x4
  GNU_RELRO      0x004efc 0x0804defc 0x0804defc 0x00104 0x00104 R   0x1
  PAX_FLAGS      0x000000 0x00000000 0x00000000 0x00000 0x00000     0x4

 Section to Segment mapping:
  Segment Sections...
   00
   01     .interp
   02     .interp .note.ABI-tag .hash .gnu.hash .dynsym .dynstr .gnu.version
.gnu.version_r .rel.dyn .rel.plt .init .plt .text .fini .rodata .eh_frame
   03     .ctors .dtors .jcr .dynamic .got .got.plt .data .bss
   04     .dynamic
   05     .note.ABI-tag
   06
   07     .ctors .dtors .jcr .dynamic .got
   08

Dynamic section at offset 0x4f10 contains 23 entries:
  Tag        Type                         Name/Value
 0x00000001 (NEEDED)                     Shared library: [libc.so.6]
 0x0000000f (RPATH)                      Library rpath:
[/usr/lib/postgresql-9.0/lib]
 0x0000001d (RUNPATH)                    Library runpath:
[/usr/lib/postgresql-9.0/lib]
 0x0000000c (INIT)                       0x8048a6c
/usr/lib/postgresql-9.0/bin/pg_config lines 45-87
0x0000000d (FINI)                       0x804b044
 0x00000004 (HASH)                       0x8048188
 0x6ffffef5 (GNU_HASH)                   0x8048374
 0x00000005 (STRTAB)                     0x8048674
 0x00000006 (SYMTAB)                     0x80483b4
 0x0000000a (STRSZ)                      488 (bytes)
 0x0000000b (SYMENT)                     16 (bytes)
 0x00000015 (DEBUG)                      0x0
 0x00000003 (PLTGOT)                     0x804dff4
 0x00000002 (PLTRELSZ)                   312 (bytes)
 0x00000014 (PLTREL)                     REL
 0x00000017 (JMPREL)                     0x8048934
 0x00000011 (REL)                        0x8048914
 0x00000012 (RELSZ)                      32 (bytes)
 0x00000013 (RELENT)                     8 (bytes)
 0x6ffffffe (VERNEED)                    0x80488b4
 0x6fffffff (VERNEEDNUM)                 1
 0x6ffffff0 (VERSYM)                     0x804885c
 0x00000000 (NULL)                       0x0

Relocation section '.rel.dyn' at offset 0x914 contains 4 entries:
 Offset     Info    Type            Sym.Value  Sym. Name
0804dff0  00000606 R_386_GLOB_DAT    00000000   __gmon_start__
0804e0c0  00002805 R_386_COPY        0804e0c0   stderr
0804e0e0  00002a05 R_386_COPY        0804e0e0   sys_siglist
0804e200  00002905 R_386_COPY        0804e200   stdout

Relocation section '.rel.plt' at offset 0x934 contains 39 entries:
 Offset     Info    Type            Sym.Value  Sym. Name
0804e000  00000107 R_386_JUMP_SLOT   00000000   __errno_location
0804e004  00000207 R_386_JUMP_SLOT   00000000   popen
0804e008  00000307 R_386_JUMP_SLOT   00000000   strerror
0804e00c  00000407 R_386_JUMP_SLOT   00000000   __strncpy_chk
0804e010  00000507 R_386_JUMP_SLOT   00000000   __fprintf_chk
0804e014  00000607 R_386_JUMP_SLOT   00000000   __gmon_start__
0804e018  00000707 R_386_JUMP_SLOT   00000000   __xstat64
0804e01c  00000807 R_386_JUMP_SLOT   00000000   __printf_chk
0804e020  00000907 R_386_JUMP_SLOT   00000000   getenv
0804e024  00000a07 R_386_JUMP_SLOT   00000000   strncpy
0804e028  00000b07 R_386_JUMP_SLOT   00000000   fgets
0804e02c  00000c07 R_386_JUMP_SLOT   00000000   __libc_start_main
0804e030  00000d07 R_386_JUMP_SLOT   00000000   strrchr
0804e034  00000e07 R_386_JUMP_SLOT   00000000   bindtextdomain
0804e038  00000f07 R_386_JUMP_SLOT   00000000   perror
/usr/lib/postgresql-9.0/bin/pg_config lines 88-131
0804e03c  00001007 R_386_JUMP_SLOT   00000000   __lxstat64
0804e040  00001107 R_386_JUMP_SLOT   00000000   dcgettext
0804e044  00001207 R_386_JUMP_SLOT   00000000   access
0804e048  00001307 R_386_JUMP_SLOT   00000000   fflush
0804e04c  00001407 R_386_JUMP_SLOT   00000000   strlen
0804e050  00001507 R_386_JUMP_SLOT   00000000   getpwuid
0804e054  00001607 R_386_JUMP_SLOT   00000000   setlocale
0804e058  00001707 R_386_JUMP_SLOT   00000000   strcpy
0804e05c  00001807 R_386_JUMP_SLOT   00000000   chdir
0804e060  00001907 R_386_JUMP_SLOT   00000000   putenv
0804e064  00001a07 R_386_JUMP_SLOT   00000000   __strcpy_chk
0804e068  00001b07 R_386_JUMP_SLOT   00000000   strstr
0804e06c  00001c07 R_386_JUMP_SLOT   00000000   fputc
0804e070  00001d07 R_386_JUMP_SLOT   00000000   readlink
0804e074  00001e07 R_386_JUMP_SLOT   00000000   getcwd
0804e078  00001f07 R_386_JUMP_SLOT   00000000   puts
0804e07c  00002007 R_386_JUMP_SLOT   00000000   textdomain
0804e080  00002107 R_386_JUMP_SLOT   00000000   strncmp
0804e084  00002207 R_386_JUMP_SLOT   00000000   __snprintf_chk
0804e088  00002307 R_386_JUMP_SLOT   00000000   strcmp
0804e08c  00002407 R_386_JUMP_SLOT   00000000   __strdup
0804e090  00002507 R_386_JUMP_SLOT   00000000   exit
0804e094  00002607 R_386_JUMP_SLOT   00000000   pclose
0804e098  00002707 R_386_JUMP_SLOT   00000000   geteuid

There are no unwind sections in this file.

Symbol table '.dynsym' contains 44 entries:
   Num:    Value  Size Type    Bind   Vis      Ndx Name
     0: 00000000     0 NOTYPE  LOCAL  DEFAULT  UND
     1: 00000000     0 FUNC    GLOBAL DEFAULT  UND __errno_location at GLIBC_2.0
(2)
     2: 00000000     0 FUNC    GLOBAL DEFAULT  UND popen at GLIBC_2.1 (3)
     3: 00000000     0 FUNC    GLOBAL DEFAULT  UND strerror at GLIBC_2.0 (2)
     4: 00000000     0 FUNC    GLOBAL DEFAULT  UND __strncpy_chk at GLIBC_2.3.4
(4)
     5: 00000000     0 FUNC    GLOBAL DEFAULT  UND __fprintf_chk at GLIBC_2.3.4
(4)
     6: 00000000     0 NOTYPE  WEAK   DEFAULT  UND __gmon_start__
     7: 00000000     0 FUNC    GLOBAL DEFAULT  UND __xstat64 at GLIBC_2.2 (5)
     8: 00000000     0 FUNC    GLOBAL DEFAULT  UND __printf_chk at GLIBC_2.3.4 (4)
     9: 00000000     0 FUNC    GLOBAL DEFAULT  UND getenv at GLIBC_2.0 (2)
    10: 00000000     0 FUNC    GLOBAL DEFAULT  UND strncpy at GLIBC_2.0 (2)
    11: 00000000     0 FUNC    GLOBAL DEFAULT  UND fgets at GLIBC_2.0 (2)
    12: 00000000     0 FUNC    GLOBAL DEFAULT  UND __libc_start_main at GLIBC_2.0
(2)
    13: 00000000     0 FUNC    GLOBAL DEFAULT  UND strrchr at GLIBC_2.0 (2)
    14: 00000000     0 FUNC    GLOBAL DEFAULT  UND bindtextdomain at GLIBC_2.0 (2)
/usr/lib/postgresql-9.0/bin/pg_config lines 132-175
  15: 00000000     0 FUNC    GLOBAL DEFAULT  UND perror at GLIBC_2.0 (2)
    16: 00000000     0 FUNC    GLOBAL DEFAULT  UND __lxstat64 at GLIBC_2.2 (5)
    17: 00000000     0 FUNC    GLOBAL DEFAULT  UND dcgettext at GLIBC_2.0 (2)
    18: 00000000     0 FUNC    GLOBAL DEFAULT  UND access at GLIBC_2.0 (2)
    19: 00000000     0 FUNC    GLOBAL DEFAULT  UND fflush at GLIBC_2.0 (2)
    20: 00000000     0 FUNC    GLOBAL DEFAULT  UND strlen at GLIBC_2.0 (2)
    21: 00000000     0 FUNC    GLOBAL DEFAULT  UND getpwuid at GLIBC_2.0 (2)
    22: 00000000     0 FUNC    GLOBAL DEFAULT  UND setlocale at GLIBC_2.0 (2)
    23: 00000000     0 FUNC    GLOBAL DEFAULT  UND strcpy at GLIBC_2.0 (2)
    24: 00000000     0 FUNC    GLOBAL DEFAULT  UND chdir at GLIBC_2.0 (2)
    25: 00000000     0 FUNC    GLOBAL DEFAULT  UND putenv at GLIBC_2.0 (2)
    26: 00000000     0 FUNC    GLOBAL DEFAULT  UND __strcpy_chk at GLIBC_2.3.4 (4)
    27: 00000000     0 FUNC    GLOBAL DEFAULT  UND strstr at GLIBC_2.0 (2)
    28: 00000000     0 FUNC    GLOBAL DEFAULT  UND fputc at GLIBC_2.0 (2)
    29: 00000000     0 FUNC    GLOBAL DEFAULT  UND readlink at GLIBC_2.0 (2)
    30: 00000000     0 FUNC    GLOBAL DEFAULT  UND getcwd at GLIBC_2.0 (2)
    31: 00000000     0 FUNC    GLOBAL DEFAULT  UND puts at GLIBC_2.0 (2)
    32: 00000000     0 FUNC    GLOBAL DEFAULT  UND textdomain at GLIBC_2.0 (2)
    33: 00000000     0 FUNC    GLOBAL DEFAULT  UND strncmp at GLIBC_2.0 (2)
    34: 00000000     0 FUNC    GLOBAL DEFAULT  UND __snprintf_chk at GLIBC_2.3.4
(4)
    35: 00000000     0 FUNC    GLOBAL DEFAULT  UND strcmp at GLIBC_2.0 (2)
    36: 00000000     0 FUNC    GLOBAL DEFAULT  UND __strdup at GLIBC_2.0 (2)
    37: 00000000     0 FUNC    GLOBAL DEFAULT  UND exit at GLIBC_2.0 (2)
    38: 00000000     0 FUNC    GLOBAL DEFAULT  UND pclose at GLIBC_2.1 (3)
    39: 00000000     0 FUNC    GLOBAL DEFAULT  UND geteuid at GLIBC_2.0 (2)
    40: 0804e0c0     4 OBJECT  GLOBAL DEFAULT   24 stderr at GLIBC_2.0 (2)
    41: 0804e200     4 OBJECT  GLOBAL DEFAULT   24 stdout at GLIBC_2.0 (2)
    42: 0804e0e0   260 OBJECT  GLOBAL DEFAULT   24 sys_siglist at GLIBC_2.3.3 (6)
    43: 0804b064     4 OBJECT  GLOBAL DEFAULT   15 _IO_stdin_used

Histogram for bucket list length (total of 77 buckets):
 Length  Number     % of total  Coverage
      0  42         ( 54.5%)
      1  27         ( 35.1%)     62.8%
      2  8          ( 10.4%)    100.0%

Histogram for `.gnu.hash' bucket list length (total of 7 buckets):
 Length  Number     % of total  Coverage
      0  3          ( 42.9%)
      1  4          ( 57.1%)    100.0%

Version symbols section '.gnu.version' contains 44 entries:
 Addr: 000000000804885c  Offset: 0x00085c  Link: 5 (.dynsym)
  000:   0 (*local*)       2 (GLIBC_2.0)     3 (GLIBC_2.1)     2 (GLIBC_2.0)
004:   4 (GLIBC_2.3.4)   4 (GLIBC_2.3.4)   0 (*local*)       5 (GLIBC_2.2)
  008:   4 (GLIBC_2.3.4)   2 (GLIBC_2.0)     2 (GLIBC_2.0)     2 (GLIBC_2.0)
  00c:   2 (GLIBC_2.0)     2 (GLIBC_2.0)     2 (GLIBC_2.0)     2 (GLIBC_2.0)
  010:   5 (GLIBC_2.2)     2 (GLIBC_2.0)     2 (GLIBC_2.0)     2 (GLIBC_2.0)
  014:   2 (GLIBC_2.0)     2 (GLIBC_2.0)     2 (GLIBC_2.0)     2 (GLIBC_2.0)
  018:   2 (GLIBC_2.0)     2 (GLIBC_2.0)     4 (GLIBC_2.3.4)   2 (GLIBC_2.0)
  01c:   2 (GLIBC_2.0)     2 (GLIBC_2.0)     2 (GLIBC_2.0)     2 (GLIBC_2.0)
  020:   2 (GLIBC_2.0)     2 (GLIBC_2.0)     4 (GLIBC_2.3.4)   2 (GLIBC_2.0)
  024:   2 (GLIBC_2.0)     2 (GLIBC_2.0)     3 (GLIBC_2.1)     2 (GLIBC_2.0)
  028:   2 (GLIBC_2.0)     2 (GLIBC_2.0)     6 (GLIBC_2.3.3)   1 (*global*)

Version needs section '.gnu.version_r' contains 1 entries:
 Addr: 0x00000000080488b4  Offset: 0x0008b4  Link: 6 (.dynstr)
  000000: Version: 1  File: libc.so.6  Cnt: 5
  0x0010:   Name: GLIBC_2.3.3  Flags: none  Version: 6
  0x0020:   Name: GLIBC_2.2  Flags: none  Version: 5
  0x0030:   Name: GLIBC_2.3.4  Flags: none  Version: 4
  0x0040:   Name: GLIBC_2.1  Flags: none  Version: 3
  0x0050:   Name: GLIBC_2.0  Flags: none  Version: 2

Notes at offset 0x00000168 with length 0x00000020:
  Owner         Data size       Description
  GNU           0x00000010      NT_GNU_ABI_TAG (ABI version tag)

-- 
Configure bugmail: http://www.slony.info/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Slony1-bugs mailing list