[Time] Name | Message |
[06:05] mikko
|
good morning
|
[06:15] guido_g
|
morning all
|
[10:24] pieterh
|
a dealer socket (xreq) is exactly like a push socket merged with a pull socket
|
[10:25] pieterh
|
a router socket basically has a weird API for send/recv that includes an address
|
[10:25] pieterh
|
currently the address is passed as a fake message frame
|
[10:26] cods
|
I think I undestand for router (<ID> + nul frame + <payload> -possible made of several frames itself-)
|
[10:26] cods
|
I need to think again about dealer
|
[10:26] pieterh
|
nope, that's a different aspect
|
[10:26] cods
|
ah
|
[10:26] pieterh
|
rourter doesn't use an envelope at all
|
[10:26] pieterh
|
that's what REQ and REP sockets do to talk to each other
|
[10:27] cods
|
hmm, I thought it was just just renaming of XREQ/XREP.
|
[10:27] pieterh
|
it is
|
[10:27] pieterh
|
router === xrep, dealer === xreq
|
[10:28] pieterh
|
your confusion is a frequently-seen consequence of the poor names and strange asymmetric behaviour
|
[10:28] pieterh
|
the behaviour actually makes sense, but only if you use different names
|
[10:28] cods
|
ah :)
|
[10:28] pieterh
|
a REQ socket creates an empty envelope (1 null part) + content
|
[10:29] pieterh
|
a REP socket takes an envelope + content, saves the envelope, gives the content to the application
|
[10:29] pieterh
|
and on sending, does the reverse: takes a content, re-wraps it, and sends it back
|
[10:29] pieterh
|
a DEALER socket (aka XREQ) just forwards messages in and out, period
|
[10:30] pieterh
|
a ROUTER socket (aka XREP) passes entire messages (envelope + content) to/from an app, with the virtual address frame prepended
|
[10:30] pieterh
|
any envelope construction is done by an app
|
[10:30] pieterh
|
which reads from a ROUTER and writes to a DEALER
|
[10:30] cods
|
that's interesting. I was confused from the beginning then. Good summary!
|
[10:31] pieterh
|
the design actually works really nicely except for the names
|
[10:32] ASY
|
pieterh, you missed earlier, I was crying about the fact that if network connection breaks during REQ/REP exchange the requester hangs permanently.
|
[10:32] pieterh
|
yup
|
[10:32] pieterh
|
ASY: if you read the Guide, ch4, there's a pattern to handle this
|
[10:32] pieterh
|
the lazy pirate
|
[10:33] pieterh
|
Rrr = reliable request reply
|
[10:35] mikko
|
http://repo.zero.mq/rpm/
|
[10:35] mikko
|
rpm repository is up
|
[10:35] mikko
|
and 2.1.7 packaged
|
[10:35] ASY
|
pieterh: don't think so. or am I missing something? https://github.com/zeromq/libzmq/issues/215
|
[10:36] pieterh
|
ASY: have you read that part of the Guide?
|
[10:36] pieterh
|
the REP disconnecting is a classic failure
|
[10:36] pieterh
|
it's precisely what LP is meant to handle
|
[10:36] pieterh
|
mikko: nice!
|
[10:37] pieterh
|
ASY: I'm not disagreeing that it'd be nice to have the REQ socket do this automatically
|
[10:37] ASY
|
not when you already sent the message. if you sent the message already and REP disconnects it results in the REQ permanently hanging. unless you implement a manual timeout, which is unacceptable in my situation.
|
[10:40] ASY
|
anyhow.
|
[10:41] pieterh
|
As implemented today, REQ sockets are not robust against typical failures in distributed apps
|
[10:42] pieterh
|
I'd not do a blocking recv on a REQ socket unless it was between threads
|
[10:42] pieterh
|
between peers, where one can crash, I'd always use a Lazy Pirate pattern
|
[10:45] pieterh
|
ok, 2.1.7 released
|
[10:45] ASY
|
i will get around it, but this is not how it should be.
|
[11:05] pieterh
|
ASY: you may want to look at the code and send a patch for this
|
[11:27] ASY
|
pieterh: i don't want to volounteer because it is 7:26 am again and I haven't slept again :( and I expect it to be like this for at least 2-3 months, but if no one will get to it by then, I definately will.
|
[11:28] pieterh
|
ASY: yeah, I know how it goes...
|
[11:33] pieterh
|
sustrik: ping?
|
[11:36] truemped
|
mikko: Hi! Are you also working on the deb repository?
|
[12:16] cods
|
Would it make sense to use PUSH/SUB ? (I mean technically, not necessary from a semantic point of view)
|
[12:17] mato
|
hi all
|
[12:21] mile
|
short question on PUB/SUB
|
[12:21] mile
|
are the messages filtered on the publisher side, or when they reach the subscriber?
|
[12:21] cods
|
it's filtered on the reader side
|
[12:22] mile
|
so they get over the line anyway?
|
[12:22] cods
|
indeed
|
[12:22] mile
|
kind'a sucks, but at least it's straightforward :)
|
[12:46] ianbarber
|
mile: there is publisher side filtering on a branch in the github. it's pretty complex :)
|
[12:47] mile
|
well, I thought about it a bit before asking, it is indeed a non-trivial thong
|
[12:47] mile
|
thing
|
[12:47] mile
|
I assume having a broker to do the filtering should be the way to go
|
[12:50] ianbarber
|
yeah, that works well
|
[12:50] ianbarber
|
having intermediate devices composing new variations of feeds is pretty common afaik
|
[14:14] lestrrat
|
so are you guys going to dictate how bindings should be named? that's silly.
|
[14:14] sustrik
|
lestrrat: nope
|
[14:14] sustrik
|
note the "discuss" part
|
[14:14] lestrrat
|
the wording on the trademark page looks extremely hostile
|
[14:15] sustrik
|
pieterh: summon
|
[14:15] lestrrat
|
and a sudden issue-filing on github.
|
[14:15] sustrik
|
sorry?
|
[14:16] lestrrat
|
could've at least given me a friendly poke.
|
[14:16] sustrik
|
what happened?
|
[14:17] lestrrat
|
I had a issue filed against ZeroMQ.pm just a couple of hours ago. (granted, I know it wasn't meant to be mean or hostile)
|
[14:17] lestrrat
|
but I thought I was doing a service to the product by working hard to make it work on another language,
|
[14:18] sustrik
|
yuck, this should have been discussed first
|
[14:18] mato
|
pieterh: oi! wake up!
|
[14:18] mato
|
indeed
|
[14:18] mato
|
lestrrat: link please?
|
[14:18] lestrrat
|
but it was so sudden and so ... I dunnowhat the wording is, but ugh.
|
[14:19] mato
|
lestrrat: for the record, can you please reply to pieter's email on the list asking for discussion on the policy?
|
[14:19] mato
|
lestrrat: IRC is all very transient
|
[14:19] lestrrat
|
again: the github issue itself isn't mean/hostile. https://github.com/lestrrat/ZeroMQ-Perl/issues/13
|
[14:19] lestrrat
|
but it was so sudden, you know?
|
[14:19] sustrik
|
the problem is that the trademark stuff has to be sorted out
|
[14:20] sustrik
|
otherwise it will bite us in the future
|
[14:20] sustrik
|
you can imagine different catastrophic scenarios
|
[14:20] mato
|
lestrrat: ah, yes, pieter specifically brought up the Perl binding at the unconf
|
[14:20] mato
|
lestrrat: with the complaint that he put in the issue
|
[14:20] lestrrat
|
it's the perl traditional way of naming things.
|
[14:21] mato
|
yes, i pointed that out
|
[14:21] lestrrat
|
no module is ever named Perl::Foobar
|
[14:21] mato
|
please just tell pieter so and close the issue with "won't fix"
|
[14:21] mato
|
as for the trademark policy itself, that does need to be discussed in depth
|
[14:22] sustrik
|
yup, let's discuss it on the list
|
[14:24] lestrrat
|
okay, I get the sense it's not like everybody's all worked up to change the name :/
|
[14:24] mato
|
not really
|
[14:24] lestrrat
|
it was just like "WTF?" you know.
|
[14:24] lestrrat
|
wll reply...
|
[14:25] sustrik
|
there are two aspects to it IMO
|
[14:25] sustrik
|
either the trademarks are to be used as a protection against hostile takeover of the name
|
[14:26] sustrik
|
in which case the bindings *should* be named zeromq
|
[14:26] sustrik
|
to give them trademark protection
|
[14:26] sustrik
|
or it is meant to protect imatix' bundling of the stuff as opposed to packages made by anyone else
|
[14:27] sustrik
|
in which case binding should not be called zeromq
|
[14:27] mato
|
I understand the intent to be the former
|
[14:27] mato
|
if it's the latter, then it's all wrong...
|
[14:27] sustrik
|
the page seems to mix the two
|
[14:29] lestrrat
|
Either way, I understand that this type of protection needs to be set. I guess I'm more pissed the fact that 1. I feel like our (perl) culture is being raped, and 2. I feel like I'm being told by some sort of gov't agency to cease-or-desist
|
[14:29] lestrrat
|
sorry, in a pissy mood today.
|
[14:30] sustrik
|
np
|
[14:31] sustrik
|
the only real solution would be to have a foundation-owned trademarks
|
[14:31] sustrik
|
but noone feels like setting a foundation so fat i would guess :)
|
[14:31] sustrik
|
far
|
[14:31] mato
|
well, the policy is separate from who "owns" it
|
[14:31] mato
|
it's a matter of trust
|
[14:32] sustrik
|
yep
|
[14:32] mato
|
see for example the Debian trademark policy here: http://www.debian.org/trademark
|
[14:32] mato
|
simple and straightforward
|
[14:33] sustrik
|
aha
|
[14:33] sustrik
|
looks to be an easy solution
|
[15:12] lestrrat
|
all lowercase module names are by tradition reserved for pragmas, so perlzmq is not a valid option https://github.com/lestrrat/ZeroMQ-Perl/issues/13#issuecomment-1147039
|
[15:13] lestrrat
|
... which, I forgot to mention in my email. oh well.
|
[15:13] lestrrat
|
I'm open to a rename given enough prodding, but dictating how things should be name in a different culture is silly.
|
[15:14] guido_g
|
what about naming things like another thing in the same problem domain?
|
[15:15] lestrrat
|
I believe my predecessor named it ZeroMQ because ZeroMQ is a unique domain. At least that's how I perceived it tobe.
|
[15:16] lestrrat
|
I really don't have a better alternative.
|
[15:18] lestrrat
|
gosh, I think I'm more pissed than I thought I was.
|
[15:18] lestrrat
|
cause I know this problem in itself is silly.
|
[15:19] lestrrat
|
but just.. argh.
|
[15:20] lestrrat
|
damnit, somebody just come up with a different name that matches the perl way.
|
[15:21] lestrrat
|
I don't want to deal with this.
|
[15:21] guido_g
|
just change the repo name
|
[15:21] lestrrat
|
that's now what I'm being told.
|
[15:21] lestrrat
|
I mean
|
[15:21] lestrrat
|
that's NOT what I'm being told.
|
[15:22] guido_g
|
ok, maybe should figure out what you've been told first
|
[15:22] lestrrat
|
to change the name completely
|
[15:22] mikko
|
ZMQ ?
|
[15:23] guido_g
|
the repo name, so this is consistent with the other reqpos and can live in the same github org
|
[15:23] mikko
|
the library is libzmq
|
[15:23] guido_g
|
most users do have a problem finding out what is what
|
[15:23] guido_g
|
the pyhton-bindings are pyzmq but the python module to import is named zmq
|
[15:24] mikko
|
php module is called 'zmq'
|
[15:24] guido_g
|
but noone cares, except the python users and so far no complaints
|
[15:24] guido_g
|
id do have the impression that its more about the repo name
|
[15:25] guido_g
|
but w/o pieterh explaining his intentions it's all guessing
|
[15:25] lestrrat
|
no, I think it's the module name. he explicitly cited an automated tweet that said something along the lines of "ZeroMQ X.XX uploaded to CPAN"
|
[15:26] lestrrat
|
and I understand the concerns.
|
[15:26] lestrrat
|
I'm more pissed that there was no discussion with me before hand.
|
[15:27] pieterh
|
lestrrat: hi
|
[15:27] guido_g
|
ahhh... enlightment ahead :)
|
[15:27] lestrrat
|
waiting.
|
[15:27] pieterh
|
sorry, I was away picking up the kids at school
|
[15:28] pieterh
|
so, sustrik asked me, on Tuesday, for a written policy on the trademarks
|
[15:28] pieterh
|
this was at the conference, guido_g, mato, etc. were present
|
[15:28] pieterh
|
apparently, the text on the footer of every page wasn't sufficient
|
[15:28] pieterh
|
so, I wrote a policy for trademarks
|
[15:29] pieterh
|
there was also some mention of the perl binding calling itself 'zeromq'
|
[15:29] pieterh
|
and so I raised an issue... sorry for not emailing you privately but I didn't realize an issue would be taken so... seriously
|
[15:30] sustrik
|
well, it's a naming issue so it's going to be taken seriously
|
[15:30] pieterh
|
well, indeed, there is no gentle way to discuss this, in fact
|
[15:30] sustrik
|
that's why i asked about the trademarks in the first place
|
[15:30] pieterh
|
indeed
|
[15:30] sustrik
|
yep, better now than later
|
[15:30] pieterh
|
we do need a policy
|
[15:30] guido_g
|
ack
|
[15:30] pieterh
|
even if it's "do whatever you like, we're not going to enforce anything"
|
[15:31] pieterh
|
well, there is technically a default policy
|
[15:31] pieterh
|
if you say "XYZ is my trademark" then that's normally like saying "(C) me"
|
[15:31] pieterh
|
there are default laws on these things
|
[15:31] sustrik
|
right
|
[15:31] pieterh
|
normally a policy is needed only to grant additional rights
|
[15:32] pieterh
|
which is what I tried to write, but briefly, on that page
|
[15:32] sustrik
|
the question is whether you want to use the trademarks yourself or whether you want to make them community owned
|
[15:32] pieterh
|
lestrrat: I'm really sorry to have spoilt your evening
|
[15:32] sustrik
|
the page was a bit ambiguous about the goal
|
[15:32] pieterh
|
sustrik: that's not a real question
|
[15:32] sustrik
|
in the first place all the bindings should be names zmq-something
|
[15:32] pieterh
|
you cannot own things collectively, in modern law
|
[15:33] pieterh
|
only individuals and legal entities can own things
|
[15:33] lestrrat
|
Let me just clarify a couple of things: How urgent/serious is the naming issue? is somebody going to be after my ass if I don't change it anytime soon ?
|
[15:33] pieterh
|
lestrrat: it's not urgent, really
|
[15:33] sustrik
|
nope
|
[15:33] sustrik
|
it's just about making the naming thing clear
|
[15:33] lestrrat
|
k. that gives me a deprecation cycle. I feel better already.
|
[15:33] pieterh
|
lestrrat: I guess you always treat issues as urgent... this is not, it's just my naive way of trying to reach you transparently
|
[15:34] pieterh
|
lestrrat: note that I did NOT invoke the trademark policy on my issue report
|
[15:34] sustrik
|
i mean, the thing is that if we want to use the trademarks as a defensive tool against hostile takeover, the bindings *should* be named zeromq
|
[15:35] lestrrat
|
well it was at the same time, you know.
|
[15:35] sustrik
|
or else we can extend the trademarks to cover zmq as well
|
[15:35] pieterh
|
sustrik: was just going to say that...
|
[15:35] pieterh
|
lestrrat: yes, sorry for that
|
[15:35] sustrik
|
unfortunately, there's a company called zmq iirc
|
[15:36] pieterh
|
so the trademarks have to be owned by _someone_ and that entity has to express a policy if it's not the default "don't touch"
|
[15:36] lestrrat
|
one more thing: guido suggested "zmq" -- which very closely resembles "zeromq" -- but is it an accepted standard naming in this community?
|
[15:36] guido_g
|
http://www.zmqsoft.com/
|
[15:36] pieterh
|
I've been thinking of handing the trademarks over to some foundation but that's not always simple
|
[15:36] pieterh
|
lestrrat: yes, zmq is the real name of the project in many ways
|
[15:36] pieterh
|
libzmq, xxxzmq for bindings, etc.
|
[15:37] sustrik
|
what about the one that owns debian trademark?
|
[15:37] pieterh
|
debian foundation
|
[15:37] lestrrat
|
well, so what stops somebody else to come up with another trademark and tell me to change my module name again then?
|
[15:37] lestrrat
|
(suppose I renamed it to ZMQ.pm, that is)
|
[15:37] pieterh
|
lestrrat: ok, here's the deal
|
[15:37] sustrik
|
lestrrat: the trademark should
|
[15:38] pieterh
|
in fact we ... the community ... control the trademarks
|
[15:38] sustrik
|
that's why we are discussing it
|
[15:38] pieterh
|
I'm just trying to express the rules we all want to enforce
|
[15:38] lestrrat
|
right right, I think I wasn't clear.
|
[15:38] pieterh
|
if you can convince the community that 'zeromq' is the name you want to use
|
[15:38] pieterh
|
then we will find the right text that makes this possible
|
[15:38] lestrrat
|
I mean, if ZMQ is an acceptable binding name, then please note that somewhere, and make that the guideline for bindings.
|
[15:39] pieterh
|
yes, that's been done
|
[15:39] pieterh
|
"Guidelines for bindings authors"
|
[15:39] lestrrat
|
I don't want to have some other next generation zmq guy to tell me to change the name because it's confusing.
|
[15:39] pieterh
|
sorry, "Writing a Binding", http://www.zeromq.org/docs:bindings
|
[15:39] lestrrat
|
ah
|
[15:39] lestrrat
|
well, then I blame my predecessor.
|
[15:39] lestrrat
|
when I got it handed down to me, it was already ZeroMQ
|
[15:39] pieterh
|
no, because I only added that relevant text this morning...
|
[15:39] lestrrat
|
:/
|
[15:40] lestrrat
|
makes sense ;)
|
[15:40] lestrrat
|
ok.
|
[15:40] pieterh
|
no blame here, just a growing community that needs consistent names to avoid confusion
|
[15:40] pieterh
|
this is also why we renamed the zeromq core project to libzmq
|
[15:40] lestrrat
|
ok. I have enough information then.
|
[15:41] lestrrat
|
the distribution name will be changed to ZMQ (so tweets will show up as "new ZMQ uploaded to CPAN"),
|
[15:41] lestrrat
|
the module will be ZMQ.pm, but there will be an alias module named ZeroMQ.pm for a while.
|
[15:41] sustrik
|
wait a sec
|
[15:41] pieterh
|
this would be cool, and I'd add "Perl" in there somewhere, for others, and #zeromq for those searching on that tag
|
[15:41] pieterh
|
maybe
|
[15:41] sustrik
|
let's sort out the extent of the trademark first
|
[15:41] lestrrat
|
and after a while I'll deprecated ZeroMQ.pm
|
[15:41] pieterh
|
sustrik: it's kind of orthogonal
|
[15:42] sustrik
|
if ZMQ is a trademark of zmqsoft
|
[15:42] sustrik
|
it can become a problem
|
[15:42] pieterh
|
only if there's risk of confusion
|
[15:42] pieterh
|
plus the trademark holder does actually have to police it to some extent
|
[15:42] sustrik
|
right
|
[15:43] pieterh
|
plus there is no mention of trademarks on the ZMQsoft.com site
|
[15:43] sustrik
|
but still, don't rename anything till the discussion is sorted out
|
[15:43] lestrrat
|
the repo name can have the word perl, but the module nor the distribution will *never* have the word perl on it. is that an issue?
|
[15:43] lestrrat
|
sustrik: right.
|
[15:43] pieterh
|
lestrrat: that's normal and fine, of course
|
[15:44] pieterh
|
people can refer to the "Perl zmq module" which is very close to perfect
|
[15:44] pieterh
|
but before you make this change, please do ask zeromq-dev for feedback, others may have better suggestions
|
[15:46] sustrik
|
here's the Debian thing mato pointed out:
|
[15:46] sustrik
|
http://www.spi-inc.org/
|
[15:46] lestrrat
|
I'll let it sit while you guys decide on the trademark stuff ;)
|
[15:46] sustrik
|
projects:
|
[15:46] sustrik
|
http://www.spi-inc.org/projects/
|
[15:47] pieterh
|
sustrik: I'm happy to accept patches, obviously
|
[15:47] pieterh
|
anyone who accuses me of hidden intentions can go jump in a deep lake :)
|
[15:48] pieterh
|
lestrrat: the naming conventions for bindings does not depend on the trademark policy but rather drives it
|
[15:49] sustrik
|
it looks like an good option; the presence of projects that were bitten by trademark stuff should suggest that the policies there are sound
|
[15:49] sustrik
|
LibreOffice, Jenkins
|
[15:49] pieterh
|
sustrik: since zmqsoft doesn't claim zmq
|
[15:49] sustrik
|
goodo
|
[15:49] pieterh
|
we can add that to the list
|
[15:49] sustrik
|
ok
|
[15:49] pieterh
|
the problems with Jenkins is a good example why clear policy is valuable
|
[15:50] pieterh
|
however a real policy has to grant rights forever, at no cost, and globally, etc.
|
[15:50] mato
|
back...
|
[15:50] sustrik
|
which allows for hostile takeover, obviously
|
[15:50] sustrik
|
investigating further...
|
[15:53] pieterh
|
no, doesn't allow for hostile takeover
|
[15:53] sustrik
|
hm, if you grant rights for the name to everyone
|
[15:53] pieterh
|
I'll make this clearer in a real text, I have the templates but they're even more unfriendly
|
[15:53] sustrik
|
what prevents microsoft to just use the name?
|
[15:53] pieterh
|
you grant rights to specific uses
|
[15:53] pieterh
|
did you read what I wrote?
|
[15:53] sustrik
|
i did
|
[15:53] pieterh
|
I tried to define what those uses were
|
[15:54] lestrrat
|
well, it's your software, so from my perspective you guys can do what you wish wrt trademarks and stuff, and I'll comply to my best of abilities. the only thing I really care are my users -- if you tell me to do something that pisses my users off, I'll have the same reaction again, that's all.
|
[15:54] lestrrat
|
sorry, slow typing.
|
[15:54] pieterh
|
lestrrat: the reason for getting you into this thread is that your case is one that helps us define a workable policy
|
[15:54] pieterh
|
so I'm really happy you responded
|
[15:55] pieterh
|
sustrik: so once rights are granted they can't be removed
|
[15:55] sustrik
|
reading it again... yes, it seems that 2 and 3 are not in conflict
|
[15:56] pieterh
|
indeed, but (2) needs to be worldwide, transferable, fully-paid up, and irrevocable
|
[15:56] sustrik
|
kind of
|
[15:56] pieterh
|
literally, that's the terminology
|
[15:56] pieterh
|
I tried to reduce the word count for this draft because it's hard enough already
|
[15:56] sustrik
|
so if your project is hosted under zeromq organisation at github
|
[15:57] sustrik
|
it has right to use zeromq name
|
[15:57] pieterh
|
meaning, if the community accepts it as a "zeromq" project
|
[15:57] sustrik
|
yeah
|
[15:57] pieterh
|
yes, it can make a website using the zeromq logo, and call itself "zeromq something"
|
[15:57] pieterh
|
which is precisely what we do
|
[15:57] sustrik
|
then 3 states that imatix has to approve that
|
[15:57] pieterh
|
no, iMatix has to approve other uses
|
[15:58] pieterh
|
ah, 3 is confusing, I'll have to fix that
|
[15:58] sustrik
|
yes, please
|
[15:58] pieterh
|
in fact I don't want any software product calling itself "zeromq" except packages of projects from the community
|
[15:58] pieterh
|
not imatix packages, note, anyone's packages
|
[15:58] pieterh
|
I have to go, bbl
|
[15:59] sustrik
|
see you
|
[15:59] pieterh
|
please email the list, I won't be back on irc for 3-4 hours
|
[16:01] lestrrat
|
I read (3) as "you need to ask iMatix to use zeromq-related name (anywhere)" (and went WTF?!) of course, I was skimming
|
[16:01] sustrik
|
the wording should much more clear
|
[16:02] sustrik
|
also, it transfers the governance of the trademarks to the zeromq github organisation admins
|
[16:02] lestrrat
|
it would be nice if that whole trademark thing had a layman's version along with the actual legal mumbo-jumbo
|
[16:02] sustrik
|
(of which you are one of iirc)
|
[16:03] sustrik
|
which in turn would mean making the zeromq github organisation process much more trasparent
|
[16:03] sustrik
|
yuck
|
[16:04] sustrik
|
also, tying the legal stuff (trademarks) to 3rd party (github) doesn't seem to be a good idea
|
[16:05] lestrrat
|
looks like zmq is in need of a real foundation/neutral org?
|
[16:06] sustrik
|
maybe
|
[16:06] sustrik
|
the problem is that whoever you pass the trademarks to
|
[16:06] sustrik
|
you still have to have a process to manage them
|
[16:09] lestrrat
|
just as a reference: the perl trademark stuff http://www.perlfoundation.org/perl_trademark
|
[16:10] lestrrat
|
and as a trivia, some random asshole filed to have the Perl trademark in Japan last year, and my organization (JPA) and Perl Foundation are jointly filing to get it repealed.
|
[16:11] sustrik
|
nice
|
[16:11] lestrrat
|
so again, I understand the need for trademarks and stuff ;)
|
[16:12] sustrik
|
yep, but as you see it's complex :)
|
[16:13] lestrrat
|
actually, come to think of it, have you guys already filed for the trademark yet? if so, where?
|
[16:13] lestrrat
|
where, as in what country?
|
[16:14] sustrik
|
nope, it's just trademark by acclamation
|
[16:15] sustrik
|
which, afaiu, means that you say "i own this trademark"
|
[16:15] sustrik
|
meaning that you claim the name
|
[16:15] lestrrat
|
but does that actually have an actual effect?
|
[16:15] sustrik
|
yes
|
[16:15] sustrik
|
but obviously, others may claim the same name
|
[16:16] sustrik
|
that's why you have *registered* trademarks
|
[16:16] lestrrat
|
I mean, can you go to court with it?
|
[16:16] lestrrat
|
aaah
|
[16:16] sustrik
|
i am not a lawyer though
|
[16:18] lestrrat
|
well, when/if you're going to register it in Japan, call me up. I should be able to help
|
[16:18] sustrik
|
ok
|
[16:19] lestrrat
|
on that note. bed &. thanks for putting up with my general pissiness
|
[16:20] sustrik
|
:)
|
[16:20] sustrik
|
good night
|
[17:58] jond
|
sustrik: you there
|
[19:25] michelp
|
finally getting to hack on some zmq! This is so awesome
|
[20:02] joelr
|
sustrik: did you say high water marking was a bad idea but you can't remove it for compatibility with prior versions?
|
[20:03] joelr
|
or was that pieterh
|
[20:17] joelr
|
hmm
|
[21:24] kdj
|
michelp: What are you doing with zmq?
|
[21:24] michelp
|
kdj, supercomputing :)
|
[21:25] michelp
|
working on a pythonic version of the 'xector' concept from The Connection Machine http://books.google.com/books?id=xg_yaoC6CNEC&lpg=PA33&ots=t_WvQyivrL&dq=xector%20connection%20machine&pg=PA34#v=onepage&q=xector%20connection%20machine&f=false
|
[21:27] michelp
|
although what i'm doing is more like a distributed hash table that looks like a dict or a set, than what the book there is talking about, but the differences are pretty minor
|
[21:31] kdj
|
Awesome
|
[21:37] michelp
|
the zmq code is like 10 lines tops, and i have a fully distributed data set, i didn't think it would be *that* easy
|
[21:43] Guthur
|
michelp, you should do it in a Lisp
|
[21:43] Guthur
|
just to be closer to spirit of CM
|
[21:43] Guthur
|
though also because Lisp is cool
|
[21:44] michelp
|
Guthur, it crossed my mind. I have been dipping into the lisp more lately
|
[21:44] michelp
|
it's been a while, i'm rusty :)
|
[21:44] Guthur
|
michelp, Scheme or Common Lisp
|
[21:46] michelp
|
lisp would definitely make it easier to ship s-expressions to worker nodes to crunch in parallel, data and programs being the same thing in lisp
|
[21:46] michelp
|
right now i'm shipping literal python code strings and eval'ing them :(
|
[21:47] Guthur
|
michelp, I implement something like this quite recently
|
[21:47] Guthur
|
to parallel a CL based testing framework
|
[21:47] michelp
|
it's pretty amazing to think that all this map and reduce hotness everyone is abuzz about now was a core part of this architecture in 1984
|
[21:48] Guthur
|
I defined a small DSL for my test cases, then send them to workers to process
|
[21:48] Guthur
|
the test cases were reasonable long running as they involved a number HTTP request/responses to a server, and taking ~25 secs each
|
[21:49] michelp
|
whoa nice. our functional tests take pretty long to
|
[21:49] michelp
|
too
|
[21:49] michelp
|
using that approach would probably save us some serious sitting around time
|
[21:50] Guthur
|
CL is brilliant for makings DSLs, and ZeroMQ is great for 'divide and conqueror'
|
[21:51] michelp
|
well after a little more spiking i might go that route
|
[21:52] michelp
|
the api for this thing will eventually just be REST, so the language it's implemented in is irrelevant, and I might was well pick the one most suited for the job
|
[22:17] Seta00
|
who's the maintainer of the C++ wrapper?
|
[22:21] Gambit--
|
hello people
|
[22:22] Gambit--
|
I'm testing out some pub/sub behaviors, and I noted that using the stock test cases in python - and also in my C code - if a tcp socket gets closed between a publisher and a subscriber (that is, the subscribers connection gets reset), and the subscriber reconnects, then the subscriber at that point forward receives two copies of every message.
|
[22:23] Gambit--
|
http://pastebin.com/JJ80vaUU has the sample code I'm working from.
|
[22:24] Gambit--
|
I've also validated this behavior in both 2.0, and also 2.1.7
|
[22:24] Gambit--
|
My question is - is this expected and what can I do to prevent this from occurring?
|
[22:29] Seta00
|
pieterh, the description of libzfl on github links to http://libzfun.zeromq.org, which doesn't exist.
|
[22:29] Seta00
|
pieterh, same with http://libzfl.zeromq.org/manual:libzfl#toc7 linking to http://libzap.zeromq.org/
|
[22:38] sustrik
|
joelr: nodoby said that as far as i am aware
|
[22:39] sustrik
|
maybe you've meant explicit identities?
|
[22:39] joelr
|
sustrik: so there's no conceptual problem with queuing up messages on the sending or receiving side?
|
[22:39] joelr
|
sustrik: yes, maybe that was it. explicit identities. the two things are very closely related, though, no?
|
[22:39] sustrik
|
nope
|
[22:39] sustrik
|
they get queued on both sides
|
[22:39] sustrik
|
depending on the capacity of link in between
|
[22:40] joelr
|
so what is the problem with explicit identities then?
|
[22:41] sustrik
|
it kind of introduces "persistent" messaging into fully transient system
|
[22:41] sustrik
|
it does so lousily of course
|
[22:41] joelr
|
hmm... i see
|
[22:42] joelr
|
sustrik: so how would you queue up messages for a particular disconnected subscriber without explicit identity?
|
[22:42] sustrik
|
you won't
|
[22:42] sustrik
|
that's why people don't want to have it dropped
|
[22:42] sustrik
|
and that's why it's staying
|
[22:43] sustrik
|
but in general, it's a bad idea
|
[22:43] joelr
|
sustrik: i don't understand why
|
[22:43] sustrik
|
you are going to loose messages anyway
|
[22:44] sustrik
|
and you put a burden on the peer to handle your resources forever
|
[22:44] joelr
|
sustrik: so are you are suggesting to fetch old messages using a timestamp or similar means, without relying on the system not to lose messages
|
[22:45] sustrik
|
the reasoning is going like this:
|
[22:46] sustrik
|
if you don't want the peer to fail bacause of OOM you have to set HWM
|
[22:46] sustrik
|
when you disconnect, the messages currently on fly are dropped
|
[22:46] sustrik
|
when the HWM is reached on the peer the messages are dropped as well
|
[22:47] sustrik
|
so, when you reconnect, you'll get a random sequence of messages
|
[22:47] joelr
|
I see now
|
[22:47] joelr
|
sustrik: thanks for the explanation!
|
[22:47] sustrik
|
np
|
[22:49] sustrik
|
in short, explicit identities are not honest
|
[22:49] sustrik
|
as they kind of offer guaranteed messaging
|
[22:49] sustrik
|
but in fact they don't
|
[22:50] sustrik
|
bye
|
[22:50] Seta00
|
.br :)
|
[23:40] Gambit--
|
I have a pub/sub question.
|
[23:41] Gambit--
|
If the publisher hasn't sent anything, the subscriber doesn't send anything either, correct?
|
[23:46] Toba
|
subscribers don't send.
|
[23:47] Gambit--
|
They send tcp acknowledgements.
|
[23:47] Gambit--
|
but I'm guessing no 0mq frames acknowledging receipt?
|
[23:48] Gambit--
|
there's an interesting side effect of this - the subscriber has no way of knowing if the other box just goes away.
|
[23:58] ncadou
|
regarding the pyzmq vs buildout and continuous integration problem of yesterday, i figured it out: http://nicolascadou.com/blog/2011/05/continuous-integration-on-a-zc-buildout-managed-project-with-pyzmq/
|