Bug 970437 - set-proxy being run when non web cart is scaled (and is slooow)
Summary: set-proxy being run when non web cart is scaled (and is slooow)
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: OpenShift Online
Classification: Red Hat
Component: Pod
Version: 2.x
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ---
: ---
Assignee: Abhishek Gupta
QA Contact: libra bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-06-04 03:29 UTC by Clayton Coleman
Modified: 2015-05-15 00:17 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-07-23 18:18:15 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Clayton Coleman 2013-06-04 03:29:54 UTC
set-proxy hook (which takes roughly 12s on a devenv) is being executed when a non-web cart is scaled:

June 03 23:21:44 INFO oo_spawn running /sbin/runuser -m -s /bin/sh 770995337996588101402624 -c "exec /usr/bin/runcon 'unconfined_u:system_r:openshift_t:s0:c0,c501' /bin/sh -c \"/var/lib/openshift/770995337996588101402624/haproxy/hooks/set-proxy foo abc 770995337996588101402624 \'770995337996588101402624\'\=\'foo-abc.dev.rhcloud.com\|10.152.185.199:35536'
'\'\"": {:unsetenv_others=>true, :close_others=>true, :in=>"/dev/null", :chdir=>"/var/lib/openshift/770995337996588101402624/haproxy", :out=>#<IO:fd 12>, :err=>#<IO:fd 10>}
June 03 23:21:56 INFO oo_spawn running /sbin/runuser 

Here's the deployed manifest (on a scaling app)

https://github.com/smarterclayton/openshift-redis-cart/blob/76293d84e2f44afee27a4dd7faee2694bc368372/metadata/manifest.yml

I don't believe set proxy is at play because none of the non-web ports are currently haproxy balanced - even if they were we'd want to explicitly indicate that (Load-Balance-TCP or something on each Endpoint).

Not a release blocker, does make set scales slower than it has to be for non-web carts.

Comment 1 Rajat Chopra 2013-06-14 19:10:34 UTC
Sounds like an enhancement. The reason set-proxy is run is because we blindly say 'execute_connections' on scale-up. We do not bother to selectively execute them. 

The selection may be a tricky process.. if there is an indirect dependency, then we are not sure what connections dont need to be run. 

I am going through the ideas.. and will file a new card in the backlog. Keeping the bug opens until then.

Comment 2 manoj 2013-06-17 20:36:48 UTC
Will create a story in Trello

Comment 3 Abhishek Gupta 2013-07-23 18:18:15 UTC
Tracking it as a feature request using trello
https://trello.com/c/IbYyojrC/80-optimize-execute-connections-for-various-events


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