<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general">
    <title>gmane.comp.lang.ruby.posix-mq.general</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/94"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/93"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/92"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/91"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/90"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/89"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/88"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/87"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/86"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/85"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/84"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/83"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/82"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/81"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/80"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/79"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/78"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/77"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/76"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/75"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/94">
    <title>Re: Listing existing queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/94</link>
    <description>&lt;pre&gt;2011/6/21 Eric Wong &amp;lt;normalperson&amp;lt; at &amp;gt;yhbt.net&amp;gt;:

Sure :)



And sometimes never happens :)

Thanks a lot.

&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-06-22T20:09:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/93">
    <title>Re: Listing existing queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/93</link>
    <description>&lt;pre&gt;
Start using MQ more and get more people to use software that uses it.

Also go to the Linux Standards Base and try to get it in the new
Filesystem Hierchy Standard (to be finalized/released soon).

Try to get it into POSIX.

Also start talking to major distro maintainers/vendors to move towards
this.

Standardization is hard, and takes many years :)

&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-06-21T18:24:49</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/92">
    <title>Re: Listing existing queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/92</link>
    <description>&lt;pre&gt;2011/3/3 Eric Wong &amp;lt;normalperson&amp;lt; at &amp;gt;yhbt.net&amp;gt;:

Hi Eric, I continue with same problem (of course, since there is not
yet standarization for mounting Posix MQ's in a specific path).

So, what can we do in order to "impact" in the standarizing of Posix
MQ mount mount? :)

&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-06-21T13:03:37</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/91">
    <title>Re: examples of POSIX message queue usage in the wild?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/91</link>
    <description>&lt;pre&gt;2011/3/3 Eric Wong &amp;lt;normalperson&amp;lt; at &amp;gt;yhbt.net&amp;gt;:

I do know that a comercial SMPP Gateway (SMS stuff) uses posix message
queues under Linux. Sure (as we use it in my company).
I prefer not to say the product name as the software internals are not public.

Also, if you wait a bit I am coding a SIP server in Ruby which makes
*extensive* usage of your posix_mq gem :)


&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-03-03T22:05:52</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/90">
    <title>Re: Listing existing queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/90</link>
    <description>&lt;pre&gt;
The standard would be a filesystem mount point.  Things like /tmp/ and
/home/ are already more/less standardized nowadays.

Linux (following Plan 9's (and Unix's) lead that "everything is a file")
is already moving more and more things into the filesystem or file-like
features (signalfd/timerfd/eventfd) and avoiding specialized APIs for
signals/timers/events.


My personal preference is smaller APIs and more reuse of existing ones
whenever possible.

&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-03-03T22:02:14</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/89">
    <title>Re: Listing existing queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/89</link>
    <description>&lt;pre&gt;2011/3/3 Eric Wong &amp;lt;normalperson&amp;lt; at &amp;gt;yhbt.net&amp;gt;:

Not sure if I understand you. Do you mean that, hopefully in a future
all the Linux/BDS systems will mount posix mqueues in the filesystem?
Some Linux kernels come without support for posix mq (not compiled).
Anyhow, assuming posix mq was widely adopted and extended, how could
we be sure that all the systems would use the same mount point?

Maybe I miss something, but I still think that a simple API funcion
"mq_list" which returns an array of char* representing each existing
mqueue name would be easier.

Cheers.

&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-03-03T21:49:00</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/88">
    <title>examples of POSIX message queue usage in the wild?</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/88</link>
    <description>&lt;pre&gt;Just wondering if there is any reasonably well known software that uses
POSIX message queues .  It doesn't matter what language it is, I haven't
encountered anything other than my own experiments[1] really.


[1] http://mmq.bogomips.org/ + http://bogomips.org/mmq.git (C, not Ruby)

&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-03-03T21:43:50</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/87">
    <title>Re: Listing existing queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/87</link>
    <description>&lt;pre&gt;
Yes.  However given the small number of POSIX message queue users and
systems supporting it, I still see the feature as being in the early
adopter phase and still has room to standardize on using the filesystem
like Linux.

And being early adopters of POSIX message queues, we (Ruby POSIX_MQ
users/developers) have some ability to impact the standardizing of
listing queues via the filesystem :)

Another thing I really, really like is that mq descriptors are mapped to
file descriptors in FreeBSD and Linux, so hopefully other kernel
implementers follow their lead and make it easy to poll()/select() on.

