[jira] [Updated] (TS-4885) Incorrect checking of fds_throttle and fds_limit

2016-11-07 Thread Phil Sorber (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4885?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Phil Sorber updated TS-4885:

Fix Version/s: 6.2.1

> Incorrect checking of fds_throttle and fds_limit
> 
>
> Key: TS-4885
> URL: https://issues.apache.org/jira/browse/TS-4885
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Core
>Reporter: Oknet Xu
>Assignee: Oknet Xu
> Fix For: 6.2.1, 7.0.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> {code}
>  902 static void
>  903 check_fd_limit()
>  904 {
>  905   int fds_throttle = -1;
>  906   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
>  907   if (fds_throttle > fds_limit + THROTTLE_FD_HEADROOM) {  // 
> ---> Incorrect
>  908 int new_fds_throttle = fds_limit - THROTTLE_FD_HEADROOM;
>  909 if (new_fds_throttle < 1) {
>  910   ink_abort("too few file descriptors (%d) available", fds_limit);
>  911 }
>  912 char msg[256];
>  913 snprintf(msg, sizeof(msg), "connection throttle too high, "
>  914"%d (throttle) + %d (internal use) > %d 
> (file descriptor limit), "
>  915"using throttle of %d",
>  916  fds_throttle, THROTTLE_FD_HEADROOM, fds_limit, 
> new_fds_throttle);
>  917 SignalWarning(MGMT_SIGNAL_SYSTEM_ERROR, msg);
>  918   }
>  919 }
> {code}
> {code}
> 1001 static void
> 1002 adjust_sys_settings(void)
> 1003 {
> ...
> 1024   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
> 1025 
> 1026   if (getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1027 if (fds_throttle > (int)(lim.rlim_cur + THROTTLE_FD_HEADROOM)) {  // 
> --> Incorrect
> 1028   lim.rlim_cur = (lim.rlim_max = (rlim_t)fds_throttle);
> 1029   if (setrlimit(RLIMIT_NOFILE, &lim) == 0 && 
> getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1030 fds_limit = (int)lim.rlim_cur;
> 1031 syslog(LOG_NOTICE, "NOTE: RLIMIT_NOFILE(%d):cur(%d),max(%d)", 
> RLIMIT_NOFILE, (int)lim.rlim_cur, (int)lim.rlim_max);
> 1032   }
> 1033 }
> 1034   }
> ...
> 1043 }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TS-4885) Incorrect checking of fds_throttle and fds_limit

2016-11-07 Thread Phil Sorber (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4885?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Phil Sorber updated TS-4885:

Backport to Version:   (was: 6.2.1)

> Incorrect checking of fds_throttle and fds_limit
> 
>
> Key: TS-4885
> URL: https://issues.apache.org/jira/browse/TS-4885
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Core
>Reporter: Oknet Xu
>Assignee: Oknet Xu
> Fix For: 6.2.1, 7.0.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> {code}
>  902 static void
>  903 check_fd_limit()
>  904 {
>  905   int fds_throttle = -1;
>  906   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
>  907   if (fds_throttle > fds_limit + THROTTLE_FD_HEADROOM) {  // 
> ---> Incorrect
>  908 int new_fds_throttle = fds_limit - THROTTLE_FD_HEADROOM;
>  909 if (new_fds_throttle < 1) {
>  910   ink_abort("too few file descriptors (%d) available", fds_limit);
>  911 }
>  912 char msg[256];
>  913 snprintf(msg, sizeof(msg), "connection throttle too high, "
>  914"%d (throttle) + %d (internal use) > %d 
> (file descriptor limit), "
>  915"using throttle of %d",
>  916  fds_throttle, THROTTLE_FD_HEADROOM, fds_limit, 
> new_fds_throttle);
>  917 SignalWarning(MGMT_SIGNAL_SYSTEM_ERROR, msg);
>  918   }
>  919 }
> {code}
> {code}
> 1001 static void
> 1002 adjust_sys_settings(void)
> 1003 {
> ...
> 1024   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
> 1025 
> 1026   if (getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1027 if (fds_throttle > (int)(lim.rlim_cur + THROTTLE_FD_HEADROOM)) {  // 
> --> Incorrect
> 1028   lim.rlim_cur = (lim.rlim_max = (rlim_t)fds_throttle);
> 1029   if (setrlimit(RLIMIT_NOFILE, &lim) == 0 && 
> getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1030 fds_limit = (int)lim.rlim_cur;
> 1031 syslog(LOG_NOTICE, "NOTE: RLIMIT_NOFILE(%d):cur(%d),max(%d)", 
> RLIMIT_NOFILE, (int)lim.rlim_cur, (int)lim.rlim_max);
> 1032   }
> 1033 }
> 1034   }
> ...
> 1043 }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TS-4885) Incorrect checking of fds_throttle and fds_limit

