[jira] [Commented] (TS-1035) EventProcessor::spawn_thread doesn't check that there is enough event threads and segfaults

2012-01-28 Thread Brian Geffon (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-1035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13195647#comment-13195647
 ] 

Brian Geffon commented on TS-1035:
--

Trying this again, with a new patch that cleanly applies to trunk after Alan's 
TS-1077 commit.



 EventProcessor::spawn_thread doesn't check that there is enough event threads 
 and segfaults
 ---

 Key: TS-1035
 URL: https://issues.apache.org/jira/browse/TS-1035
 Project: Traffic Server
  Issue Type: Bug
  Components: Core
Affects Versions: 3.0.1
Reporter: Brian Geffon
Assignee: Brian Geffon
 Fix For: 3.1.3

 Attachments: TS1035.patch, TS1035.trunk.patch


 The easiest way to see this bug is to use several hundred ports with accept 
 threads turned on. The bug exists because in I_EventProcessor.h there is a 
 hard coded limit of 512 event threads and there is no check in spawn_thread 
 that you haven't exceeded that limit so it will result in a segfault if 
 you're creating too many threads. From what I can tell the best solution is 
 an assertion that you haven't exceeded MAX_EVENT_THREADS.
 Patch is included.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (TS-1035) EventProcessor::spawn_thread doesn't check that there is enough event threads and segfaults

2012-01-25 Thread Brian Geffon (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-1035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13192951#comment-13192951
 ] 

Brian Geffon commented on TS-1035:
--

So I have an issue here, I wanted to make MAX_EVENT_THREADS and 
MAX_THREADS_IN_EACH_TYPE records.configurable and what I realized is that 
EventProcessor is statically constructed so I won't have access to 
records.config when the event processor is constructed. Any suggestions? i'm 
thinking at this point it might just make more sense to set the limits high 
since the memory overhead is negligible (it's an array of MAX_EVENT_THREAD 
pointers) rather than making it configurable, thoughts?

 EventProcessor::spawn_thread doesn't check that there is enough event threads 
 and segfaults
 ---

 Key: TS-1035
 URL: https://issues.apache.org/jira/browse/TS-1035
 Project: Traffic Server
  Issue Type: Bug
  Components: Core
Affects Versions: 3.0.1
Reporter: Brian Geffon
Assignee: Brian Geffon
 Fix For: 3.1.3

 Attachments: LargeNumberOfPorts.patch, UnixEventProcessor.patch


 The easiest way to see this bug is to use several hundred ports with accept 
 threads turned on. The bug exists because in I_EventProcessor.h there is a 
 hard coded limit of 512 event threads and there is no check in spawn_thread 
 that you haven't exceeded that limit so it will result in a segfault if 
 you're creating too many threads. From what I can tell the best solution is 
 an assertion that you haven't exceeded MAX_EVENT_THREADS.
 Patch is included.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (TS-1035) EventProcessor::spawn_thread doesn't check that there is enough event threads and segfaults

2012-01-06 Thread Leif Hedstrom (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-1035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13181480#comment-13181480
 ] 

Leif Hedstrom commented on TS-1035:
---

Brian: Would you mind incorporating Igor's suggestions into a new patch?

 EventProcessor::spawn_thread doesn't check that there is enough event threads 
 and segfaults
 ---

 Key: TS-1035
 URL: https://issues.apache.org/jira/browse/TS-1035
 Project: Traffic Server
  Issue Type: Bug
  Components: Core
Affects Versions: 3.0.1
Reporter: Brian Geffon
 Fix For: 3.1.2

 Attachments: LargeNumberOfPorts.patch, UnixEventProcessor.patch


 The easiest way to see this bug is to use several hundred ports with accept 
 threads turned on. The bug exists because in I_EventProcessor.h there is a 
 hard coded limit of 512 event threads and there is no check in spawn_thread 
 that you haven't exceeded that limit so it will result in a segfault if 
 you're creating too many threads. From what I can tell the best solution is 
 an assertion that you haven't exceeded MAX_EVENT_THREADS.
 Patch is included.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (TS-1035) EventProcessor::spawn_thread doesn't check that there is enough event threads and segfaults

2011-11-30 Thread Brian Geffon (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-1035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13160595#comment-13160595
 ] 