&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-03-03T21:39:11</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/86">
    <title>Re: Listing existing queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/86</link>
    <description>&lt;pre&gt;2011/3/2 Eric Wong &amp;lt;normalperson&amp;lt; at &amp;gt;yhbt.net&amp;gt;:

The problem is that if you provide a software that others can download
and use in their computers, you can not rely on the existence of the
filesystem approach :(

&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-03-03T05:08:37</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/85">
    <title>Re: Listing existing queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/85</link>
    <description>&lt;pre&gt;
Nothing that I know of, I do prefer the filesystem approach of Linux as
opposed to having a specialized API, though.

&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-03-02T19:38:15</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/84">
    <title>Listing existing queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/84</link>
    <description>&lt;pre&gt;Hi, is there any way to list the existing posix message queues? I mean
without habing to mount the posix mq filesystem.
I've not found how to do it with the C API provide by posix mq.

Thanks.

&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-03-02T12:35:05</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/83">
    <title>Re: [ANN] posix_mq 1.0.0 - kinder,gentler message queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/83</link>
    <description>&lt;pre&gt;2011/3/1 Eric Wong &amp;lt;normalperson&amp;lt; at &amp;gt;yhbt.net&amp;gt;:

I was waiting for this release for upgrading my gem:

   https://github.com/ibc/em-posixmq/commit/87855f4efcc88ca140770e751bd80df0b9262b14

:)

&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-03-01T22:56:32</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/82">
    <title>[ANN] posix_mq 1.0.0 - kinder, gentler message queues</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/82</link>
    <description>&lt;pre&gt;POSIX message queues allow local processes to exchange data in the form
of messages.  This API is distinct from that provided by System V
message queues, but provides similar functionality.

* http://bogomips.org/ruby_posix_mq/
* ruby.posix.mq&amp;lt; at &amp;gt;librelist.com
* git://bogomips.org/ruby_posix_mq.git

Changes:

There is one backwards-incompatible API change:

  POSIX_MQ#send returns +true+ on success instead of +nil+
  for consistency with POSIX_MQ#trysend.

This release adds the POSIX_MQ#trysend, POSIX_MQ#tryreceive and
POSIX_MQ#tryshift interfaces to avoid exceptions on common
EAGAIN errors for users of non-blocking queues.

Bugfixes: non-blocking behavior changes to a shared descriptor
in a different process are reflected immediately in the child
(this won't fix race conditions in your code, however).
Minor bugfixes for posix-mq-rb(1) and quieted warnings for
1.9.3dev.

&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-03-01T09:21:44</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/81">
    <title>Re: [RFC] try* interfaces in posix_mq 0.8.0pre</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/81</link>
    <description>&lt;pre&gt;
I actually considered doing something with POSIX_MQ#&amp;lt;&amp;lt;, but then I
realized people would expect to use it like an Array or Queue and
chain messages to it:

   mq &amp;lt;&amp;lt; "FOO" &amp;lt;&amp;lt; "bar"

They'd still get an exception if it returned anything other than the
mq object since the &amp;lt;&amp;lt; fails on symbols/nil/false.

I considered an interface like this that would work like try/catch:

   mq.try do
     mq &amp;lt;&amp;lt; "FOO" &amp;lt;&amp;lt; "bar"
   end

But there's no telling at which point ("FOO" or "bar") the pushing
failed, either.   So I think &amp;lt;&amp;lt; is really only good for people doing
blocking mq_send() (which I mainly use myself).

Thanks for the feedback!
&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-02-27T23:51:50</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/80">
    <title>[RFC] try* interfaces in posix_mq 0.8.0pre</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/80</link>
    <description>&lt;pre&gt;2011/2/27 Eric Wong &amp;lt;normalperson&amp;lt; at &amp;gt;yhbt.net&amp;gt;:

It looks just correct IMHO. Just one question: how about &amp;lt;&amp;lt; method?
Currently it behaves as POSIX_MQ#send method (raises in non-blocking
mode id it cannot write) but it returns the POSIX_MQ instance itself
when success. I suggest that it could return true on success (as you
suggest for send method).
However it could also possible that &amp;lt;&amp;lt; would behave as trysend
(returning true/false), but it would break backward compatiiblity.



Sure.



I don't check it as for now it doesn't make sense (nil says nothing,
and I already rescue the possible exceptions).



Regards.