2016-11-06 Thread Oknet Xu (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4885?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oknet Xu updated TS-4885:
-
Backport to Version: 6.2.1

> Incorrect checking of fds_throttle and fds_limit
> 
>
> Key: TS-4885
> URL: https://issues.apache.org/jira/browse/TS-4885
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Core
>Reporter: Oknet Xu
>Assignee: Oknet Xu
> Fix For: 7.0.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> {code}
>  902 static void
>  903 check_fd_limit()
>  904 {
>  905   int fds_throttle = -1;
>  906   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
>  907   if (fds_throttle > fds_limit + THROTTLE_FD_HEADROOM) {  // 
> ---> Incorrect
>  908 int new_fds_throttle = fds_limit - THROTTLE_FD_HEADROOM;
>  909 if (new_fds_throttle < 1) {
>  910   ink_abort("too few file descriptors (%d) available", fds_limit);
>  911 }
>  912 char msg[256];
>  913 snprintf(msg, sizeof(msg), "connection throttle too high, "
>  914"%d (throttle) + %d (internal use) > %d 
> (file descriptor limit), "
>  915"using throttle of %d",
>  916  fds_throttle, THROTTLE_FD_HEADROOM, fds_limit, 
> new_fds_throttle);
>  917 SignalWarning(MGMT_SIGNAL_SYSTEM_ERROR, msg);
>  918   }
>  919 }
> {code}
> {code}
> 1001 static void
> 1002 adjust_sys_settings(void)
> 1003 {
> ...
> 1024   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
> 1025 
> 1026   if (getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1027 if (fds_throttle > (int)(lim.rlim_cur + THROTTLE_FD_HEADROOM)) {  // 
> --> Incorrect
> 1028   lim.rlim_cur = (lim.rlim_max = (rlim_t)fds_throttle);
> 1029   if (setrlimit(RLIMIT_NOFILE, &lim) == 0 && 
> getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1030 fds_limit = (int)lim.rlim_cur;
> 1031 syslog(LOG_NOTICE, "NOTE: RLIMIT_NOFILE(%d):cur(%d),max(%d)", 
> RLIMIT_NOFILE, (int)lim.rlim_cur, (int)lim.rlim_max);
> 1032   }
> 1033 }
> 1034   }
> ...
> 1043 }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TS-4885) Incorrect checking of fds_throttle and fds_limit

2016-10-15 Thread Bryan Call (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4885?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bryan Call updated TS-4885:
---
Backport to Version:   (was: 7.0.0)

> Incorrect checking of fds_throttle and fds_limit
> 
>
> Key: TS-4885
> URL: https://issues.apache.org/jira/browse/TS-4885
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Core
>Reporter: Oknet Xu
>Assignee: Oknet Xu
> Fix For: 7.0.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> {code}
>  902 static void
>  903 check_fd_limit()
>  904 {
>  905   int fds_throttle = -1;
>  906   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
>  907   if (fds_throttle > fds_limit + THROTTLE_FD_HEADROOM) {  // 
> ---> Incorrect
>  908 int new_fds_throttle = fds_limit - THROTTLE_FD_HEADROOM;
>  909 if (new_fds_throttle < 1) {
>  910   ink_abort("too few file descriptors (%d) available", fds_limit);
>  911 }
>  912 char msg[256];
>  913 snprintf(msg, sizeof(msg), "connection throttle too high, "
>  914"%d (throttle) + %d (internal use) > %d 
> (file descriptor limit), "
>  915"using throttle of %d",
>  916  fds_throttle, THROTTLE_FD_HEADROOM, fds_limit, 
> new_fds_throttle);
>  917 SignalWarning(MGMT_SIGNAL_SYSTEM_ERROR, msg);
>  918   }
>  919 }
> {code}
> {code}
> 1001 static void
> 1002 adjust_sys_settings(void)
> 1003 {
> ...
> 1024   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
> 1025 
> 1026   if (getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1027 if (fds_throttle > (int)(lim.rlim_cur + THROTTLE_FD_HEADROOM)) {  // 
> --> Incorrect
> 1028   lim.rlim_cur = (lim.rlim_max = (rlim_t)fds_throttle);
> 1029   if (setrlimit(RLIMIT_NOFILE, &lim) == 0 && 
> getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1030 fds_limit = (int)lim.rlim_cur;
> 1031 syslog(LOG_NOTICE, "NOTE: RLIMIT_NOFILE(%d):cur(%d),max(%d)", 
> RLIMIT_NOFILE, (int)lim.rlim_cur, (int)lim.rlim_max);
> 1032   }
> 1033 }
> 1034   }
> ...
> 1043 }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TS-4885) Incorrect checking of fds_throttle and fds_limit

