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)