I agree that the terminology is confusing. On a practical note, that
confusion likely caused this bug [0].

> I'd like to say "a partitioned topic is a topic that consists of
> multiple non-partitioned topics". It's better not to use the "internal
> topic" concept.

+1

In general, I think the equivocation for partitioned topic and
non-partitioned topic is meant to simplify the abstraction for users.
Partitioned topics are generally thought of as a single topic.
However, advanced use cases can leverage the fact that a partitioned
topic is composed of non-partitioned topics. That being said, when we
document what a partitioned topic is, we should say that it is made of
non-partitioned topics.

In looking at your GitHub issue, I agree that the method names are not
ideal for the TopicName class. We can certainly deprecate methods and
add new ones.

One additional problem is that we have too many string equality checks
to determine if one topic is equal to another. There are many method
parameters in the Pulsar code base that are named "topicName" and are
of type String. These checks led to this bug [0].

I think it would be better to use the TopicName object more and to
rely on the TopicName methods to implement equality/comparison checks.

Thanks,
Michael

[0] https://github.com/apache/pulsar/pull/20392

Further, in pulsar, a "topic name" can be either a partitioned or a
non partitioned topic.


On Sun, Jun 25, 2023 at 8:13 AM Yunze Xu <x...@apache.org> wrote:
>
> I'd like to say "a partitioned topic is a topic that consists of
> multiple non-partitioned topics". It's better not to use the "internal
> topic" concept.
>
> Thanks,
> Yunze
>
> On Sun, Jun 25, 2023 at 4:31 PM Joo Hyuk Kim <beansk...@gmail.com> wrote:
> >
> > Hi community:
> >
> > Currently, it seems like there is no good definition of what "partitioned
> > topic" and "non-partitioned topic" mean and some places topic
> > partition and internal
> > topic interchangeably.
> >
> > I would like to propose to vote (or discuss) to come up with solid
> > definition of what composes "partitioned topic", then apply to pulsar-site,
> > javadoc, and TopicName API accordingly.
> >
> > Let me know what you think
> >
> >
> > # ISSUE https://github.com/apache/pulsar/issues/20622  Regards Joo Hyuk,
> > Kim (Vince)

Reply via email to