2016-10-15 Thread Bryan Call (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4885?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bryan Call updated TS-4885:
---
Fix Version/s: (was: 7.1.0)
   7.0.0

> Incorrect checking of fds_throttle and fds_limit
> 
>
> Key: TS-4885
> URL: https://issues.apache.org/jira/browse/TS-4885
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Core
>Reporter: Oknet Xu
>Assignee: Oknet Xu
> Fix For: 7.0.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> {code}
>  902 static void
>  903 check_fd_limit()
>  904 {
>  905   int fds_throttle = -1;
>  906   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
>  907   if (fds_throttle > fds_limit + THROTTLE_FD_HEADROOM) {  // 
> ---> Incorrect
>  908 int new_fds_throttle = fds_limit - THROTTLE_FD_HEADROOM;
>  909 if (new_fds_throttle < 1) {
>  910   ink_abort("too few file descriptors (%d) available", fds_limit);
>  911 }
>  912 char msg[256];
>  913 snprintf(msg, sizeof(msg), "connection throttle too high, "
>  914"%d (throttle) + %d (internal use) > %d 
> (file descriptor limit), "
>  915"using throttle of %d",
>  916  fds_throttle, THROTTLE_FD_HEADROOM, fds_limit, 
> new_fds_throttle);
>  917 SignalWarning(MGMT_SIGNAL_SYSTEM_ERROR, msg);
>  918   }
>  919 }
> {code}
> {code}
> 1001 static void
> 1002 adjust_sys_settings(void)
> 1003 {
> ...
> 1024   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
> 1025 
> 1026   if (getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1027 if (fds_throttle > (int)(lim.rlim_cur + THROTTLE_FD_HEADROOM)) {  // 
> --> Incorrect
> 1028   lim.rlim_cur = (lim.rlim_max = (rlim_t)fds_throttle);
> 1029   if (setrlimit(RLIMIT_NOFILE, &lim) == 0 && 
> getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1030 fds_limit = (int)lim.rlim_cur;
> 1031 syslog(LOG_NOTICE, "NOTE: RLIMIT_NOFILE(%d):cur(%d),max(%d)", 
> RLIMIT_NOFILE, (int)lim.rlim_cur, (int)lim.rlim_max);
> 1032   }
> 1033 }
> 1034   }
> ...
> 1043 }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TS-4885) Incorrect checking of fds_throttle and fds_limit

2016-10-07 Thread Leif Hedstrom (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4885?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Leif Hedstrom updated TS-4885:
--
Backport to Version: 7.0.0

> Incorrect checking of fds_throttle and fds_limit
> 
>
> Key: TS-4885
> URL: https://issues.apache.org/jira/browse/TS-4885
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Core
>Reporter: Oknet Xu
>Assignee: Oknet Xu
> Fix For: 7.1.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> {code}
>  902 static void
>  903 check_fd_limit()
>  904 {
>  905   int fds_throttle = -1;
>  906   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
>  907   if (fds_throttle > fds_limit + THROTTLE_FD_HEADROOM) {  // 
> ---> Incorrect
>  908 int new_fds_throttle = fds_limit - THROTTLE_FD_HEADROOM;
>  909 if (new_fds_throttle < 1) {
>  910   ink_abort("too few file descriptors (%d) available", fds_limit);
>  911 }
>  912 char msg[256];
>  913 snprintf(msg, sizeof(msg), "connection throttle too high, "
>  914"%d (throttle) + %d (internal use) > %d 
> (file descriptor limit), "
>  915"using throttle of %d",
>  916  fds_throttle, THROTTLE_FD_HEADROOM, fds_limit, 
> new_fds_throttle);
>  917 SignalWarning(MGMT_SIGNAL_SYSTEM_ERROR, msg);
>  918   }
>  919 }
> {code}
> {code}
> 1001 static void
> 1002 adjust_sys_settings(void)
> 1003 {
> ...
> 1024   REC_ReadConfigInteger(fds_throttle, 
> "proxy.config.net.connections_throttle");
> 1025 
> 1026   if (getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1027 if (fds_throttle > (int)(lim.rlim_cur + THROTTLE_FD_HEADROOM)) {  // 
> --> Incorrect
> 1028   lim.rlim_cur = (lim.rlim_max = (rlim_t)fds_throttle);
> 1029   if (setrlimit(RLIMIT_NOFILE, &lim) == 0 && 
> getrlimit(RLIMIT_NOFILE, &lim) == 0) {
> 1030 fds_limit = (int)lim.rlim_cur;
> 1031 syslog(LOG_NOTICE, "NOTE: RLIMIT_NOFILE(%d):cur(%d),max(%d)", 
> RLIMIT_NOFILE, (int)lim.rlim_cur, (int)lim.rlim_max);
> 1032   }
> 1033 }
> 1034   }
> ...
> 1043 }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)