Why is deadLetterPolicy attribute in the ConsumerConfigurationData class marked as transient? #23076
Replies: 2 comments
-
I see that this change was introduced in this PR which aimed to integrate SpotBugs in the pulsar-client module. Considering that the If some one can confirm this, I can submit a PR with the changes to make the |
Beta Was this translation helpful? Give feedback.
-
@codelipenghui Can you comment on this, as the aforementioned PR was raised by you? |
Beta Was this translation helpful? Give feedback.
-
As a user of Apache Pulsar, I have been utilising
PulsarSpout
exposed by the pulsar-storm adaptor within an Apache Storm topology for message consumption from Pulsar topics. Recently, we encountered an issue where thedeadLetterPolicy
that we set on thePulsarSpout
seems to be lost when the topology is started. Upon investigation, we found that this is due to thedeadLetterPolicy
attribute inConsumerConfigurationData
being marked as transient.Due to Storm topologies being serialised and transferred from the nimbus to workers for execution, the transient nature of this attribute results in the loss of our specified configuration. I was wondering if anyone knows why this attribute needs to be transient?
Ideally implementing the
java.io.Serializable
interface in theDeadLetterPolicy
class should eliminate the need for the transient keyword. If this is accurate and there is no other reason for it, then I am prepared to submit a pull request for the same.Beta Was this translation helpful? Give feedback.
All reactions