Brian Geffon commented on TS-1035:
--

I've submitted a new patch LargeNumberOfPorts.patch which contains the changes 
I had to make to have ATS support a large number of ports (the currently limit 
is 48 and I've raised it to 1536). The number chosen for several variables are 
fairly arbitrary. The primary issue I ran into was that LocalManager could not 
build a large enough attribute list to pass the full -A file descriptor list (I 
set this at 100kb), but as Igor mentioned it might be wise to use getconf(). 
Secondly, I had to modify Main.cc to allow the -A file descriptor list to be 
large enough (it was previously set at 1kb) again I upped this to 100kb.

 EventProcessor::spawn_thread doesn't check that there is enough event threads 
 and segfaults
 ---

 Key: TS-1035
 URL: https://issues.apache.org/jira/browse/TS-1035
 Project: Traffic Server
  Issue Type: Bug
  Components: Core
Affects Versions: 3.0.1
Reporter: Brian Geffon
 Attachments: LargeNumberOfPorts.patch, UnixEventProcessor.patch


 The easiest way to see this bug is to use several hundred ports with accept 
 threads turned on. The bug exists because in I_EventProcessor.h there is a 
 hard coded limit of 512 event threads and there is no check in spawn_thread 
 that you haven't exceeded that limit so it will result in a segfault if 
 you're creating too many threads. From what I can tell the best solution is 
 an assertion that you haven't exceeded MAX_EVENT_THREADS.
 Patch is included.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (TS-1035) EventProcessor::spawn_thread doesn't check that there is enough event threads and segfaults

2011-11-29 Thread Leif Hedstrom (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-1035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13159777#comment-13159777
 ] 

Leif Hedstrom commented on TS-1035:
---

Perhaps time to either make this limit records.config'urable, or bigger? What 
do you think ?

 EventProcessor::spawn_thread doesn't check that there is enough event threads 
 and segfaults
 ---

 Key: TS-1035
 URL: https://issues.apache.org/jira/browse/TS-1035
 Project: Traffic Server
  Issue Type: Bug
  Components: Core
Affects Versions: 3.0.1
Reporter: Brian Geffon
 Attachments: UnixEventProcessor.patch


 The easiest way to see this bug is to use several hundred ports with accept 
 threads turned on. The bug exists because in I_EventProcessor.h there is a 
 hard coded limit of 512 event threads and there is no check in spawn_thread 
 that you haven't exceeded that limit so it will result in a segfault if 
 you're creating too many threads. From what I can tell the best solution is 
 an assertion that you haven't exceeded MAX_EVENT_THREADS.
 Patch is included.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Commented] (TS-1035) EventProcessor::spawn_thread doesn't check that there is enough event threads and segfaults

2011-11-29 Thread Brian Geffon (Commented) (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-1035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13159802#comment-13159802
 ] 

Brian Geffon commented on TS-1035:
--

I think records.configurable would be preferred; however, after manually 
raising the MAX_EVENT_THREADS and testing it works fine when running 
traffic_server directly but there are other bugs surfacing. In  
LocalManager.cc:1089 real_proxy_options has a hard coded length of 2048 (while 
this should probably use ARG_MAX which on linux is usually 120KB+). Because 
it's such a small limit with a large number of ports it will be unable to fully 
generate the -A list of file descriptors. I'm still looking around and trying 
to fully determine what it's going to take to get it working with 
traffic_manager.

 EventProcessor::spawn_thread doesn't check that there is enough event threads 
 and segfaults
 ---

 Key: TS-1035
 URL: https://issues.apache.org/jira/browse/TS-1035
 Project: Traffic Server
  Issue Type: Bug
  Components: Core
Affects Versions: 3.0.1
Reporter: Brian Geffon
 Attachments: UnixEventProcessor.patch


 The easiest way to see this bug is to use several hundred ports with accept 
 threads turned on. The bug exists because in I_EventProcessor.h there is a 
 hard coded limit of 512 event threads and there is no check in spawn_thread 
 that you haven't exceeded that limit so it will result in a segfault if 
 you're creating too many threads. From what I can tell the best solution is 
 an assertion that you haven't exceeded MAX_EVENT_THREADS.
 Patch is included.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira