Aleksey Plekhanov created IGNITE-21183:
------------------------------------------

             Summary: Thin client: Avoid blocking of client-connector threads 
by transactional operations
                 Key: IGNITE-21183
                 URL: https://issues.apache.org/jira/browse/IGNITE-21183
             Project: Ignite
          Issue Type: Improvement
          Components: thin client
            Reporter: Aleksey Plekhanov
            Assignee: Aleksey Plekhanov


Currently client-connector threads (workers for thin-client operations) can be 
blocked for a long time by cache operation within transaction. If there is not 
enough threads configured it can lead to deadlocks. For example, if we have 
{{n}} threads and {{n+1}} clients which start the pessimistic transaction and 
try to modify the same key, first client lock the key, other {{n}} clients wait 
on locked key and hold the whole thread put by blocking operations.  
Commit/rollback from the first client can never be proceeded, since all threads 
are occupied, and threads can't be released, since they are waiting for 
commit/rollback from the first client.



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

Reply via email to