3 Replies Latest reply on Jan 17, 2017 9:26 AM by zhfeng

    tpreturn() cannot send large reply message.

    mfukuhara

      tpreturn() seems to non-block send without checking tranfer length.

      HybridSocketEndpointQueue::_send() needs wrapper around apr_socket_send() as stomp_write_buffer() ?

      [blacktie.log]

      2017-01-17 16:04:35,723 [0x7febe7fff700] DEBUG (HybridSocketEndpointQueue:328 ) - send on 192.168.200.134:62224 with 687783 bytes and buffer: 1
      0
      0
      687744
      0
      2
      (null)
      X_OCTET
      (null)
      
      2017-01-17 16:04:35,726 [0x7febe7fff700] DEBUG (HybridSocketSessionImpl  :541 ) - HybridSocketSessionImpl::sent
      2017-01-17 16:04:35,726 [0x7febe7fff700] TRACE (XATMIc                   :1185) - sent response
      2017-01-17 16:04:35,726 [0x7febe7fff700] TRACE (XATMIc                   :506 ) - tpfree
      
      

      [server.log]

      2017-01-17 16:04:35,723 DEBUG [org.jboss.narayana.blacktie.jatmibroker.core.server.Client] (Thread-116) size is 687783
      2017-01-17 16:04:35,733 ERROR [org.jboss.narayana.blacktie.jatmibroker.core.server.Client] (Thread-116) expect 687783 but read 655399
      2017-01-17 16:04:35,733 DEBUG [org.jboss.narayana.blacktie.jatmibroker.core.server.Client] (Thread-116) client Socket[addr=/192.168.200.134,port=62224,localport=23311] close