AOLserver Chat Logs

2004/08/17

IRC [03:53] *** frankie joined the chat.
IRC [05:23] *** tekbasse parted the chat.
IRC [07:32] <Dossy> morning, frankie.
IRC [07:34] <frankie> Dossy: hi
IRC [07:34] * frankie around again
IRC [07:37] <Dossy> hey.
IRC [07:38] <Dossy> you try making a 4.0.7 .deb yet/
IRC [07:38] <Dossy> the fix for -R RPATH should be in upstream now :)
IRC [07:39] <frankie> that's great, but we are around freezing i don't think it will go in sarge
IRC [07:39] <frankie> anyway i'll upload it asap
IRC [07:39] <frankie> i did not receive the ack for the bug anyway
IRC [07:40] * frankie could remember bad anyway
IRC [07:49] <Dossy> so what version IS in sarge?
IRC [07:50] <Dossy> it says 4.0.7-1
IRC [07:50] <Dossy> that's the most recently released version
IRC [07:50] <Dossy> so, you'redone :)
IRC [08:35] <frankie> uops
IRC [08:35] <frankie> i lost the status of my pkgs :)
IRC [10:13] <Dossy> :)
IRC [10:15] * jhavard refuses to smile
IRC [10:15] <Dossy> what's wrong, jhavard?
IRC [10:15] <Dossy> your ISP going out of biz?
IRC [10:16] <jhavard> Not yet. Who knows, it might actually see an upturn. We're actually doing quite a few dsl orders these days.
IRC [10:16] <jhavard> But I'm still getting a bit on the scared side.
IRC [10:16] <Dossy> Heh.
IRC [10:16] <jhavard> And as for refusing to smile, just wanted to be different.
IRC [12:37] *** frankie parted the chat.
IRC [12:51] *** iharding joined the chat.
IRC [13:01] *** zione joined the chat.
IRC [13:03] <zione> does anyone know why nspostgres.so should compile statically against a certain libpq.so.3 and dinamically against another libpq.so.3, using the same makefile and changing only LSB parameter passed to make ?
IRC [13:26] *** cnk joined the chat.
IRC [13:29] *** bartt parted the chat.
IRC [13:31] <zione> ever seen this ? [17/Aug/2004:19:22:15][20113.1075067424][-main-] Warning: modload: could not load /usr/local/aolserver/bin/nspostgres.so: libpq.so.3: cannot open shared object file: No such file or directory
IRC [13:34] <zione> but ldd nspostgres.so | grep libpq | cut -f 3 -d " " | xargs ls -la | wc -l
IRC [13:34] <zione> returns 1
IRC [13:34] *** panthrd joined the chat.
IRC [13:38] <martinh> give us that without the wc
IRC [13:44] <zione> ldd nspostgres.so | grep libpq | cut -f 3 -d " " | xargs ls -la
IRC [13:44] <zione> lrwxrwxrwx 1 root root 12 Jul 10 20:26 /usr/local/pgsql/lib/libpq.so.3 -> libpq.so.3.0
IRC [13:44] <martinh> that's a problem.
IRC [13:44] <zione> is it ?
IRC [13:45] <zione> i mean, you mean you found the source of the problem ?
IRC [13:45] <martinh> [to Dossy]: ls -la /usr/local/pgsql/lib/libpq*
IRC [13:45] <zione> shall i report that too ?
IRC [13:46] <martinh> yea. . .
IRC [13:46] <martinh> stupid client translated my 'do: ' as something directed at dossy. :->
IRC [13:47] <zione> ah ! now i understand...
IRC [13:47] <zione> dotlrn1 CINECA:~/dotlrn1/etc/daemontools$ ls -la /usr/local/pgsql/lib/libpq.*
IRC [13:47] <zione> -rw-r--r-- 1 root root 93978 Jul 10 20:26 /usr/local/pgsql/lib/libpq.a
IRC [13:47] <zione> lrwxrwxrwx 1 root root 12 Jul 10 20:26 /usr/local/pgsql/lib/libpq.so -> libpq.so.3.0
IRC [13:47] <zione> lrwxrwxrwx 1 root root 12 Jul 10 20:26 /usr/local/pgsql/lib/libpq.so.3 -> libpq.so.3.0
IRC [13:47] <zione> -rwxr-xr-x 1 root root 83680 Jul 10 20:26 /usr/local/pgsql/lib/libpq.so.3.0
AIM [13:47] <OnlineHost> You have been removed from the room for scrolling.
IRC [13:48] <zione> i am not scrolling !
IRC [13:48] <martinh> no you. it.
IRC [13:48] <martinh> not you. it.
IRC [13:49] <martinh> ok. and one final: ldconfig -p | grep libpq
IRC [13:49] <zione> alright. thanx for claryfing, i'm quite new to irc....
IRC [13:49] <zione> ~/dotlrn1/etc/daemontools$ /sbin/ldconfig -p | grep libpq
IRC [13:49] <zione> libpq.so.3 (libc6) => /usr/local/pgsql/lib/libpq.so.3
IRC [13:49] <zione> libpq.so (libc6) => /usr/local/pgsql/lib/libpq.so
IRC [13:52] <martinh> hrm. . .strange.
IRC [13:53] <zione> indeed. i am really going nuts about this.
IRC [13:54] <martinh> and you're sure that the nspostgres.so you're checking the ldd of is /usr/local/aolserver/bin/nspostgres.so ?
IRC [13:54] <zione> definitely
IRC [13:54] <martinh> ooh. wait. ldd the libpq.so.3.0 file!
IRC [13:55] <martinh> I bet that's missing something.
IRC [13:55] <zione> /usr/local/pgsql/lib$ ldd libpq.so.3.0
IRC [13:55] <zione> libcrypt.so.1 => /lib/libcrypt.so.1 (0x4001b000)
IRC [13:55] <zione> libresolv.so.2 => /lib/libresolv.so.2 (0x40048000)
IRC [13:55] <zione> libnsl.so.1 => /lib/libnsl.so.1 (0x4005a000)
IRC [13:55] <zione> libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
IRC [13:55] <zione> /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
IRC [13:57] <martinh> and all of those have what they need?
IRC [13:59] <zione> disappointingly so
IRC [13:59] <martinh> ok. then, i would strace the server and grep for the libpq to see where it's actually trying to open it from.
IRC [13:59] <zione> wait... you mean i should ldd each one of those ?
IRC [14:00] <martinh> well,initially, but it should all be standard. . .
IRC [14:00] <martinh> though, the libc location is a bit strange.
IRC [14:02] <zione> checked those out. they all have what they need.
IRC [14:03] <zione> so, how would you strace the server then ? just "strace nsd > /mylog.log" ?
IRC [14:03] <martinh> man strace
IRC [14:03] <martinh> :->
IRC [14:03] <zione> eheh
IRC [14:04] <martinh> strace -o output.trace <everything you do to start the server>
IRC [14:04] <zione> ok... let me do that...
IRC [14:05] <Dossy> /z zione
IRC [14:05] <Dossy> hi.
IRC [14:05] <zione> what is /z ?
IRC [14:05] <Dossy> it's my alias for /whois :)
IRC [14:06] <zione> should i tell you who i am ?
IRC [14:06] <Dossy> Sure, why not?
IRC [14:06] <zione> =D
IRC [14:07] <zione> i'm a system caretaker for SII, semantic internet innovation, in milan, italy. Running aolserver mainly to deliver dotlrn backed learning experiences, and as a interneal groupware tool
IRC [14:08] <zione> "system caretaker"... that came out just like that
IRC [14:10] <zione> uh oh
IRC [14:10] <zione> i'm going thru my strace log
IRC [14:11] <martinh> just grep it for libpq. :->
IRC [14:11] <zione> i have a bit of a big question mark over my head
IRC [14:12] <zione> open("/usr/local/pgsql/lib/libpq.so.3", O_RDONLY) = -1 EACCES (Permission denied)
IRC [14:12] <zione> open("/etc/ld.so.cache", O_RDONLY) = 7
IRC [14:12] <zione> fstat64(7, {st_mode=S_IFREG|0644, st_size=36138, ...}) = 0
IRC [14:12] <zione> old_mmap(NULL, 36138, PROT_READ, MAP_PRIVATE, 7, 0) = 0x40c9a000
IRC [14:12] <zione> close(7) = 0
IRC [14:12] <martinh> should end up with a number of lines that are open(...libpq...) those lines will tell you where it's trying to find the library.
IRC [14:12] <zione> open("/usr/local/pgsql/lib/libpq.so.3", O_RDONLY) = -1 EACCES (Permission denied)
IRC [14:12] <zione> Permission denied
IRC [14:12] <zione> is something i wouldn't expect
IRC [14:12] <martinh> no perms? huh.
IRC [14:13] <zione> being the file world readable
IRC [14:13] <martinh> running the server as another user?
IRC [14:13] <zione> yes, thru demontools, but both users have access to those files
IRC [14:13] <martinh> su to that user and do an ls of that file.
IRC [14:14] <martinh> it could be a dir perms issue. . .
IRC [14:14] <zione> that is ok for both root and the user i have the server switch id to
IRC [14:15] <martinh> huh. really strange.
IRC [14:17] <zione> as far as i understand nsd would load modules before switching id, right ?
IRC [14:17] <martinh> probably not.
IRC [14:17] <martinh> should need root perms to read them. . .
IRC [14:18] <zione> hasn't it maybe anything to do with libpq.so.3 being a symlink ?
IRC [14:23] <martinh> naw. symlink should forward it to the right file.
IRC [14:24] <martinh> i'm stumped right now.
IRC [14:25] <zione> look, i've been able to fire it up by setting LD_LIBRARY_PATH=/home/dotlrn1/lib, just after having done cp /usr/local/pgsql/lib/libpq.so.3 /home/dotlrn1/lib
IRC [14:25] <zione> does that tell you anything ?
IRC [14:26] <zione> (i was just trying)
IRC [14:26] <zione> that's why i asked about the symlink
IRC [14:26] <zione> (never seen anything alike tought)
IRC [14:29] <martinh> no. the perm denied is something else. . .but, if you did su to the user it changes to and could read it then I don't know why. . .
IRC [14:36] <zione> it's really weird to me too... now i've got to run.. i'll let you know whatever happens with that server, well and thanx for helping me narrowing the problem to a "permission" one, tough of an unknown source ;)
IRC [14:56] <zione> maybe this is it... is a suid program disregarding all groups except the initial one ?
IRC [14:56] *** GizmoBeastLives joined the chat.
IRC [14:58] <GizmoBeastLives> I've put a diff of the nsopenssl I'm running in production vs. head up at http://www.jamierasmussen.com/download/nsopenssl.patch
IRC [14:58] <GizmoBeastLives> It has a bunch of Win32 fixes, and some bug fixes
IRC [15:01] <GizmoBeastLives> The topmost change, to nsopenssl.c might resolve some of the problems people have been having, but so far no one else has tried it (and Scott hasn't gotten back to me about whether it is an appropriate patch)
IRC [15:02] <Dossy> hey.
IRC [15:02] <Dossy> bot, jamie's nsopenssl patch is ecwav109276746148926764
IRC [15:02] <Dossy> oops
IRC [15:03] <Dossy> bot, no, jamie's nsopenssl patch is http://www.jamierasmussen.com/download/nsopenssl.patch
IRC [15:03] <Dossy> jamie's nsopenssl patch?
IRC [15:03] <Dossy> heh
IRC [15:03] <Dossy> lest I forget that URL later :)
IRC [15:04] <GizmoBeastLives> I meant to separate it out into the various unrelated patches but haven't, at least some of the bugs are listed on SF though
IRC [15:15] *** tekbasse joined the chat.
IRC [15:19] <Dossy> + // JCR - Before, wasn't checking that sslconn->ssldriver was valid,
IRC [15:19] <Dossy> + // which crashed the server, tested with Netscape 4.02 Export Edition
IRC [15:19] <Dossy> OMG. Are people still seeing NS 4.02 in the wild? :P
IRC [15:20] <tekbasse> yes
IRC [15:20] <GizmoBeastLives> Believe it or not
IRC [15:20] <GizmoBeastLives> I'
IRC [15:20] <GizmoBeastLives> I'm not actually sure which wild version triggered the crash initially, but I had an old 4.02 installer available for testing
IRC [15:21] <Dossy> wow.
IRC [15:21] <Dossy> Suckage.
IRC [15:21] <Dossy> Nate makes a good point: has anyone tried nsnss?
IRC [15:22] <jhavard> that's too many 's' in such a short string
IRC [15:22] <GizmoBeastLives> I've compiled it, but actually haven't tested it out yet
IRC [15:24] <Dossy> jhavard: yeah ...
IRC [15:25] <Dossy> Who else pronounces "nsperm" as "n-sperm" ?
IRC [15:25] <Dossy> "We need to protect our assets." "Okay, we'll just ensperm the webserver."
IRC [15:26] <jhavard> I don't.
IRC [15:26] <jhavard> And I have a sick and twisted mind.
IRC [15:26] <Dossy> Jamie -- I fixed the build.tcl to build HEAD properly again.
IRC [15:27] <jhavard> Is it just me, or is sourceforge anoncvs still broken?
IRC [15:27] <GizmoBeastLives> yeah, I just tried your mmap patch though and the server crashes on the ns_free
IRC [15:27] <GizmoBeastLives> yes, SF anonymous CVS still broken
IRC [15:28] <Dossy> gizmo: crashes on the ns_free? argh.
IRC [15:28] <Dossy> Any thoughts why?
IRC [15:29] <GizmoBeastLives> sorry, didn't have time to debug, busy week as usual
IRC [15:29] <Dossy> yeah.
IRC [15:34] <iharding> Speaking of n-sperm, I always seem to end up calling a file test.tcl
IRC [15:34] <iharding> which tcls me.
IRC [15:34] *** jcollins_ parted the chat.
IRC [15:35] *** jcollins joined the chat.
IRC [15:36] <Dossy> hi ian!
IRC [15:36] <Dossy> how'd you sneak in here?
IRC [15:36] <iharding> Hullo!
IRC [15:36] <iharding> Been lurking
IRC [15:36] <Dossy> and panthrd - sorry about disappearing on you yesterday.
IRC [15:36] <Dossy> panthrd, ever get your nsmysql setup working?
IRC [15:38] <Dossy> iharding: get subscribed to the mailing list ok?
IRC [15:38] <iharding> Nope. Incompetent admins here.
IRC [15:38] <Dossy> doh.
IRC [15:38] <Dossy> :(
IRC [15:38] <Dossy> sorry
IRC [15:38] <Dossy> woo, someone spammed the olympics. http://edition.cnn.com/2004/SPORT/08/17/tutu.dive/
IRC [15:40] <iharding> Classic.
IRC [16:31] <Dossy> Jamie, still here?
IRC [16:32] <GizmoBeastLives> yes
IRC [16:32] <Dossy> bot, jamie's AOLserver 4 on Win32 is http://empoweringminds.mle.ie/openacs/4/
IRC [16:32] <Dossy> How easy was that crash in ns_free to reproduce? first request?
IRC [16:32] <GizmoBeastLives> that's old though, 4.0 beta 10
IRC [16:33] <Dossy> yeah
IRC [16:33] <GizmoBeastLives> I just haven't gotten around to putting together a newer installer, hopefully for 4.1
IRC [16:33] <GizmoBeastLives> yes, first request
IRC [16:34] <Dossy> cool
IRC [16:34] <Dossy> hmm, wonder if i have a debugger installed :)
IRC [16:36] <GizmoBeastLives> if you or I get the mmap code fixed, I will at least put up a zip file with all of the extra modules that I build
IRC [16:37] <GizmoBeastLives> Vlassis Rizopoulos is a student working on a graphical installer for OpenACS that uses my binaries, http://openacs.org/forums/message-view?message_id=198477
IRC [16:39] <Dossy> yeah
IRC [16:39] <Dossy> he mentioned that in #openacs earlier
IRC [16:39] <Dossy> it's a java app though :(
IRC [16:39] <Dossy> i'm tempted to create a starkit installer that uses tk ... :)
IRC [16:39] <Dossy> or, hell, what's wrong with MSI.
IRC [16:39] <GizmoBeastLives> yeah, I have some old code that generates an MSI installer
IRC [16:40] <Dossy> *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Documents and Settings\Dossy\My Documents\AOL\cvs\aolserver_HEAD\aolserver-4.1.0a-testing\bin\tcl84t.dll -
IRC [16:40] <Dossy> tcl84t!TclpFree+0x3b:
IRC [16:40] <Dossy> unf.
IRC [16:40] <GizmoBeastLives> MSI is actually kind of a cool technology, though working with it is frustrating sometimes
IRC [16:40] <GizmoBeastLives> Inno Setup is also very easy to use
IRC [16:40] <GizmoBeastLives> but not MSI based
IRC [16:41] <GizmoBeastLives> Not running a debug build?
IRC [16:42] <GizmoBeastLives> Sounds like Jim W. might be very happy to see 4.1
IRC [16:42] <Dossy> Jim W?
IRC [16:43] <Dossy> and yeah -- not running a debug build. wonder if i can tell the debugger how to get the symbols though
IRC [16:44] <GizmoBeastLives> Jim Wilcoxson sent an email to the mailing list asking for some things, which, if I'm not mistaken, are going to be possible with 4.1's pools
IRC [16:50] *** panthrd parted the chat.
IRC [17:03] <Dossy> oh
IRC [17:03] <Dossy> OK.
IRC [17:40] *** iharding parted the chat.
IRC [17:44] *** earthmeLon joined the chat.
IRC [17:44] <earthmeLon> Hello
IRC [17:48] *** earthmeLon parted the chat.
IRC [17:48] *** earthmeLon joined the chat.
IRC [17:51] *** earthmeLon parted the chat.
IRC [18:32] *** bartt joined the chat.
IRC [18:32] *** zione parted the chat.
IRC [18:42] <Dossy> omg
IRC [18:42] <Dossy> i'm a moron. now i know why that ns_free() crashes on win32. DUHHH
IRC [18:42] <Dossy> the upside of this is i almost have WinDbg figured out! :)
IRC [18:45] <GizmoBeastLives> what was the problem?
IRC [18:55] <Dossy> #ifdef in the wrong place :)
IRC [18:55] <Dossy> or rather, the ns_free() needs to happen INSIDE the "if (connPtr->mlen > 0) {" check :)
IRC [18:55] <Dossy> fixing now
IRC [18:56] <GizmoBeastLives> what was your opinion on using win32 mem map functions?
IRC [19:03] <Dossy> performance comparable?
IRC [19:03] <Dossy> in other words: is it better to use mmap on win32 at all, or on win32 we do without it?
IRC [19:04] <GizmoBeastLives> I'm not certain, would have to test it
IRC [19:19] *** zione joined the chat.
IRC [19:24] <zione> it's me again.... ;)
IRC [19:24] <zione> i have a quick one, i'm back to square 0... reading about suid and setuid
IRC [19:24] <zione> nsd -u -g calls setuid and setgid
IRC [19:25] <zione> now, does this implies that "secondary" groups for the suid'd user are not set/considered/effective ?
IRC [19:28] <Dossy> they are
IRC [19:28] <zione> s/implies/imply/
IRC [19:28] <Dossy> if you don't specify -g i think
IRC [19:28] <zione> ok, let me try that, i am about tracking down the problem which has driven me mad
IRC [19:29] <Dossy> or maybe even if you specify -g. not sure.
IRC [19:29] <zione> (btw: do you know of any way to check that out... maybe inserting a few lines in some init.tcl ?)
IRC [19:29] <Dossy> I know that someone filed a bug regarding supplementary groups and the fix went into HEAD and 4.0 at some point.
IRC [19:29] <Dossy> [exec id] ?
IRC [19:29] <Dossy> puts [exec id]
IRC [19:29] <Dossy> although i would strongly recommend not leaving that in :)
IRC [19:30] <zione> obviously not, so i can ns_log [exec id] in bootstrap.tcl somewhere (i'm running openacs)
IRC [19:31] <zione> s/not/not leaving it in :)/
IRC [19:35] <zione> as far as i am gone now it seems specifying -g does _not_ bring up any group
IRC [19:36] <bartt> If you use -g, you DON't get the secondary gids
IRC [19:37] <zione> so you definitely confirm what has been driving me crazy during last 3 days.....
IRC [19:37] <zione> partly my fault i hadn't done any strace
IRC [19:37] <zione> (before)
IRC [19:38] <zione> bartt: how would i set secondary groups... with multiple -g options ?
IRC [19:39] <zione> or just forget about it and have my isp (yeah, the fact is we don't have root access), to unify the db group and the web group ?
IRC [19:45] <zione> dossy: exec id returns the -u and the -g args without saying anything about secondary groups. isn't there a specific command for extra groups ?
IRC [19:46] <zione> [18/Aug/2004:01:41:06][21693.1075067424][-main-] Warning: uid=503(dotlrn1) gid=102(sql)
IRC [19:50] <zione> i've tested this tough... not specifying the -g option would set the -u user primary group
IRC [19:51] *** GizmoBeastLives parted the chat.
IRC [19:54] <Dossy> zione: what version fo aolserver are you using?
IRC [19:55] <zione> i've also tested that out of multiple -g options nsd would consider only the last
IRC [19:56] <zione> dossy: AOLserver/4.0.5 (aolserver4_0)
IRC [19:56] <zione> CVS Tag: $Name: aolserver_v40_r5 $
IRC [19:57] <Dossy> ah.
IRC [19:57] <zione> dossy: is such behaviour a bug or just the default behaviour for any unix program ?
IRC [19:57] <Dossy> well, yeah. that's not going to help
IRC [19:57] <Dossy> the supplementary groups stuff went in around 4.0.6 IIRC
IRC [19:57] <Dossy> but 4.0.6 has a horrible bug in it. 4.0.7 is latest stable and recommended.
IRC [19:59] <zione> ok, to translate it into practice: if you can't do it without secondary groups, move to 4.0.7. Only way to have it working with 4.0.5 is to unify my group needs. Is that correct ? Do you have handy pointer to such info about that bug ?
IRC [20:06] <Dossy> it's a feature, really
IRC [20:06] <Dossy> initgroups() wasn't being called.
IRC [20:07] <Dossy> so, we implemented that sometime around 4.0.6/4.0.7
IRC [20:10] <zione> ok, i understand it's extra security. is the bugtracker for aolserver the one on sourceforge ? is it maybe this http://sourceforge.net/tracker/index.php?func=detail&aid=425401&group_id=3152&atid=103152
IRC [20:11] <Dossy> zione: very likely.
IRC [20:12] <Dossy> and as my closing comment says, it made it into 4.0.6 :)
IRC [20:12] <Dossy> but 4.0.6 is not safe to use. so, 4.0.7 :)
IRC [20:13] <zione> ok. now i face two options... either upgrade dev, stage, prod... or change groups on prod, which has to be done thru someone else, cause our groups has not root access....
IRC [20:13] <zione> at least i know understand the problem.
IRC [20:14] <Dossy> ouch.
IRC [20:14] <Dossy> :(
IRC [20:14] <zione> the initial problem was a failure to load libpq.so.3 when nsd was run by daemontools
IRC [20:14] <Dossy> hmmm
IRC [20:15] <zione> libs in pgsql where group owned by a different group than the primary for the user
IRC [20:15] <zione> so the server would start when invoked manuwally as nsd -t config.tcl but would fail if run _with the same target user and primary group_ by daemontools
IRC [20:15] <Dossy> OK, checked in the fix to HEAD for the Win32 build crash ... still can't get WinDbg working though. :)
IRC [20:16] <Dossy> Hmm.
IRC [20:16] <Dossy> ack it's 8pm already - i need to run
IRC [20:16] <Dossy> i'll talk to you all later.
IRC [20:16] <Dossy> *detached*
IRC [20:17] <zione> what's more is that on one machine we had nspostgres.so statically linked to libpq.so.3, while on some other we had it dinamically. so on some machine it would behave ok, on some other it would not
IRC [20:18] <zione> and what's more, the fact of being statically linked rather than dinamically would depend only on the fact of having deployed some postgres-libs rpm rather than not having
IRC [20:19] <zione> well... never mind, i've written all this for reference, i think i'll write a dissertation on this ;)
IRC [20:24] <zione> well, i'm switching off this laptop, thanx dossy and bartt
IRC [20:24] *** zione parted the chat.