[
https://issues.apache.org/jira/browse/DIRMINA-1147?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan Valliere updated DIRMINA-1147:
---------------------------------------
Description:
*THIS IS A MAJOR ISSUE; I've seen it dozens of times today occurring during an
event write and the concurrent send/write from another thread.*
Write interest is not concurrent and full of issues relating to the
synchronization between the backlog queue and the atomic flag write interest.
It is possible to check for a queue to be not full, and add to the queue
whereas the queue is emptied and write interest is disabled before the
additional item is added to the queue.
What happens is 2-3 atomic operations occur and cannot/do not check to see
whether the state changed between the time of assertion and subsequent action.
The scheduledFlush queue also suffers from the same concurrency problem.
Events may be added to the queue after the scheduledFlush operation has removed
it from the scheduledFlush queue and after queue is empited causing items to be
added to the backlog but not trigger the scheduledFlush queue or interest.
was:
*THIS IS A MAJOR ISSUE; I've seen it dozens of times today occurring during an
event write and the send/write from another thread.*
Write interest is not concurrent and full of issues relating to the
synchronization between the backlog queue and the atomic flag write interest.
It is possible to check for a queue to be not full, and add to the queue
whereas the queue is emptied and write interest is disabled before the
additional item is added to the queue.
What happens is 2-3 atomic operations occur and cannot/do not check to see
whether the state changed between the time of assertion and subsequent action.
The scheduledFlush queue also suffers from the same concurrency problem.
Events may be added to the queue after the scheduledFlush operation has removed
it from the scheduledFlush queue and after queue is empited causing items to be
added to the backlog but not trigger the scheduledFlush queue or interest.
> Concurrency problem on write interest
> -------------------------------------
>
> Key: DIRMINA-1147
> URL: https://issues.apache.org/jira/browse/DIRMINA-1147
> Project: MINA
> Issue Type: Bug
> Components: Transport
> Affects Versions: 2.1.4
> Environment: AdoptJDK 11
> Reporter: Jonathan Valliere
> Assignee: Jonathan Valliere
> Priority: Critical
> Fix For: 2.2.0
>
>
> *THIS IS A MAJOR ISSUE; I've seen it dozens of times today occurring during
> an event write and the concurrent send/write from another thread.*
> Write interest is not concurrent and full of issues relating to the
> synchronization between the backlog queue and the atomic flag write interest.
> It is possible to check for a queue to be not full, and add to the queue
> whereas the queue is emptied and write interest is disabled before the
> additional item is added to the queue.
> What happens is 2-3 atomic operations occur and cannot/do not check to see
> whether the state changed between the time of assertion and subsequent action.
> The scheduledFlush queue also suffers from the same concurrency problem.
> Events may be added to the queue after the scheduledFlush operation has
> removed it from the scheduledFlush queue and after queue is empited causing
> items to be added to the backlog but not trigger the scheduledFlush queue or
> interest.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]