--
Iñaki Baz Castillo
&amp;lt;ibc&amp;lt; at &amp;gt;aliax.net&amp;gt;
&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-02-27T23:23:02</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/79">
    <title>Re: [RFC] try* interfaces in posix_mq 0.8.0pre</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/79</link>
    <description>&lt;pre&gt;
The gem is installable via "gem install --pre posix_mq" from
RubyGemms.org


I use "make gem" to generate teh manifest and gem in one go.

&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-02-27T22:27:08</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/78">
    <title>Re: [RFC] try* interfaces in posix_mq 0.8.0pre</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/78</link>
    <description>&lt;pre&gt;2011/2/27 Iñaki Baz Castillo &amp;lt;ibc&amp;lt; at &amp;gt;aliax.net&amp;gt;:

Apart from these temporal issues I've tested tryreceive and trysend
and they work well (as expected).

&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-02-27T16:15:06</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/77">
    <title>Re: [RFC] try* interfaces in posix_mq 0.8.0pre</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/77</link>
    <description>&lt;pre&gt;2011/2/27 Iñaki Baz Castillo &amp;lt;ibc&amp;lt; at &amp;gt;aliax.net&amp;gt;:

Hi Eric, I've cloned your repo and want to test it by building and
installing the gem but have found various issues:

- File .manifest doesn't exist (touch .manifest does the work).
- gemspec doesn't include lib/posix_mq.rb so such file is not
installed and the gem cannot be loaded.

&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-02-27T15:01:20</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/76">
    <title>Re: [RFC] try* interfaces in posix_mq 0.8.0pre</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/76</link>
    <description>&lt;pre&gt;2011/2/27 Eric Wong &amp;lt;normalperson&amp;lt; at &amp;gt;yhbt.net&amp;gt;:

Hi Eric, nice addition. In my benchmarks raising/rescuing exception is
really expensive. When a Ruby server gets congested and starts
raising/rescuing exceptions things become even worse. So I strongly
agree with your new features (similar to Gio in Unicorn, right?) :)

I will test it ASAP and comment here.



&lt;/pre&gt;</description>
    <dc:creator>Iñaki Baz Castillo</dc:creator>
    <dc:date>2011-02-27T14:44:07</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/75">
    <title>[RFC] try* interfaces in posix_mq 0.8.0pre</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/75</link>
    <description>&lt;pre&gt;I just pushed this out to RubyGems.org (and ruby_posix_mq.git).
Let us know what you think, thanks!

  posix_mq 0.8.0pre - kinder, gentler and less exceptional

  This adds trysend, tryreceive, and tryshift interfaces to avoid
  exceptions on common EAGAIN errors for non-blocking users.  EAGAIN
  during non-blocking messages is common when there are multiple
  readers/writer threads/processes working on the same queue.

  trysend is like send, except it returns true for success and false for
  EAGAIN.  send (still) returns nil, which I now consider a mistake but
  won't change until post-1.0...

  tryreceive and tryshift are like receive and shift respectively,
  but they return nil for EAGAIN and the same return values
  for their non-shift variants.

  None of these methods call mq_setattr() beforehand to set the
  non-blocking flag, it assumes the user set it once before they were ever
  called and never changes it.  Checking/setting the non-blocking flag
  every time is needless overhead and still subjec&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-02-27T11:26:12</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/74">
    <title>[ANN] posix_mq 0.7.0 - cleanups and portability fixes</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.ruby.posix-mq.general/74</link>
    <description>&lt;pre&gt;POSIX message queues allow local processes to exchange data in the form
of messages.  This API is distinct from that provided by System V
message queues, but provides similar functionality.

* http://bogomips.org/ruby_posix_mq/
* ruby.posix.mq&amp;lt; at &amp;gt;librelist.com
* git://bogomips.org/ruby_posix_mq.git

Changes:

This release now works for systems other than Linux and FreeBSD
that support POSIX message queues.  This is usable for systems
without mq_timedsend() or mq_timedreceive() but with the
non-timed variants (timeouts wont work).

Thanks to Tadeusz Bochan for testing.

Ruby posix_mq is now dual-licensed under the GPLv2 (as well as the
preferred LGPLv3) for compatibility with existing GPLv2-only code.

&lt;/pre&gt;</description>
    <dc:creator>Eric Wong</dc:creator>
    <dc:date>2011-02-24T00:38:54</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.comp.lang.ruby.posix-mq.general">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.lang.ruby.posix-mq.general</link>
  </textinput>
</rdf:RDF>

