activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Helen Huang (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (AMQCPP-405) CMS sender thread hangs after restarting broker
Date Fri, 09 Nov 2012 15:26:12 GMT

    [ https://issues.apache.org/jira/browse/AMQCPP-405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13493318#comment-13493318
] 

Helen Huang edited comment on AMQCPP-405 at 11/9/12 3:25 PM:
-------------------------------------------------------------

To use CMS_Test_Tool, please unzip it into a folder on your hard drive, for example c:\CMS_Test_Tool.
Then follow the following instructions to build CMS and the test. 

(0) Add two environment variables called MessageBrokerIP and MessageBrokerPort, and point
them to your message broker's IP and port.

(1) Register C:\CMS_Test_Tool\dll\tbControlsUD.dll (This is the unicode debug version of the
dll. You can register other versions of this dll to run other configurations)

(2) Open C:\CMS_Test_Tool\Third Party Software\ActiveMQCPP\activemq-cpp\vs2005-build\activemq-cpp.sln.
(I have modified the solution file so that we can use VS 2005 to open it. I have also added
a few more build configurations to the solution: DebugDLL, ReleaseDLL, DebugUnicodeDLL, ReleaseUnicodeDLL.)

(3) In VS studio, from the "Tools" menu select "Options". Then from the "Options" pop-up,
select "Projects and Solutions", and then select "VC++ directories". Add C:\CMS_Test_Tool\adk\include
to the list of include directories, and add C:\CMS_Test_Tool\adk\lib\debug8 to the list of
lib directories.


(4) Build activemq_cpp for configuration DebugUnicodeDLL

(5) Copy the build results: activemq-cppud.dll to C:\CMS_Test_Tool\dll, activemq-cppud.lib
to C:\CMS_Test_Tool\adk\lib\debug8

(6) Open solution C:\CMS_Test_Tool\CMS Message Handler-3.5.x\src\CmsMessageHandler.sln. The
solution contains two projects CmsMessageHandlerCOM and CMSMessageHandlerCOM-TestMultipleSendersReceivers.
CmsMessageHandlerCOM is a wrapper for CMS. It is used by our main application. CMSMessageHandlerCOM-TestMultipleSendersReceivers
is the test tool for CmsMessageHandlerCOM , and CMS.


(7) Build the solution.

(8) Set the project CMSMessageHandlerCOM-TestMultipleSendersReceivers as the startup project,
and run/debug it. CMSMessageHandlerCOM-TestMultipleSendersReceivers runs for 24 hours. It
has 2 senders and 2 receivers. Messages are sent out every a few milli seconds.

(9)Copy C:\CMS_Test_Tool\CMS Message Handler-3.5.x\bin to the machine where the message broker
is located. There are two files in that folder, startStopActiveMQService.bat and enableDisableNetworkCard.bat.
If you have installed activemq as a windows service, you can use startStopActiveMQService.bat
to restart the service. Also enableDisableNetworkCard.bat can be used to disable and re-enable
your network card. But you will need to download devcon from microsoft, and replace the device
id *DEV_167A* in it.

I was able to reproduce the access violation just a few minutes after starting CMSMessageHandlerCOM-TestMultipleSendersReceivers,
and running enableDisableNetworkCard.bat. My message broker is installed on the same computer
where I ran the tests.

Please let me know if you encounter any problems setting up the test. Thanks a lot for your
help!




                
      was (Author: hhuang):
    To use CMS_Test_Tool, please unzip it into a folder on your hard drive, for example c:\CMS_Test_Tool.
Then follow the following instructions to build CMS and the test. 

(0) Add two environment variables called MessageBrokerIP and MessageBrokerPort, and point
them to your message broker's IP and port.

(1) Register C:\CMS_Test_Tool\dll\tbControlsUD.dll (This is the unicode debug version of the
dll. You can register other versions of this dll to run other configurations)

(2) Open C:\CMS_Test_Tool\Third Party Software\ActiveMQCPP\activemq-cpp\vs2005-build\activemq-cpp.sln.
(I have modified the solution file so that we can use VS 2005 to open it. I have also added
a few more build configurations to the solution: DebugDLL, ReleaseDLL, DebugUnicodeDLL, ReleaseUnicodeDLL.)

(3) Build activemq_cpp for configuration DebugUnicodeDLL

(4) Copy the build results: activemq-cppud.dll to C:\CMS_Test_Tool\dll, activemq-cppud.lib
to C:\CMS_Test_Tool\adk\lib\debug8

(5) Open solution C:\CMS_Test_Tool\CMS Message Handler-3.5.x\src\CmsMessageHandler.sln. The
solution contains two projects CmsMessageHandlerCOM and CMSMessageHandlerCOM-TestMultipleSendersReceivers.
CmsMessageHandlerCOM is a wrapper for CMS. It is used by our main application. CMSMessageHandlerCOM-TestMultipleSendersReceivers
is the test tool for CmsMessageHandlerCOM , and CMS.

(6) In VS studio, from the "Tools" menu select "Options". Then from the "Options" pop-up,
select "Projects and Solutions", and then select "VC++ directories". Add C:\CMS_Test_Tool\adk\include
to the list of include directories, and add C:\CMS_Test_Tool\adk\lib\debug8 to the list of
lib directories.

(7) Build the solution.

(8) Set the project CMSMessageHandlerCOM-TestMultipleSendersReceivers as the startup project,
and run/debug it. CMSMessageHandlerCOM-TestMultipleSendersReceivers runs for 24 hours. It
has 2 senders and 2 receivers. Messages are sent out every a few milli seconds.

(9)Copy C:\CMS_Test_Tool\CMS Message Handler-3.5.x\bin to the machine where the message broker
is located. There are two files in that folder, startStopActiveMQService.bat and enableDisableNetworkCard.bat.
If you have installed activemq as a windows service, you can use startStopActiveMQService.bat
to restart the service. Also enableDisableNetworkCard.bat can be used to disable and re-enable
your network card. But you will need to download devcon from microsoft, and replace the device
id *DEV_167A* in it.

I was able to reproduce the access violation just a few minutes after starting CMSMessageHandlerCOM-TestMultipleSendersReceivers,
and running enableDisableNetworkCard.bat. My message broker is installed on the same computer
where I ran the tests.

Please let me know if you encounter any problems setting up the test. Thanks a lot for your
help!




                  
> CMS sender thread hangs after restarting broker
> -----------------------------------------------
>
>                 Key: AMQCPP-405
>                 URL: https://issues.apache.org/jira/browse/AMQCPP-405
>             Project: ActiveMQ C++ Client
>          Issue Type: Bug
>          Components: CMS Impl
>    Affects Versions: 3.4.1
>         Environment: Windows xp service pack 3, ActiveMQ broker 5.3.1, apr 1.4.2, apr-util
1.3.9, apr iconv 1.2.1
>            Reporter: Helen Huang
>            Assignee: Timothy Bish
>            Priority: Critical
>             Fix For: 3.5.0
>
>         Attachments: CMS_Test_Tool.7z, CrashHang_Report__CMSMessageHandlerCOM-TestMultipleSendersReceivers.exe__11072012173926312.mht,
CrashHang_Report__CMSMessageHandlerCOM-TestReceiver.exe__10242012114621213.mht, CrashHang_Report__CMSMessageHandlerCOM-TestSender_exe__1001201211243973.mht,
CrashHang_Report__CMSMessageHandlerCOM-TestSender_exe__1001201220471946.mht, CrashHang_Report__CMSMessageHandlerCOM-TestSender_exe__10022012152424484.mht,
CrashHang_Report__CMSMessageHandlerCOM-TestSender_exe__10032012172730765.mht, CrashHang_Report__PID_2832__05232012143544484.mht,
CrashHang_Report__SCOTApp.exe__10272012120620437.mht, CrashHang_Report__SCOTApp_exe__11012012195321234.mht
>
>
> The sender thread in CMS hangs after we retarted the message broker.
> The thread is 548 in the attached dump file. 
> This is a critical issue that blocks the release of our product that is scheduled in
a few days. We hope you can resolve it soon. Really appreciate your help!

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message