Hi,
Subscribing sends a message to the publisher. I believe you're hitting the
default high water mark, and subscription messages are getting dropped.
If I'm expecting lots of subscriptions, my rule of thumb is to set SNDHWM=0 on
the SUB socket and RCVHWM=0 on the PUB socket. This way the application will
sooner die than lose a subscription message.
Justin
On Mon, May 13, 2019, at 10:06 AM, Bekritsky, Benjamin via zeromq-dev wrote:
> I am using libzmq and setting up topics using binary data. In other words, my
> topic is the first 2 bytes of my message.
>
> I subscribe by setting a and b to the values I’m interested in:
> for (uint16_t i = a; i <= b; i++)
> {
> d = zmq_setsockopt(sub_socket, ZMQ_SUBSCRIBE, &i, 2);
> if (d)
> {
> printf ("E: subscription failed: %s\n", strerror (errno));
> return -1;
> }
> }
>
> My publisher publishes like this:
> string incoming_string = " this message";
> incoming_string.insert(0,1,i>>8);
> incoming_string.insert(0,1,i%256);
>
> int rc = zmq_send(pub_socket, incoming_string.c_str(),
> incoming_string.size(), 0);
>
> I can’t seem to subscribe to more than 1000 topics (values 0x0000 – 0x03e7).
> From what I understand, thousands of topics should be available.
>
> Any guidance would be helpful.
>
> Thanks,
> Benjy
>
> Benjamin Bekritsky
> c/o Zebra Technologies
> 2 Negev St. (Motorola Building)
> 4th Floor
> Airport City 7019900
> Israel
>
>
>
> - CONFIDENTIAL-
>
> This email and any files transmitted with it are confidential, and may also
> be legally privileged. If you are not the intended recipient, you may not
> review, use, copy, or distribute this message. If you receive this email in
> error, please notify the sender immediately by reply email and then delete
> this email.
>
> - CONFIDENTIAL-
> This email and any files transmitted with it are confidential, and may also
> be legally privileged. If you are not the intended recipient, you may not
> review, use, copy, or distribute this message. If you receive this email in
> error, please notify the sender immediately by reply email and then delete
> this email.
> _______________________________________________
> zeromq-dev mailing list
> [email protected]
> https://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
_______________________________________________
zeromq-dev mailing list
[email protected]
https://lists.zeromq.org/mailman/listinfo/zeromq-dev