2018-10-06 23:05:26 UTC - dba: Hi @Sijie Guo and @Sanjeev Kulkarni and thanks
for responding.
In regards to "what is missing from the doc": It would be helpful with an
overview of all 34 commands, showing from what protocol version they are
supported and maybe also if it is a "simple command" or "payload command". I
know that some can be guessed by looking at PulsarApi.proto, but it would be
nice with a list.
It would also be nice with more details like max length of strings and their
allowed characters.
A minor thing: The docs are using the old topic format with "property" and
"cluster".
Anyway, I am now trying to setup a producer:
root@87ac26b593a8:/pulsar/bin# ./pulsar-admin tenants list public sample
root@87ac26b593a8:/pulsar/bin# ./pulsar-admin namespaces create public/mytest
root@87ac26b593a8:/pulsar/bin# ./pulsar-admin namespaces list public
public/default
public/functions
public/mytest
root@87ac26b593a8:/pulsar/bin# ./pulsar-admin namespaces permissions
public/mytest
{ }
root@87ac26b593a8:/pulsar/bin# ./pulsar-admin namespaces policies public/mytest
{
"auth_policies" : {
"namespace_auth" : { },
"destination_auth" : { }
},
"replication_clusters" : [ ],
"bundles" : {
"boundaries" : [ "0x00000000", "0x40000000", "0x80000000", "0xc0000000",
"0xffffffff" ],
"numBundles" : 4
},
"backlog_quota_map" : { },
"clusterDispatchRate" : { },
"subscriptionDispatchRate" : { },
"latency_stats_sample_rate" : { },
"message_ttl_in_seconds" : 0,
"deleted" : false,
"encryption_required" : false,
"subscription_auth_mode" : "None",
"max_producers_per_topic" : 0,
"max_consumers_per_topic" : 0,
"max_consumers_per_subscription" : 0,
"compaction_threshold" : 0,
"offload_threshold" : -1
}
When sending CommandProducer with topic "<persistent://public/mytest/cooltest>"
I get:
Message: Namespace bundle for topic (<persistent://public/mytest/cooltest>) not
served by this instance. Please redo the lookup. Request is denied:
namespace=public/mytest
I am running Pulsar 2.1.1 as a standalone docker container and my
CommandConnect is without authentication and is accepted (protocol version = 6).
Any idea what I am doing wrong? I should mention that I am using protobuf v3
and hoping that's not part of the problem.
----
2018-10-06 23:13:06 UTC - Matteo Merli: @dba The first step is to perform the
service discovery (with the `CommandLookupTopic`
<http://pulsar.apache.org/docs/en/develop-binary-protocol/#topic-lookup> ) to
ensure the brokers acquire ownership of the topic.
----
2018-10-06 23:14:32 UTC - Matteo Merli: In any case I would encourage to try to
wrap the existing C++ library from C#. I believe that would be a much easier
task and, once one figures out the wrapping mechanism, it would get to 100% of
features very easily.
----
2018-10-07 02:34:35 UTC - Shalin: The broker keeps running out of direct memory
: `OutOfDirectMemoryError`. The topic storage size is almost empty, there is no
backlog. Is there some kind of garbage collection issue?. Occurs only for
larger messages.
----
2018-10-07 02:43:14 UTC - Shalin: The max direct memory is set to `1g`
----
2018-10-07 07:20:09 UTC - dba: @Matteo Merli I did read about the LookupTopic
command, but since I am running a standalone Pulsar, I assumed that was not
needed (yet)? I get what you are saying about wrapping C++, but I am going for
a client written 100% in C#.
----