Uploaded image for project: 'ActiveMQ C++ Client'
  1. ActiveMQ C++ Client
  2. AMQCPP-190

setStringProperty() max length

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.1.3
    • 2.2.1
    • CMS Impl
    • None
    • Windows XP SP2

    Description

      Initially reported here http://www.nabble.com/CMS---setStringProperty%28%29-max-length-td18577838.html

      Using main.cpp in \activemq-cpp-2.1\src\examples\ to reproduce the issue:

      If I set the text in the TextMessage to something very large (I was successful at even 2meg), the message sends / receives fine.

      However, if I set a StringProperty on that message to something large (I hit a limit at 32800, probably 32767?), then it crashes.

      Should be simple to re-create. I've attached the modified main.cpp (see HelloWorldProducer::run() )

      Should the max TextMessage size apply to StringProperties as well? Or do they have different behavior?

      Here's the output from my exception:

      Begin Class PrimitiveMap:

      Begin Class = Message
      Value of Message::ID_MESSAGE = 0
      Value of ProducerId is Below:
      Begin Class = ProducerId
      Value of ProducerId::ID_PRODUCERID = 123
      Value of ConnectionId = 8b866eb2-5954-42e7-9820-6d87383b1433
      Value of Value = 0
      Value of SessionId = 0
      No Data for Class BaseDataStructure
      End Class = ProducerId

      Value of Destination is Below:
      Begin Class = ActiveMQTopic
      Begin Class = ActiveMQDestination
      Value of exclusive = false
      Value of ordered = false
      Value of advisory = false
      Value of orderedTarget = coordinator
      Value of physicalName = TEST.FOO
      Value of options = Begin Class activemq::util::Properties:
      End Class activemq::util::Properties:

      No Data for Class BaseDataStructure
      End Class = ActiveMQDestination
      End Class = ActiveMQTopic

      Value of TransactionId is Below:
      Object is NULL
      Value of OriginalDestination is Below:
      Object is NULL
      Value of MessageId is Below:
      Begin Class = MessageId
      Value of MessageId::ID_MESSAGEID = 110
      Value of ProducerId is Below:
      Begin Class = ProducerId
      Value of ProducerId::ID_PRODUCERID = 123
      Value of ConnectionId = 8b866eb2-5954-42e7-9820-6d87383b1433
      Value of Value = 0
      Value of SessionId = 0
      No Data for Class BaseDataStructure
      End Class = ProducerId

      Value of ProducerSequenceId = 0
      Value of BrokerSequenceId = 0
      No Data for Class BaseDataStructure
      End Class = MessageId

      Value of OriginalTransactionId is Below:
      Object is NULL
      Value of GroupID =
      Value of GroupSequence = 0
      Value of CorrelationId =
      Value of Persistent = 0
      Value of Expiration = 0
      Value of Priority = 4
      Value of ReplyTo is Below:
      Object is NULL
      Value of Timestamp = 1217456902624
      Value of Type =
      Value of Content[0] = , check broker.
      FILE: ..\src\main\activemq\transport\filters\ResponseCorrelator.cpp, LINE: 146
      FILE: ..\src\main\activemq\transport\filters\ResponseCorrelator.cpp, LINE: 154
      FILE: ..\src\main\activemq\connector\openwire\OpenWireFormatNegotiator.cpp, LINE: 105
      FILE: ..\src\main\activemq\connector\openwire\OpenwireConnector.cpp, LINE: 1371
      FILE: ..\src\main\activemq\connector\openwire\OpenwireConnector.cpp, LINE: 848
      FILE: ..\src\main\activemq\core\ActiveMQSession.cpp, LINE: 675
      FILE: ..\src\main\activemq\core\ActiveMQProducer.cpp, LINE: 194
      FILE: ..\src\main\activemq\core\ActiveMQProducer.cpp, LINE: 149
      FILE: ..\src\main\activemq\core\ActiveMQProducer.cpp, LINE: 108

      Attachments

        Activity

          People

            nmittler Nathan Christopher Mittler
            fasteddie Eddie Fast
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: