[ace-users] Issue after re-install of ACE 6.1.0 on Fedora 23

Johnny Willemsen jwillemsen at remedy.nl
Tue Jun 21 01:18:14 CDT 2016


Hi,

The 6.1.0 is getting pretty old, would recommend you to upgrade to ACE
6.3.4.

You are spawning a worker thread, do you have a wait on the thread
manager at the end of your main to wait on your worker thread to have
finished before existing main?

Best regards,

Johnny Willemsen
Remedy IT
Postbus 81 | 6930 AB Westervoort | The Netherlands
http://www.remedy.nl

On 06/21/2016 04:18 AM, Sunil Matta wrote:
> Odd problem of a simple program not exiting at end of main.
> 
> 
>     ACE VERSION: 6.1.0
> 
>     HOST MACHINE and OPERATING SYSTEM:
>         If on Windows based OS's, which version of WINSOCK do you
>         use?:
> Linux eoms1 4.5.6-200.fc23.x86_64 #1 SMP Wed Jun 1 21:28:20 UTC 2016
> x86_64 x86_64 x86_64 GNU/Linux
> 
>     TARGET MACHINE and OPERATING SYSTEM, if different from HOST:
>     COMPILER NAME AND VERSION (AND PATCHLEVEL):
> g++ (GCC) 5.3.1 20160406 (Red Hat 5.3.1-6)
> 
>     THE $ACE_ROOT/ace/config.h FILE:
> #include "ace/config-linux.h"
> 
>     THE $ACE_ROOT/include/makeinclude/platform_macros.GNU FILE:
> include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU
> 
>     CONTENTS OF $ACE_ROOT/bin/MakeProjectCreator/config/default.features
>     (used by MPC when you generate your own makefiles):
> 
>     AREA/CLASS/EXAMPLE AFFECTED:
> The following tests
> Error: Bug_2610_Regression_Test  FAILED with exit status 1 after Time:1s
> Error: Bug_2772_Regression_Test FAILED (time out after Time:316s)
> ERROR: <Bug_3744_Regression_Test> failed: No such file or directory
> Error: Bug_3744_Regression_Test  FAILED with exit status 255 after Time:1s
> Error: Bug_3911_Regression_Test  FAILED with exit status 255 after Time:1s
> Error: MT_SOCK_Test FAILED (time out after Time:315s)
> Error: NonBlocking_Conn_Test FAILED (time out after Time:316s)
> Error: Reactor_Fairness_Test  FAILED with exit status 1 after Time:92s
> 
> 
>     DOES THE PROBLEM AFFECT:
>         COMPILATION?
>         LINKING?
>             On Unix systems, did you run make realclean first?
>         EXECUTION?
>     Execution.
>         OTHER (please specify)?
> 
> 
>     SYNOPSIS:
> Main fails to exit program.
> 
>     DESCRIPTION:
> Had to upgrade my Fedora to 23 with a fresh install.
> I had a simple Ace_Test example to enqueue a string and have svc()
> dequeue the message block and string 10 times.
> Some times the program exits at the end of the main. SOmetimes it
> doesnt.
> 
> Quite often, the program doesnt stop and just hangs with the
> following stack trace:
> 0x00007ffff763b9e8 in pthread_cond_destroy@@GLIBC_2.3.2 () from
> /lib64/libpthread.so.0
> (gdb) where
> #0  0x00007ffff763b9e8 in pthread_cond_destroy@@GLIBC_2.3.2 () from
> /lib64/libpthread.so.0
> #1  0x00007ffff7b1c3b0 in ACE_OS::cond_destroy (cv=0x621570) at
> /home/downloads/ACE_wrappers/ace/OS_NS_Thread.inl:224
> #2  ACE_Condition_Thread_Mutex::remove (this=0x621570) at
> /home/downloads/ACE_wrappers/ace/Condition_Thread_Mutex.inl:36
> #3  ACE_Condition_Thread_Mutex::~ACE_Condition_Thread_Mutex
> (this=0x621570, __in_chrg=<optimized out>)
>     at Condition_Thread_Mutex.cpp:79
> #4  0x0000000000403667 in
> ACE_Message_Queue<ACE_MT_SYNCH>::~ACE_Message_Queue (this=0x6214f0,
> __in_chrg=<optimized out>)
>     at /home/3plibs/ACE-6.1.0/include/ace/Message_Queue_T.cpp:1063
> #5  0x00000000004036b2 in
> ACE_Message_Queue<ACE_MT_SYNCH>::~ACE_Message_Queue (this=0x6214f0,
> __in_chrg=<optimized out>)
>     at /home/3plibs/ACE-6.1.0/include/ace/Message_Queue_T.cpp:1063
> #6  0x000000000040333d in ACE_Task<ACE_MT_SYNCH>::~ACE_Task
> (this=0x7fffffffdae0, __in_chrg=<optimized out>)
>     at /home/3plibs/ACE-6.1.0/include/ace/Task_T.cpp:72
> #7  0x0000000000403221 in TestAceTask::~TestAceTask
> (this=0x7fffffffdae0, __in_chrg=<optimized out>) at testAceTask.cpp:68
> #8  0x0000000000402f3c in main (argc=1, argv=0x7fffffffdce8) at
> testAceTask.cpp:129
> 
> 
> 
> 
>     REPEAT BY:
> int TestAceTask::svc() {
>    std::cout <<  _PFUNC_ << ":" << std::endl;
>    ACE_Message_Block* mb = 0;
>    while (getq(mb) != -1)
>    {
>       if (mb->size() != 0)
>       {
>          const char* pc = (char *)mb->rd_ptr();
>      std::cout << "str=" << pc << std::endl;
>          mb->release();
>       }
>    }
>    return -1;
> }
> 
> 
>     SAMPLE FIX/WORKAROUND:
> NA
> 
> 
> -- 
> Sunil Matta
> 973.568.0990
> Equity/Options Trading Systems
> 
> 
> _______________________________________________
> ace-users mailing list
> ace-users at list.isis.vanderbilt.edu
> http://list.isis.vanderbilt.edu/cgi-bin/mailman/listinfo/ace-users
> 


More information about the ace-users mailing list