Thursday April 7, 2011

[Time] NameMessage
[05:39] sustrik achin: you need zeromq 2.1.4 aside of pyzmq 2.1.4
[10:38] mile evax, thanks for the erlzmq patch
[10:38] mile but sadly, it diesn't work
[10:38] mile I just got around to try it
[10:39] autotron any folks here use the nodejs binding ?
[10:49] onr autotron: is there a nodejs binding?
[10:49] autotron onr:
[11:05] onr autotron: looks neat
[12:26] pieterh hi folks
[12:34] achin sustrik__, ah, ok, thanks. i didn't think to do that since there is no "2.1.4" tag or branch in the libzmq repo. i guess i'll have to download a tarball
[12:45] pieterh achin: we started making stable releases of 0MQ a few months back
[12:45] pieterh what's in the repo is generally unstable and only for those wanting to test the latest code
[12:50] achin there's a v2.1.0 tag in the repo, so i guess i would have expected to find a v.2.1.4 tag as well
[12:50] pieterh achin: for various reasons, we split the release process off the development process
[12:51] pieterh so there are separate repos for releases, which do have the tags
[12:51] pieterh we're probably going to merge these back into the libzmq repo at some point
[12:52] achin ok, that's good to know, thanks
[12:52] pieterh the 2-1 release repo is at
[12:53] pieterh there is an intention to broaden the "release" to include other projects, such as bindings
[12:53] achin ahh, that's really the repo i should be using
[12:54] pieterh well, unless you specifically want a git (e.g. to work on the code) you should take the packages
[12:54] pieterh they are recent, fresh, stable
[12:55] achin i thought i would try the latest, but i was having issues building pyzmq, so i'm going to back up a step and use the latest [matching stable] versions for both
[12:56] pieterh yeah, the libzmq master has morphed into 3.0, so you want the 2.1.4 tarball
[12:56] pieterh this should be indicated on the pyzmq page
[13:09] achin pieterh, using both zmq 2.1.4 and pyzmq 2.1.4, everything builds cleanly, as expected
[13:09] pieterh achin: nice
[13:09] pieterh achin: it'd be worth fixing whatever path you followed, so others get this right
[13:11] achin i checked out master of the libzmq repo. this built cleanly. i then checked out master from the pyzmq repo, which had problems building against libzmq master
[13:11] pieterh so why did you go to the libzmq master?
[13:12] achin good question
[13:12] pieterh I assume you started at
[13:12] achin i did. i'm trying to find the page/link that pointed me to libzmq
[13:13] pieterh let's find it and fix it, that's a trap for the unwary
[13:14] pieterh possibly via this page:
[13:14] achin well, that page got to me the pyzmq repo
[13:15] achin i *think* i might have wandered around until i found this:
[13:15] achin and thought "ooh, i like github, let me play here"
[13:16] pieterh ok, I'll add a note on that page
[13:18] achin i sometimes like to track a git repo instead of downloading tarballs because i find a "git checkout [new tag]" is quicker than navigating to a webpage to get a new URL to download
[13:19] pieterh achin: OK, I'll add a link to the tagged repo on the download page
[13:20] achin that sounds great. thanks
[13:22] pieterh achin: can you check and see if that makes sense?
[13:23] achin sorry, i don't see anything that looks different
[13:24] pieterh links to the two gits, just after the download packages
[13:24] pieterh too subtle?
[13:25] achin maybe the old page is stuck in some cache? this is what i see:
[13:26] pieterh wikidot does quite aggressive caching, try reloading?
[13:26] achin oh wait. yeah, after mashing F5, i see it now
[13:26] pieterh ok
[13:26] achin that looks perfect
[13:27] pieterh it's true that git is quite a nice way to get code
[13:27] pieterh great!
[13:27] achin git fetch, git tag -l *oh, somethign new* git checkout
[13:31] achin thanks for the help, and thanks for being so aware of your users' experiences. i now can start hacking out neat distributed applications
[13:35] mikko pieterh: msvc
[13:35] pieterh achin: np, it's always fun to improve the 'experience'
[13:36] pieterh mikko: hi!, and a good msvc to you too
[13:36] mikko
[13:36] mikko same thing with 2-2
[13:36] mikko not sure what it is
[13:36] mikko apart from that all succeeding
[13:37] pieterh hmm, could it be some code that leaked in from 3.0?
[13:37] mikko it's possible
[13:37] pieterh I'll fire up my win xp box and give it a shot
[13:37] mikko but 3.0 succeeds that build
[13:37] mikko it looks like openpgm related
[13:37] mikko i've seen this before
[13:37] pieterh ah, only with WithOpenPGM
[13:38] pieterh it's only this, right? :
[13:38] pieterh ..\..\..\src\connect_session.cpp(46): error C2511: 'void zmq::connect_session_t::start_connecting(BOOL)' : overloaded member function not found in 'zmq::connect_session_t'
[13:38] mikko i think so
[13:38] mikko might be related to definition of bool?
[13:39] pieterh looks something like that
[13:49] pieterh mikko: it's definitely in the pgm layer in libzmq
[13:50] pieterh I'd suggest bubbling this up to steve
[14:07] evax ok, the patch didn't work, but I reproduced and fixed it including stddef.h in vector.h AND removing the ifndef/typedef
[14:09] stevan I am running into issues trying to compile jzmq on Mac OS X, it seems to fall into a recursive hole and never stop compiling the java files
[14:09] stevan anyone seen this before?
[14:10] stevan oh wait, wow, nevermind
[14:11] stevan (attempting to compile unfamiliar libs in unfamiliar languages very late at night)--
[14:22] evax (oops wrong window, sorry for the noise)
[14:48] NikolaVeber evax, thanks for the patch
[14:50] NikolaVeber I still have one problem though, I'm not sure if it has anything to do with the architectural issues, similar to the bug
[15:06] NikolaVeber solved :)
[15:07] evax NikolaVeber: oh, better yet :)
[15:08] NikolaVeber I forgot the -pa argument to erl
[15:08] NikolaVeber idiotic :/
[15:08] evax use kerl :)
[15:10] NikolaVeber ??
[15:10] evax
[15:11] evax :)
[15:14] evax NikolaVeber: I only checked github before choosing the name, I missed this one :\
[15:21] NikolaVeber evax, looks good... :)
[15:21] NikolaVeber just that google doen't know that much about it yet :)
[15:22] NikolaVeber and docs look very very nice, KUDOs
[15:25] evax NikolaVeber: thanks ! btw erlzmq2 is agnerized, so once you have a kerl installation activated, you can install it with "agner install erlzmq" and it will be available on your next erl invocation
[15:30] NikolaVeber cool
[15:30] NikolaVeber I'll definitely have a look into it!
[15:45] NikolaVeber evax, I found another inconsistence since the version a couple of weeks ago
[15:45] NikolaVeber {ok, C} = erlzmq:context(),
[15:45] NikolaVeber {ok, S1} = erlzmq:socket(C, req),
[15:45] NikolaVeber erlzmq:send(S1, "Hello"),
[15:45] NikolaVeber ** exception error: no function clause matching erlzmq:send({1,<<>>},"Hello")
[15:45] NikolaVeber in function mytest:request/2
[15:45] NikolaVeber this code worked fine then
[15:46] NikolaVeber oh, I've just seen the test file
[15:47] NikolaVeber works like a charm!
[16:23] dale18 In the case where there is one publisher and one subscriber, should it be identical which socket binds and which one connects? It looks like if the publisher is the one connecting, it acts like a durable publisher and won't drop messages if there is no subscriber (this is different from what's in the documentation?)
[16:30] pieterh dale18: it should be identical, yes
[16:30] pieterh if you have a simple test case where the publisher is not dropping messages, post it, thanks
[16:31] dale18 okay, I do have a simple minimal example. where should I post it, right here? (it's about 10 lines of code for the publisher and the subscriber)
[16:31] pieterh send it to the mailing list, and put the source code in a pastebin, e.g. github gist
[16:31] pieterh also, log an issue on the libzmq repository, so it doesn't get forgotten
[17:10] paupau Anyone used ØMQ on iOS?
[17:11] paupau I've compiled it successfully at least and I guess kqueue is supported internally and all
[17:12] paupau I wonder if it's a good idea re: things like wireless radio/battery life
[17:12] paupau I guess that's an iOS-specific question though.
[17:13] paupau Mostly just wondering if anyone else has experience with that
[17:15] pieterh hi paupau
[17:15] pieterh by default 0MQ doesn't do anything that would use the radio unless you ask it to
[17:15] pieterh there are a few tricks like using a tickless timer in poll loops
[17:16] paupau cool
[17:16] pieterh but you build these yourself, on top of 0MQ
[17:16] pieterh there's an example at the end of Ch4 of the Guide
[17:17] pieterh you also need to do heartbeating properly, if you're using a mobile device
[17:17] paupau hmm hmm
[20:07] pieterh mikko: you around?
[20:20] eyeris I'm trying to get pyzmq up and running on Windows. After a build and install, I get an import error "No module named win32api"
[20:23] eyeris I've googled for a package named win32api, but nothing obvious comes up. There's no win32api package on pypi. There's something called PyWin32, but it seems to only be available with the ActiveState dist
[20:25] eyeris Oh, wait, nvm. That's the package and it's now on
[20:36] mikko pieterh: yes
[20:36] pieterh mikko: I've fixed the libzapi errors for win32
[20:36] pieterh it should build on mingw properly now
[20:36] mikko let me try
[20:36] pieterh selftests pass OK and everything... :)
[20:39] pieterh mikko: it got a lot further, failed with something post-build afaics
[20:40] mikko yeah
[20:40] mikko noticed that coverage was on for some reason
[20:40] mikko sec
[20:42] pieterh success!
[20:43] mikko cool
[20:43] mikko almost everything for 2-1 and 2-2 succeeding now
[20:43] pieterh yeah, very cool indeed...
[20:43] pieterh next is to build and test the 90+ guide examples in 10 languages...
[20:43] pieterh just kidding :)
[20:46] mikko interesting thing is that libzmq_GCC-linux_s390x tests succeed consistently now
[20:46] mikko and for 2-1 and 2-2 shutdown_stress fails
[20:46] pieterh same OS & box?
[20:47] mikko yes
[20:48] mikko i wonder if something has changed in 30
[20:48] mikko 3.0*
[20:49] sustrik i've lowered the number of iterations
[20:49] sustrik so it's not that invasive
[20:50] jond mikko, pieterh: quick question if i checkout 'master' from libzmq that's pretty much the latest release yes? the 3.0 stuff is on the pre3.0 branch?
[20:50] pieterh jond: nope, the 3.0 stuff is now merged into master
[20:50] pieterh if you want the latest *stable* release, see the main download page
[20:51] pieterh sustrik__: can you tell me where to change that in 2.1?
[20:51] jond pieterh: i never use the releases!
[20:51] pieterh jond: like I said, see the main download page
[20:51] mikko sustrik__: that explains
[20:51] pieterh unless you specifically want the unstable latest master
[20:51] mikko sustrik__: have you seen this error before:
[20:51] sustrik pieterh: tests/test_shutdown_stress.cpp
[20:51] mikko
[20:52] mikko i think this has been fixed once at some point somewhere
[20:52] mikko but i really can't remember the details of it
[20:52] sustrik mikko: that's steven redefining 'bool' in openpgm headers
[20:52] sustrik he've fixed that afaik
[20:52] sustrik what version of openpgm are you using?
[20:53] pieterh mikko: the shutdown stress in 2.1 is the same as in 3.0 master
[20:53] pieterh 100 threads
[20:53] mikko sustrik__: will check
[20:53] pieterh ah, you changed it to 10 threads
[20:54] sustrik yes
[20:54] pieterh sustrik__: you didn't send me a patch
[20:55] sustrik it was probably part of the patch that updated the tests for 3.0 api
[20:55] sustrik just patch the number in 2.1
[20:55] mikko 5.1.102
[20:55] pieterh sure
[20:55] mikko i should probably update that
[20:55] sustrik iirc it was fixed somewhere around 5.1.111
[20:56] mikko i need to ask steven for newer installer package
[20:57] pieterh mikko: ok, fixed shutdown stress tests on 2.1 and 2.2
[20:57] mikko cool
[20:57] mikko should be ok in the morning build
[20:57] mikko i still need to add libzfl builds at some point
[20:57] mikko what is the situation for 10th may?
[20:57] mikko is it happening?
[20:58] pieterh mikko: well, I have to pay the deposit for the room tomorrow
[20:58] pieterh if we want it, it's cheap and nice
[21:00] pieterh mikko: ok, random decision, it's on
[21:00] mikko ok, cool
[21:00] mikko i'll book eurostar at some point
[21:00] mikko sustrik can't make it?
[21:00] mikko Assertion failed: !sent && errno == EAGAIN, file test_hwm.cpp, line 53
[21:00] pieterh sustrik will be recovering from vodak poisoning
[21:00] mikko also interesting
[21:00] mikko sustrik__: it would be cool if you can make brussels too
[21:00] mikko hopefully ianbarber is coming as well
[21:01] mikko he might be joining me from london
[21:03] pieterh there's a few other people I'm working with in London who might come
[21:03] pieterh I mean we could do the event in London
[21:03] pieterh but I was there a couple of days ago and paid 10 pounds for a proper beer
[21:03] jond mikko: do you have enough git-foo to explain how I get the sub forwarding stuff from the libzmq onto the zeromq2-1?
[21:04] mikko jond: checkout 2-1, git remote add libzmq
[21:04] mikko git cherry-pick <commit hash>
[21:04] mikko and hope it merges cleanly :)
[21:05] mikko pieterh: booking a proper room in london might be more expensive
[21:05] mikko not sure
[21:05] jond mikko: but the subforwarding is a branch? does that make a difference?
[21:05] pieterh yes, in Brussels too, this place is especially nice for that
[21:05] mikko jond: shouldn't
[21:05] pieterh jond: we can merge the subforwarding onto 2-2, but not 2-1
[21:06] jond pieterh: can that be done on github?
[21:06] pieterh jond, with git, yes
[21:07] jond pieterh: so it would appear as branch of 2-2. if so that sounds easier?
[21:07] pieterh jond... you can create a branch in 2-2, then pull the branch from libzmq, I guess
[21:08] jond pieterh: ok, will report back....
[21:08] mikko pieterh:
[21:08] mikko i know that place in london for room hire
[21:08] mikko are the prices a lot higher than brussels?
[21:09] pieterh mikko: the room I'm renting has space for 50-100 people and costs 175 Euro and is right in the center
[21:09] mikko that is pretty cheap
[21:10] mikko brb
[21:42] jond mikko: is this a new change that you do not see the compilation commands when building 2-2? eg CXX libzmq_la-clock.lo
[22:01] pieterh jond: we backported that to 2.1 as well
[22:01] jond pieterh: is there anyway to force it log the whole command elsewhere?
[22:02] pieterh jond: checking...
[22:02] pieterh ./configure --disable-silent-rules
[22:03] jond pieterh: thx