Bug 1257693 - mysql and redis have client/server timeouts set to 0
Summary: mysql and redis have client/server timeouts set to 0
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-puppet-modules
Version: 7.0 (Kilo)
Hardware: Unspecified
OS: Unspecified
medium
high
Target Milestone: ga
: 8.0 (Liberty)
Assignee: Emilien Macchi
QA Contact: Asaf Hirshberg
URL:
Whiteboard:
: 1281353 (view as bug list)
Depends On:
Blocks: 1311300
TreeView+ depends on / blocked
 
Reported: 2015-08-27 16:56 UTC by Ryan O'Hara
Modified: 2023-02-22 23:02 UTC (History)
14 users (show)

Fixed In Version: openstack-puppet-modules-7.0.10-1.el7ost
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 1311300 (view as bug list)
Environment:
Last Closed: 2016-04-07 21:03:44 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 223223 0 None None None Never
OpenStack gerrit 284274 0 None None None 2016-02-24 17:28:19 UTC
Red Hat Product Errata RHEA-2016:0603 0 normal SHIPPED_LIVE Red Hat OpenStack Platform 8 Enhancement Advisory 2016-04-08 00:53:53 UTC

Description Ryan O'Hara 2015-08-27 16:56:51 UTC
Currently, rhel-osp-director configures the mysql proxy in haproxy.cfg to have client and server timeout set to 0. This is incorrect. Doing this will result in the following warning:

[WARNING] 238/115010 (13878) : config : missing timeouts for proxy 'mysql'.
| While not properly invalid, you will certainly encounter various problems
| with such a configuration. To fix this, please ensure that all following
| timeouts are set to a non-zero value: 'client', 'connect', 'server'.
[WARNING] 238/115010 (13878) : config : missing timeouts for proxy 'redis'.
| While not properly invalid, you will certainly encounter various problems
| with such a configuration. To fix this, please ensure that all following
| timeouts are set to a non-zero value: 'client', 'connect', 'server'.

The mysql timeouts should be >60m. I am not sure that the appropriate timeouts for redis should be.

Comment 4 Emilien Macchi 2015-09-14 17:03:17 UTC
Patch sent upstream for MySQL: https://review.openstack.org/223223

Comment 5 Mike Burns 2015-10-19 15:42:31 UTC
Emilien, what about redis?  Is that going to be fixed in this bug too? or should we split the bug?

Comment 6 Jason Guiditta 2016-02-23 20:47:07 UTC
The upstream patch for mysql (in puppet-tripleo) is merged, I am going to clone this to cover the redis half, so mysql can move forward

Comment 7 Jason Guiditta 2016-02-23 20:52:14 UTC
*** Bug 1281353 has been marked as a duplicate of this bug. ***

Comment 8 Jason Guiditta 2016-02-24 17:28:19 UTC
Turns out this was only merged on master, it has now been cherry-picked back to liberty

Comment 9 Jason Guiditta 2016-02-24 17:48:32 UTC
Ryan, I have 3 questions for you on this:

1. The Version is set to 7, but the target release is 8 - did you see this bug in 7 or 8?  I am not sure where to mae sure any fixes land (7 seems less likely since the bug is just a warning versus an error, but if it gets enough priority, that could change of course)
2. I see there was a change in the haproxy defaults[1] that did not exist when you saw this, I wonder if this warning would still occur if retested with current osp8? Seems to me like that would at least satisfy the warning, though we may want to keep the patch I just set up for backport anyway for mysql
3. Where did these errors get output? And is there any config change needed on an osp install to make them show up on a test system in the same place (so someone can try to reproduce)


[1] https://github.com/openstack/puppet-tripleo/blob/stable/liberty/manifests/loadbalancer.pp#L40

Comment 10 Ryan O'Hara 2016-02-24 18:02:15 UTC
(In reply to Jason Guiditta from comment #9)
> Ryan, I have 3 questions for you on this:
> 
> 1. The Version is set to 7, but the target release is 8 - did you see this
> bug in 7 or 8?  I am not sure where to mae sure any fixes land (7 seems less
> likely since the bug is just a warning versus an error, but if it gets
> enough priority, that could change of course)

I don't remember. If anything has a timeout set to 0, that is wrong and needs to be fixed.

> 2. I see there was a change in the haproxy defaults[1] that did not exist
> when you saw this, I wonder if this warning would still occur if retested
> with current osp8? Seems to me like that would at least satisfy the warning,
> though we may want to keep the patch I just set up for backport anyway for
> mysql

The config I looked at had timeouts explicitly set to 0 in the proxy definition. That will override all defaults, so no -- setting defaults will not make a difference.

> 3. Where did these errors get output? And is there any config change needed
> on an osp install to make them show up on a test system in the same place
> (so someone can try to reproduce)

It depends. If you're starting it from the command-line you should see them on stdout. Else you should see them in the system logs.

Comment 13 Asaf Hirshberg 2016-03-15 06:26:42 UTC
Using director 8.0 puddle - 2016-03-11.1 ,mysql have 90m for both client/server timeout, and there's no timeout set for redis:

listen mysql
  bind 172.17.0.11:3306 transparent
  option tcpka
  option httpchk
  stick on dst
  stick-table type ip size 1000
  timeout client 90m
  timeout server 90m

listen redis
  bind 172.17.0.10:6379 transparent
  balance first
  option tcp-check
  tcp-check send info\ replication\r\n
  tcp-check expect string role:master




[stack@puma33 ~]$ rpm -qa|grep puppet
openstack-puppet-modules-7.0.13-1.el7ost.noarch

Comment 14 Jason Guiditta 2016-03-16 15:01:18 UTC
Please note the redis half of this has been split into a separate BZ (1311300) so if this output above is verified, please verify the related one as well.

Comment 15 Ryan O'Hara 2016-03-16 16:11:49 UTC
(In reply to Asaf Hirshberg from comment #13)
> Using director 8.0 puddle - 2016-03-11.1 ,mysql have 90m for both
> client/server timeout, and there's no timeout set for redis:
> 
> listen mysql
>   bind 172.17.0.11:3306 transparent
>   option tcpka
>   option httpchk
>   stick on dst
>   stick-table type ip size 1000
>   timeout client 90m
>   timeout server 90m
> 
> listen redis
>   bind 172.17.0.10:6379 transparent
>   balance first
>   option tcp-check
>   tcp-check send info\ replication\r\n
>   tcp-check expect string role:master
> 
> 
> 
> 
> [stack@puma33 ~]$ rpm -qa|grep puppet
> openstack-puppet-modules-7.0.13-1.el7ost.noarch

The mysql timeouts are fine. Since redis does not specify timeouts, it will use whatever timeouts are set in the default section (not shown here).

Comment 19 errata-xmlrpc 2016-04-07 21:03:44 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-0603.html


Note You need to log in before you can comment on or make changes to this bug.