[
https://issues.apache.org/jira/browse/AMQCPP-529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13860020#comment-13860020
]
Arthur Naseef commented on AMQCPP-529:
--------------------------------------
Is the char[] allocation which causes the crash is in the AMQ-CPP library, then
where is the array code in question? How big is the array? Do you have a
stack trace?
> Crash in Threads due to small stack size (set to 32768 bytes)
> -------------------------------------------------------------
>
> Key: AMQCPP-529
> URL: https://issues.apache.org/jira/browse/AMQCPP-529
> Project: ActiveMQ C++ Client
> Issue Type: Bug
> Components: Decaf
> Affects Versions: 3.8.1
> Environment: linux50
> Reporter: omri zomet
> Assignee: Timothy Bish
> Priority: Critical
>
> Using version 3.8.1 of activemq-cpp (after using version 3.4.5) - we have
> suffered a crash in code running in amq threads.
> Investigation shows that this happens when trying to use a char[] buffer on
> stack of size > 16384 , probably due to the stack size being of size 32768.
> Thread::Thread() constructors call initializeSelf() with stackSize=(-1),
> which
> in turn call createThreadInstance() with negative stackSize value (hence
> using PLATFORM_DEFAULT_STACK_SIZE).
> Relevant code below:
> ----------------------
> #define PLATFORM_DEFAULT_STACK_SIZE 0x8000
> -----------------------
> void createThreadInstance(ThreadHandle* thread, long long stackSize, int
> priority, bool suspended, threadingTask threadMain, void* threadArg) {
> if (stackSize <= 0) {
> stackSize = PLATFORM_DEFAULT_STACK_SIZE;
> }
> ...
> }
> ----------------------
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)