[ 
https://issues.apache.org/jira/browse/IGNITE-24962?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexey Scherbakov updated IGNITE-24962:
---------------------------------------
    Description: 
Current txn configuration, described in {*}TransactionConfigurationSchema{*}, 
has multiple flaws.
It exposes too much internal implementation details to a user without actual 
need, which greatly complicates txn protocol evolvement in the future.
Some properties are misspelled, some are useless in a public configuration.
I propose to refactor it in the following way:
1. abandonedCheckTs - move to hidden properties. It's internal and might be 
removed in the future.
2. readOnlyTimeout -> readOnlyTimeoutMillis
3. readWriteTimeout -> readWriteTimeoutMillis
4. attemptsObtainLock - remove and make hardcoded, later move to polymorphic 
configuration related to a specific deadlock prevention policy.
5. txnResourceTtl -> temporary move to hidden properties, later refactor to 
imply better usability.
6. rpcTimeout - remove and make hardcoded. It's internal.
7. deadlockPreventionPolicy - remove and make hardcoded. later move to 
polymorphic configuration related to a specific deadlock prevention policy.

This is a breaking change. I assume we will have a configuration framework 
adjustments to handle this properly.

Documentation should be adjusted according to this change.

  was:
Current txn configuration, described in {*}TransactionConfigurationSchema{*}, 
has multiple flaws.
It exposes too much internal implementation details to a user without actual 
need, which greatly complicates txn protocol evolment in the future.
Some properties are misspelled, some are useless in a public configuration.
I propose to refactor it in the following way:
1. abandonedCheckTs - move to hidden properties. It's internal and might be 
removed in the future.
2. readOnlyTimeout -> readOnlyTimeoutMillis
3. readWriteTimeout -> readWriteTimeoutMillis
4. attemptsObtainLock - remove and make hardcoded, later move to polymorphic 
configuration related to a specific deadlock prevention policy.
5. txnResourceTtl -> temporary move to hidden properties, later refactor to 
imply better usability.
6. rpcTimeout - remove and make hardcoded. It's internal.
7. deadlockPreventionPolicy - remove and make hardcoded. later move to 
polymorphic configuration related to a specific deadlock prevention policy.

This is a breaking change. I assume we will have a configuration framework 
adjustments to handle this properly.

Documentation should be adjusted according to this change.


> Refactor public transaction configuration
> -----------------------------------------
>
>                 Key: IGNITE-24962
>                 URL: https://issues.apache.org/jira/browse/IGNITE-24962
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Alexey Scherbakov
>            Assignee: Alexey Scherbakov
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.1
>
>
> Current txn configuration, described in {*}TransactionConfigurationSchema{*}, 
> has multiple flaws.
> It exposes too much internal implementation details to a user without actual 
> need, which greatly complicates txn protocol evolvement in the future.
> Some properties are misspelled, some are useless in a public configuration.
> I propose to refactor it in the following way:
> 1. abandonedCheckTs - move to hidden properties. It's internal and might be 
> removed in the future.
> 2. readOnlyTimeout -> readOnlyTimeoutMillis
> 3. readWriteTimeout -> readWriteTimeoutMillis
> 4. attemptsObtainLock - remove and make hardcoded, later move to polymorphic 
> configuration related to a specific deadlock prevention policy.
> 5. txnResourceTtl -> temporary move to hidden properties, later refactor to 
> imply better usability.
> 6. rpcTimeout - remove and make hardcoded. It's internal.
> 7. deadlockPreventionPolicy - remove and make hardcoded. later move to 
> polymorphic configuration related to a specific deadlock prevention policy.
> This is a breaking change. I assume we will have a configuration framework 
> adjustments to handle this properly.
> Documentation should be adjusted according to this change.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to