Yunze Xu

Results 377 comments of Yunze Xu

> If we'd completely remove the cache, there would be more duplicate TopicName and NamespaceName instances and more duplicate string instance. For very long tenant, namespace and topic names, that...

Updated test results to compare it with the legacy implementation in https://github.com/BewareMyPower/pulsar/actions/runs/15872434081/job/44752001433?pr=45 ``` TopicNameBenchmark.testConstruct thrpt 258.932 ops/s TopicNameBenchmark.testConstructWithNamespaceInitialization thrpt 158.876 ops/s TopicNameBenchmark.testLegacyConstruct thrpt 44.290 ops/s TopicNameBenchmark.testReadFromCache thrpt 340.613 ops/s ```...

@lhotari @codelipenghui @nodece @dao-jun @poorbarcode @coderzc This PR is now ready to review, PTAL

> If we'd completely remove the cache, I've read more code and changed my idea a bit. Caching could be helpful in many cases. But how to establish the cache...

Regarding this PR, I'm going to revert other changes and only leaving the improvement on `TopicName`'s constructor itself. Exposing a public method will be easier for the downstream to maintain...

If you're hitting the error in the code block you've shared, it means the send receipt was not received within the `operation_timeout`, which represents a timeout for any RPC (30...

We might not have consensus about safety. When I mentioned "safe", I meant it didn't break anything, but it seems to mean "exactly-once" delivery in your context. If your retry...

It's recommended to build via vcpkg so that the dependency version could be consistent with the tests. Boost might introduce breaking changes so that it's hard to maintain code compatibility...

> They always use other packages as dependencies. Sorry I don't understand it. Did you mean your project depends on Boost 1.87 so that the version is pinned? BTW, it's...

Yes, but I'm busy recently. It should not be a hard job, let me try today.