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

Alexander Lapin updated IGNITE-16892:
-------------------------------------
    Description: 
1. Lock management logic will be introduced in IGNITE-17255

2. Lock storages will be introduced in  IGNITE-15932

Given ticket is a sort of a bridge between 1 and 2 that will adjust LockManager 
methods along with corresponding implementation with LockMode parameter that 
will clarify whether lock is
 * Exclusive
 * Shared
 * IntentExclusive
 * IntentShared
 * SharedAndIntentExclusive

{code:java}
CompletableFuture<Lock> acquire(UUID txId, <?> lockName LockMode lockMode);

void release(Object key, UUID txId, Lock lock, LockMode lockMode) throws 
LockException;

Iterator<Lock> locks(UUID txId) {code}
lockName is a sort of lock locator, that either:
 * RowId for data storage locks.
 * UUID or similar to table/index commonly intent locks.
 * Index keys.

h3. Upd 

For the purposes of unblocking 

  was:
1. Lock management logic will be introduced in IGNITE-17255

2. Lock storages will be introduced in  IGNITE-15932

Given ticket is a sort of a bridge between 1 and 2 that will adjust LockManager 
methods along with corresponding implementation with LockMode parameter that 
will clarify whether lock is
 * Exclusive
 * Shared
 * IntentExclusive
 * IntentShared
 * SharedAndIntentExclusive

{code:java}
CompletableFuture<Lock> acquire(UUID txId, <?> lockName LockMode lockMode);

void release(Object key, UUID txId, Lock lock, LockMode lockMode) throws 
LockException;

Iterator<Lock> locks(UUID txId) {code}
lockName is a sort of lock locator, that either:
 * RowId for data storage locks.
 * UUID or similar to table/index commonly intent locks.
 * Index keys.


> Update lock manager in order to soupport S, X and I locks
> ---------------------------------------------------------
>
>                 Key: IGNITE-16892
>                 URL: https://issues.apache.org/jira/browse/IGNITE-16892
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Alexander Lapin
>            Assignee: Alexander Lapin
>            Priority: Major
>              Labels: ignite-3, transaction3_rw
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> 1. Lock management logic will be introduced in IGNITE-17255
> 2. Lock storages will be introduced in  IGNITE-15932
> Given ticket is a sort of a bridge between 1 and 2 that will adjust 
> LockManager methods along with corresponding implementation with LockMode 
> parameter that will clarify whether lock is
>  * Exclusive
>  * Shared
>  * IntentExclusive
>  * IntentShared
>  * SharedAndIntentExclusive
> {code:java}
> CompletableFuture<Lock> acquire(UUID txId, <?> lockName LockMode lockMode);
> void release(Object key, UUID txId, Lock lock, LockMode lockMode) throws 
> LockException;
> Iterator<Lock> locks(UUID txId) {code}
> lockName is a sort of lock locator, that either:
>  * RowId for data storage locks.
>  * UUID or similar to table/index commonly intent locks.
>  * Index keys.
> h3. Upd 
> For the purposes of unblocking 



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

Reply via email to