Thread: BUG #1167: POSIX getpwuid_r 4arg vs 5arg issue
The following bug has been logged online: Bug reference: 1167 Logged by: James Helm Email address: jjhelm@att.net PostgreSQL version: 7.4 Operating system: Solaris 9 Sparc Description: POSIX getpwuid_r 4arg vs 5arg issue Details: I just downloaded the 7.4.3 tarball with timestamp 6/15 00:02, and am still having issues with threads on a freshly loaded Solaris 9 server. Looks like maybe the latest Solaris 9 supports the 5 arg version of getpwuid_r? I'm just going to build without thread safety since I don't really need it for now, but I thought you'd want to know it was still not 100% fixed. Thanks. Jim gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes -Wmissing-declarations -fPIC -I. -I../../../src/include -I/pbengine/postgres/include -I/pbengine/openssl/include -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DFRONTEND -DSYSCONFDIR='"/pbengine/postgres/etc"' -c -o thread.o thread.c thread.c: In function `pqGetpwuid': thread.c:119: error: too few arguments to function `getpwuid_r' thread.c:119: warning: assignment makes pointer from integer without a cast gmake[3]: *** [thread.o] Error 1 Here's my configure: sh configure \ --prefix=/pbengine/postgres \ --with-includes=/pbengine/postgres/include \ --with-libs=/pbengine/postgres/lib \ --with-perl \ --with-openssl=/pbengine/openssl \ --enable-thread-safety
Well, shame you reported it today, rather than a few days before the release. I added code which should have detected whether your system uses 4 or 5 args to getpwuid_r, but obviously it didn't work in your case. I need to see your config.log's references to getpwuid_r to find the cause of the failure. --------------------------------------------------------------------------- PostgreSQL Bugs List wrote: > > The following bug has been logged online: > > Bug reference: 1167 > Logged by: James Helm > > Email address: jjhelm@att.net > > PostgreSQL version: 7.4 > > Operating system: Solaris 9 Sparc > > Description: POSIX getpwuid_r 4arg vs 5arg issue > > Details: > > I just downloaded the 7.4.3 tarball with timestamp 6/15 00:02, and am still > having issues with threads on a freshly loaded Solaris 9 server. Looks like > maybe the latest Solaris 9 supports the 5 arg version of getpwuid_r? I'm > just going to build without thread safety since I don't really need it for > now, but I thought you'd want to know it was still not 100% fixed. > > Thanks. > > Jim > > gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes > -Wmissing-declarations > -fPIC -I. -I../../../src/include -I/pbengine/postgres/include > -I/pbengine/openssl/include -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS > -DFRONTEND > -DSYSCONFDIR='"/pbengine/postgres/etc"' -c -o thread.o thread.c > thread.c: In function `pqGetpwuid': > thread.c:119: error: too few arguments to function `getpwuid_r' > thread.c:119: warning: assignment makes pointer from integer without a cast > gmake[3]: *** [thread.o] Error 1 > > > Here's my configure: > > sh configure \ > --prefix=/pbengine/postgres \ > --with-includes=/pbengine/postgres/include \ > --with-libs=/pbengine/postgres/lib \ > --with-perl \ > --with-openssl=/pbengine/openssl \ > --enable-thread-safety > > > > > ---------------------------(end of broadcast)--------------------------- > TIP 2: you can get off all lists at once with the unregister command > (send "unregister YourEmailAddressHere" to majordomo@postgresql.org) > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
OK, I have fixed this so the configure test happens with the proper thread flags. Patch attached, and it will be in 7.4.4. --------------------------------------------------------------------------- PostgreSQL Bugs List wrote: > > The following bug has been logged online: > > Bug reference: 1167 > Logged by: James Helm > > Email address: jjhelm@att.net > > PostgreSQL version: 7.4 > > Operating system: Solaris 9 Sparc > > Description: POSIX getpwuid_r 4arg vs 5arg issue > > Details: > > I just downloaded the 7.4.3 tarball with timestamp 6/15 00:02, and am still > having issues with threads on a freshly loaded Solaris 9 server. Looks like > maybe the latest Solaris 9 supports the 5 arg version of getpwuid_r? I'm > just going to build without thread safety since I don't really need it for > now, but I thought you'd want to know it was still not 100% fixed. > > Thanks. > > Jim > > gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes > -Wmissing-declarations > -fPIC -I. -I../../../src/include -I/pbengine/postgres/include > -I/pbengine/openssl/include -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS > -DFRONTEND > -DSYSCONFDIR='"/pbengine/postgres/etc"' -c -o thread.o thread.c > thread.c: In function `pqGetpwuid': > thread.c:119: error: too few arguments to function `getpwuid_r' > thread.c:119: warning: assignment makes pointer from integer without a cast > gmake[3]: *** [thread.o] Error 1 > > > Here's my configure: > > sh configure \ > --prefix=/pbengine/postgres \ > --with-includes=/pbengine/postgres/include \ > --with-libs=/pbengine/postgres/lib \ > --with-perl \ > --with-openssl=/pbengine/openssl \ > --enable-thread-safety > > > > > ---------------------------(end of broadcast)--------------------------- > TIP 2: you can get off all lists at once with the unregister command > (send "unregister YourEmailAddressHere" to majordomo@postgresql.org) > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 Index: configure =================================================================== RCS file: /cvsroot/pgsql-server/configure,v retrieving revision 1.310.2.10 diff -c -c -r1.310.2.10 configure *** configure 8 Jun 2004 15:36:34 -0000 1.310.2.10 --- configure 16 Jun 2004 03:14:51 -0000 *************** *** 13482,13489 **** fi done ! CFLAGS="$_CFLAGS" ! LIBS="$_LIBS" echo "$as_me:$LINENO: checking whether getpwuid_r takes a fifth argument" >&5 echo $ECHO_N "checking whether getpwuid_r takes a fifth argument... $ECHO_C" >&6 if test "${pgac_func_getpwuid_r_5arg+set}" = set; then --- 13482,13488 ---- fi done ! # do this test with the proper thread flags echo "$as_me:$LINENO: checking whether getpwuid_r takes a fifth argument" >&5 echo $ECHO_N "checking whether getpwuid_r takes a fifth argument... $ECHO_C" >&6 if test "${pgac_func_getpwuid_r_5arg+set}" = set; then *************** *** 13543,13548 **** --- 13542,13549 ---- fi + CFLAGS="$_CFLAGS" + LIBS="$_LIBS" fi Index: configure.in =================================================================== RCS file: /cvsroot/pgsql-server/configure.in,v retrieving revision 1.301.2.8 diff -c -c -r1.301.2.8 configure.in *** configure.in 8 Jun 2004 15:36:35 -0000 1.301.2.8 --- configure.in 16 Jun 2004 03:14:53 -0000 *************** *** 1059,1067 **** CFLAGS="$CFLAGS $THREAD_CPPFLAGS" LIBS="$LIBS $THREAD_LIBS" AC_CHECK_FUNCS([strerror_r getpwuid_r gethostbyname_r]) CFLAGS="$_CFLAGS" LIBS="$_LIBS" - PGAC_FUNC_GETPWUID_R_5ARG fi --- 1059,1068 ---- CFLAGS="$CFLAGS $THREAD_CPPFLAGS" LIBS="$LIBS $THREAD_LIBS" AC_CHECK_FUNCS([strerror_r getpwuid_r gethostbyname_r]) + # do this test with the proper thread flags + PGAC_FUNC_GETPWUID_R_5ARG CFLAGS="$_CFLAGS" LIBS="$_LIBS" fi
Jim Helm wrote: > Thanks. I wish I had seen it earlier myself. I've been busy on other > projects and haven't been following the 7.4.X releases. Doesn't hurt me > any, since I was able to just build without thread support, but I > thought it would be good for other to know about it. > > Thanks again - for this, and all the work you guys have put into > PostgreSQL. CVS had the same bug were we were testing without the thread flags. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
Thanks. I wish I had seen it earlier myself. I've been busy on other projects and haven't been following the 7.4.X releases. Doesn't hurt me any, since I was able to just build without thread support, but I thought it would be good for other to know about it. Thanks again - for this, and all the work you guys have put into PostgreSQL. --Jim > -----Original Message----- > From: Bruce Momjian [mailto:pgman@candle.pha.pa.us] > Sent: Tuesday, June 15, 2004 8:48 PM > To: James Helm > Cc: pgsql-bugs@postgresql.org > Subject: Re: [BUGS] BUG #1167: POSIX getpwuid_r 4arg vs 5arg issue > > > > OK, I have fixed this so the configure test happens with the proper > thread flags. Patch attached, and it will be in 7.4.4. > > -------------------------------------------------------------- > ------------- > > PostgreSQL Bugs List wrote: > > > > The following bug has been logged online: > > > > Bug reference: 1167 > > Logged by: James Helm > > > > Email address: jjhelm@att.net > > > > PostgreSQL version: 7.4 > > > > Operating system: Solaris 9 Sparc > > > > Description: POSIX getpwuid_r 4arg vs 5arg issue > > > > Details: > > > > I just downloaded the 7.4.3 tarball with timestamp 6/15 > 00:02, and am still > > having issues with threads on a freshly loaded Solaris 9 > server. Looks like > > maybe the latest Solaris 9 supports the 5 arg version of > getpwuid_r? I'm > > just going to build without thread safety since I don't > really need it for > > now, but I thought you'd want to know it was still not 100% fixed. > > > > Thanks. > > > > Jim > > > > gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes > > -Wmissing-declarations > > -fPIC -I. -I../../../src/include -I/pbengine/postgres/include > > -I/pbengine/openssl/include -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS > > -DFRONTEND > > -DSYSCONFDIR='"/pbengine/postgres/etc"' -c -o thread.o thread.c > > thread.c: In function `pqGetpwuid': > > thread.c:119: error: too few arguments to function `getpwuid_r' > > thread.c:119: warning: assignment makes pointer from > integer without a cast > > gmake[3]: *** [thread.o] Error 1 > > > > > > Here's my configure: > > > > sh configure \ > > --prefix=/pbengine/postgres \ > > --with-includes=/pbengine/postgres/include \ > > --with-libs=/pbengine/postgres/lib \ > > --with-perl \ > > --with-openssl=/pbengine/openssl \ > > --enable-thread-safety > > > > > > > > > > ---------------------------(end of > broadcast)--------------------------- > > TIP 2: you can get off all lists at once with the unregister command > > (send "unregister YourEmailAddressHere" to > majordomo@postgresql.org) > > > > -- > Bruce Momjian | http://candle.pha.pa.us > pgman@candle.pha.pa.us | (610) 359-1001 > + If your life is a hard drive, | 13 Roberts Road > + Christ can be your backup. | Newtown Square, > Pennsylvania 19073 >