Let me try a different approach. Please see the definition of a Pulsar 
Transaction - https://pulsar.apache.org/docs/3.1.x/transactions/

If messages that are uncommitted are consumed that definition is no longer 
true. If breaking the definition is going to be allowed to a consumer then the 
producer who may abort the transaction ought to have given permission.

You never know what content is in that transaction and it might be aborted at a 
user’s choice for any reason.

If Kafka follows a different policy with transactions then perhaps you should 
look into Kafka on Pulsar / Starlight for Kafka protocol handlers.

If we want Pulsar to allow for Kafka style then let’s be clear about the 
implications along with expectations.

Best,
Dave

Sent from my iPhone

> On Sep 18, 2023, at 6:41 PM, Xiangying Meng <xiangy...@apache.org> wrote:
> 
> Hi Dave,
> 
> I greatly appreciate your perspective, yet it leaves me with some
> uncertainties that I am eager to address. Why would the introduction
> of isolation levels constitute an insecure action?
> 
>> I think if this proceeds then the scope needs to be expanded to 
>> producers/admins needing to proactively allow transactions to be consumed 
>> uncommitted.
> 
> We are merely presenting an option to the users. The notion of
> establishing isolation levels for producers and administrators is, in
> my view, devoid of necessity, and I am not inclined to implement it,
> for it is devoid of substance.
> 
> Sincerely,
> Xiangying
> 
>> On Mon, Sep 18, 2023 at 10:58 PM Dave Fisher <wave4d...@comcast.net> wrote:
>> 
>> Thanks. So, this is to support exfiltration of uncommitted transaction data? 
>> This is IMO wrong and a security risk.
>> 
>> Pulsar already supports CDC through IO Connectors.
>> 
>> Kafka can be wrong about these isolation levels.
>> 
>> There is really no information in those Paimon issues. How is Paimon’s 
>> ability to support Pulsar broken by this edge case?
>> 
>> Best,
>> Dave
>> 
>> Sent from my iPhone
>> 
>>>> On Sep 18, 2023, at 7:26 AM, Xiangying Meng <xiangy...@apache.org> wrote:
>>> 
>>> Hi Dave,
>>> This is an external request. Paimon has added support for Kafka but
>>> has not yet incorporated support for Pulsar. Therefore, the Paimon
>>> community desires to integrate Pulsar.
>>> 
>>> Furthermore, when integrating Pulsar into Paimon, it is desired to
>>> enable the ability to configure isolation levels, similar to Kafka, to
>>> support reading uncommitted transaction logs.
>>> 
>>> Additional context can be found in the following link:
>>> https://github.com/apache/incubator-paimon/issues/765
>>> 
>>> Sincerely,
>>> Xiangying
>>> 
>>>> On Mon, Sep 18, 2023 at 10:30 AM Dave Fisher <wave4d...@comcast.net> wrote:
>>>> 
>>>> My concern is that this pip allows consumers to change the processing 
>>>> rules for transactions in ways that a producer might find unexpected.
>>>> 
>>>> I think if this proceeds then the scope needs to be expanded to 
>>>> producers/admins needing to proactively allow transactions to be consumed 
>>>> uncommitted.
>>>> 
>>>> I am also interested in the use case that motivates this change.
>>>> 
>>>> Best,
>>>> Dave
>>>> 
>>>> Sent from my iPhone
>>>> 
>>>>>> On Sep 17, 2023, at 8:50 AM, hzh0425 <hzh0...@apache.org> wrote:
>>>>> 
>>>>> Hi, all
>>>>> 
>>>>> This PR contributed to pip 298: 
>>>>> https://github.com/apache/pulsar/pull/21114
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> This pip is to implement Read Committed and Read Uncommitted isolation 
>>>>> levels for Pulsar transactions, allow consumers to configure isolation 
>>>>> levels during the building process.
>>>>> 
>>>>> For more details, please refer to pip-298.md
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> I hope everyone can help review and discuss this pip and enter the 
>>>>> discuss stage.
>>>>> 
>>>>> Thanks
>>>>> Zhangheng Huang
>>>> 
>> 

Reply via email to