[ https://issues.apache.org/jira/browse/TS-2193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13762366#comment-13762366 ]
John Plevyak commented on TS-2193: ---------------------------------- the code in dns_result will check to see that we only call back on the same thread that initiated the DNS lookup: if (h->mutex->thread_holding == e->submit_thread) { MUTEX_TRY_LOCK(lock, e->action.mutex, h->mutex->thread_holding); if (!lock) { Debug("dns", "failed lock for result %s", e->qname); goto Lretry; } for (int i = 0; i < MAX_DNS_RETRIES; i++) { if (e->id[i] < 0) break; h->release_query_id(e->id[i]); } e->postEvent(0, 0); } else { for (int i = 0; i < MAX_DNS_RETRIES; i++) { if (e->id[i] < 0) break; h->release_query_id(e->id[i]); } e->mutex = e->action.mutex; SET_CONTINUATION_HANDLER(e, &DNSEntry::postEvent); e->submit_thread->schedule_imm_signal(e); } There are calls which will schedule on *ANY* event thread (e.g. eventProcessor.schedule_XX). These could schedule (e.g. a timeout or other event) on the ET_DNS thread which perhaps isn't initialized for all the processors (e.g. sessions). At one point I removed all calls to the non-specific thread schedule calls, but it is possible there are some how/still. > Trafficserver 4.1 Crash with proxy.config.dns.dedicated_thread = 1 > ------------------------------------------------------------------ > > Key: TS-2193 > URL: https://issues.apache.org/jira/browse/TS-2193 > Project: Traffic Server > Issue Type: Bug > Components: DNS > Affects Versions: 4.1.0 > Reporter: Tommy Lee > Fix For: 4.1.0 > > > Hi all, > I've tried to enable DNS Thread without luck. > When i set proxy.config.dns.dedicated_thread to 1, it crashes with the > information below. > The ATS is working in Forward Proxy mode. > Thanks in advance. > -------------------------------------- > traffic.out > NOTE: Traffic Server received Sig 11: Segmentation fault > /usr/local/cache-4.1/bin/traffic_server - STACK TRACE: > /lib/x86_64-linux-gnu/libpthread.so.0(+0xfcb0)[0x2af714875cb0] > /usr/local/cache-4.1/bin/traffic_server(_Z16_acquire_sessionP13SessionBucketPK8sockaddrR7INK_MD5P6HttpSM+0x52)[0x51dac2] > /usr/local/cache-4.1/bin/traffic_server(_ZN18HttpSessionManager15acquire_sessionEP12ContinuationPK8sockaddrPKcP17HttpClientSessionP6HttpSM+0x3d1)[0x51e0f1] > /usr/local/cache-4.1/bin/traffic_server(_ZN6HttpSM19do_http_server_openEb+0x30c)[0x53644c] > /usr/local/cache-4.1/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x6a0)[0x537560] > /usr/local/cache-4.1/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x57e)[0x53743e] > /usr/local/cache-4.1/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x57e)[0x53743e] > /usr/local/cache-4.1/bin/traffic_server(_ZN6HttpSM27state_hostdb_reverse_lookupEiPv+0xb9)[0x526b99] > /usr/local/cache-4.1/bin/traffic_server(_ZN6HttpSM12main_handlerEiPv+0xd8)[0x531be8] > /usr/local/cache-4.1/bin/traffic_server[0x5d7c8a] > /usr/local/cache-4.1/bin/traffic_server(_ZN18HostDBContinuation8dnsEventEiP7HostEnt+0x821)[0x5decd1] > /usr/local/cache-4.1/bin/traffic_server(_ZN8DNSEntry9postEventEiP5Event+0x44)[0x5f7a94] > /usr/local/cache-4.1/bin/traffic_server[0x5fd382] > /usr/local/cache-4.1/bin/traffic_server(_ZN10DNSHandler8recv_dnsEiP5Event+0x852)[0x5fee72] > /usr/local/cache-4.1/bin/traffic_server(_ZN10DNSHandler9mainEventEiP5Event+0x14)[0x5ffd94] > /usr/local/cache-4.1/bin/traffic_server(_ZN7EThread13process_eventEP5Eventi+0x91)[0x6b2a41] > /usr/local/cache-4.1/bin/traffic_server(_ZN7EThread7executeEv+0x514)[0x6b3534] > /usr/local/cache-4.1/bin/traffic_server[0x6b17ea] > /lib/x86_64-linux-gnu/libpthread.so.0(+0x7e9a)[0x2af71486de9a] > /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x2af71558dccd] -- 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