Tuesday May 10, 2011

[Time] NameMessage
[00:19] CIA-75 rbzmq: 03Brian Buchanan 07master * r71db6c2 10/ (README.rdoc README is in RDOC format -- rename to README.rdoc (Issue #7) -
[01:00] zedas hey, I just upgraded to 2.1.6 and I get this now: Assertion failed: (msg_->flags | ZMQ_MSG_MASK) == 0xff (zmq.cpp:223)
[01:02] zedas so that, nice. i'll go back down to 2.1.4
[01:50] salva_oz hello Im begining with zeromq in lisp, i cant find a way to run "hello world" service without blocking the repl, some help please
[01:54] jer make a script, have the repl interpret that in one process
[01:54] jer in another process, interact with it
[01:55] salva_oz mmm
[01:56] salva_oz when i launch a procces its another than repl
[01:57] salva_oz (mp:process-run-function 'demo-hwserver)
[01:57] salva_oz if demo-hwserver is a loop that print a text , i work in the repl while text msgs are generated
[01:58] salva_oz but if a put a (zmq:recv ) in it
[01:58] salva_oz the repl is blocket
[02:27] salva_oz well i found the problem ans the solution i think thanks
[02:28] jer ah
[07:59] mikko morning
[08:04] ptrb reposting a question from last night: if I have a coredump, and I suspect a ZMQ PUB/SUB socket with no HWM has consumed a bunch of memory, is there some way to check eg. how many messages are in the socket buffer, from within gdb?
[09:14] mile in the examples from the guide there is often a zhelpers.hpp mentioned
[09:14] mile where can I find that?
[09:16] djc mile: search for zhelpers.hpp in the guide ;)
[09:19] mile hm, I coudl fnd the c version
[09:20] mile ah, now
[09:20] mile here it is :)
[12:39] mile what is the best way to destroy a message in c++?
[12:40] mile if I use message.rebuild((size_t)0)
[12:40] mile i get almost there when reusing the message (in a loop)
[12:40] mile but under the length of 3, i get 34 attached on the end
[12:53] mile zmq_msg_close() seems not to be available in c++
[12:54] guido_g the close is called in the message destructor
[12:57] mile zmq::message_t payload; <-> payload.~message_t() ?
[12:58] guido_g what does that mean?
[12:59] mile am I supposed to call the destructor as payload.~message_t() ?
[12:59] guido_g no
[12:59] guido_g why should you?
[12:59] mile I am initializing a variable in the loop
[13:00] mile but it doesn't seem to be destroyed when it gets out of scope
[13:00] guido_g seem? did you check? and if so, how?
[13:00] mile I'm used to Java, so I' wondering if I have to destroy it manually..
[13:00] mile i'm sending messages of variable length
[13:01] mile if I send a longer message, it is displayed right
[13:01] mile if I send a shorter one, it is shown along with the rest of the longer message
[13:01] guido_g then you're doing something wrong
[13:02] guido_g w/o the code, impossible to tell what
[13:02] mile
[13:03] mile one can ignore the "destructor" calls, it works the same as without them
[13:14] guido_g what should it do? i mean what do you want to achieve?
[13:16] mile I want to read the first envelope, extract the id, then read the rest, and pass it along to another socket
[13:16] mile maybe do something with them#
[13:16] ianbarber
[13:22] mile the exaple of envelopes shows only multiple rcv calls
[13:23] mile but what if the number of envelopes is unknown at that point?
[13:30] ianbarber you can just keep reading until getsockopt RECV_MORE is 0, then you know how many envelopes
[13:51] mile can I destroy a message object manually in c++?
[13:51] mile this bothers me, in C library, there is zmq_msg_close
[13:51] mile is there an equivalent in c++? manual destruction?
[13:54] ianbarber it's in the destructor
[13:54] ianbarber for the object
[13:54] mile so I can call delete &message?
[13:54] mile hm, crashes pretty ugly
[13:56] ianbarber just take it out of scope i believe. or i guess delete if you did a new. my c++ is pretty sketchy :)
[13:56] mile it's defined in the loop, so by new iteration it should get out of scope
[13:57] mile and be created again.... my c++ is also not that good, this puzzles me
[17:32] joelr good day! can i fork and continue sending to my bound pub socket?
[18:11] m0th hi, could someone help me get off the ground with zeromq and c++?
[18:11] m0th I'm trying to compile the hello world example in the guide and I get "helloworld.cpp:7: error: ‘zmq’ has not been declared"
[18:14] Toba you should probably #include <zmq.hpp>
[18:14] Toba well, if you want it to work.
[18:15] m0th Toba: tried that, and zmq.h
[18:16] Toba pastebin your helloworld.cpp
[18:20] m0th Toba: tried that, and zmq.h
[18:20] m0th whoops, sorry
[18:21] m0th
[18:23] m0th forgot to mention, when I use zmq.hpp I get a different error saying that _zmq_socket & friends are undefined symbols
[18:25] m0th the full stack trace:
[18:53] jond m0th: you need to link zmq library
[19:00] m0th jond: if my zmq library is in /usr/local/lib, shouldn't this work? g++ -I/usr/local/include/ -L/usr/local/lib/ helloworld.cpp
[19:05] m0th ah, I see, need to -lzmq
[19:05] m0th thanks
[19:08] cremes joelr: no, it isn't safe; for details search the mailing list archives for 'fork'
[19:08] joelr cremes: tried that to no avail.
[19:09] cremes ok, then just take my word for it :)
[19:09] joelr all the threads i found talk about whether to init the context before or after forking
[19:09] cremes after
[19:09] cremes that's the only safe way to do it
[19:10] joelr cremes: what i'm trying to achieve is stream a lot of data to a client that's connected to the "parent" pub socket
[19:10] joelr cremes: if i don't fork then i won't be able to process new requests while i'm busily streaming data
[19:11] cremes joelr: why can't you process new requests while you are streaming data? why not use a thread?
[19:12] joelr cremes: you mean a background thread to stream instead of forking?
[19:12] cremes correct
[19:12] joelr cremes: i suppose i well could. thanks.
[19:12] cremes be advised that you should pass the context to the thread *before* you create the PUB socket
[19:13] joelr cremes: thanks!
[19:13] cremes this should be pretty well documented in the guide... please read it if you haven't yet
[19:13] joelr i have read it at least 5 times already
[19:13] joelr top to bottom
[19:13] cremes good, then it is probably *starting* to sink in :)
[19:13] joelr indeed
[20:04] brianthelion hey guys, i'm having some issues that I can't get my head around. anybody up for coaching a newb?
[20:05] brianthelion nice frigging work on ZMQ, btw
[20:05] brianthelion very slick stuff
[20:05] brianthelion cheers to the devs!
[20:27] brianthelion mmmm.... seems like everybody is busy. maybe i'll ping the mailing list
[20:58] brianthelion i just installed the git 2-1 version of zmq and am still suffering from
[20:58] brianthelion The Issue
[20:59] brianthelion which is some apparent queuing on PUB/SUB fan-in despite HWM=1 on all senders and receivers
[20:59] brianthelion has anyone else observed this?
[21:28] aspidites if i want to have multiple clients connect to a single server which sockets should i be using? XREP paired with XREQ?
[21:28] aspidites making an online card game
[22:04] aspidites nvm, a bit of work, and its XREP paired with REP