Uploaded image for project: 'MINA'
  1. MINA
  2. DIRMINA-651

Data Race in org.apache.mina.core.session.AbstractIoSession

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0.0-M4
    • 2.0.0-RC1
    • Core
    • None

    Description

      We run ftpserver-1.0.0-M4 with our tool (http://www.alphaworks.ibm.com/tech/mtrat) and one user logins to the server, then a data race is reported. The data race happens in the field "readMessages" of class "org/apache/mina/transport/socket/nio/NioSocketSession". Thread "pool-3-thread-1" read this field while thread "pool-2-thread-1" write to it, which both threads don't share the same lock to protect the critical section.

      Data Race 4 : 1526 : org/apache/mina/transport/socket/nio/NioSocketSession : readMessages
      Thread "pool-3-thread-1" : Tid 15 : Rid 1540 : READ
      Lock Set : [ ]
      Vector Clock : 3
      [org/apache/mina/core/session/AbstractIoSession : updateThroughput : 667]
      [org/apache/mina/core/session/IdleStatusChecker : updateThroughput : 265]
      [org/apache/mina/core/session/IdleStatusChecker : notifyIdleSession : 201]
      [org/apache/mina/core/session/IdleStatusChecker : notifyIdleness : 150]
      [org/apache/mina/core/polling/AbstractPollingIoProcessor : notifyIdleSessions : 604]
      [org/apache/mina/core/polling/AbstractPollingIoProcessor : access$700 : 58]
      [org/apache/mina/core/polling/AbstractPollingIoProcessor$Worker : run : 863]
      [org/apache/mina/util/NamePreservingRunnable : run : 51]
      Thread "pool-2-thread-1" : Tid 16 : Rid 1683 : WRITE
      Lock Set : [ ]
      Vector Clock : 2
      [org/apache/mina/core/session/AbstractIoSession : increaseReadMessages : 728]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain$TailFilter : messageReceived : 746]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain : callNextMessageReceived : 414]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain : access$1200 : 49]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain$EntryImpl$1 : messageReceived : 832]
      [org/apache/ftpserver/listener/nio/FtpLoggingFilter : messageReceived : 83]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain : callNextMessageReceived : 414]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain : access$1200 : 49]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain$EntryImpl$1 : messageReceived : 832]
      [org/apache/mina/core/filterchain/IoFilterEvent : fire : 60]
      [org/apache/mina/filter/logging/MdcInjectionFilter : filter : 137]
      [org/apache/mina/filter/util/CommonEventFilter : messageReceived : 70]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain : callNextMessageReceived : 414]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain : access$1200 : 49]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain$EntryImpl$1 : messageReceived : 832]
      [org/apache/mina/filter/codec/ProtocolCodecFilter$ProtocolDecoderOutputImpl : flush : 379]
      [org/apache/mina/filter/codec/ProtocolCodecFilter : messageReceived : 173]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain : callNextMessageReceived : 414]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain : access$1200 : 49]
      [org/apache/mina/core/filterchain/DefaultIoFilterChain$EntryImpl$1 : messageReceived : 832]
      [org/apache/mina/core/filterchain/IoFilterEvent : fire : 60]
      [org/apache/mina/core/session/IoEvent : run : 64]
      [org/apache/mina/filter/executor/OrderedThreadPoolExecutor$Worker : runTask : 551]
      [org/apache/mina/filter/executor/OrderedThreadPoolExecutor$Worker : runTasks : 543]
      [org/apache/mina/filter/executor/OrderedThreadPoolExecutor$Worker : run : 487]

      Attachments

        Activity

          People

            vrm Julien Vermillard
            danielluo Daniel Luo
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: