Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

kitchenplan abandons children #124

Open
keen99 opened this issue Jul 29, 2015 · 2 comments
Open

kitchenplan abandons children #124

keen99 opened this issue Jul 29, 2015 · 2 comments

Comments

@keen99
Copy link

keen99 commented Jul 29, 2015

this line:
https://github.com/kitchenplan/kitchenplan/blob/master/lib/kitchenplan/cli.rb#L59

leaves the while true's abandoned for life. (seen on 10.10 and rootless=0 10.11)

Not entirely sure what the goal of this is nor why we're jumping out to shell to do it?

noticed it when one of my testing VMs ran out of forks:

-> Fetch the chef cookbooks
         run  vendor/bin/librarian-chef update   from "."
error: cannot fork() for rev-list: Resource temporarily unavailable
error: Could not run 'git rev-list'
error: cannot fork() for fetch-pack: Resource temporarily unavailable
draistrick-test-1:/opt/kitchenplan(master)%% w
 8:15  up 20:56, 2 users, load averages: 1.30 1.29 1.17
USER     TTY      FROM              LOGIN@  IDLE WHAT
vagrant  s000     10.0.2.2         Tue11       - w
vagrant  console  -                Tue13   18:26 -
-bash: fork: retry: No child processes
t-bash: fork: retry: No child processes
^C
-bash: fork: retry: Resource temporarily unavailable

-bash: fork: retry: No child processes
draistrick-test-1:/opt/kitchenplan(master)%% ^C
draistrick-test-1:/opt/kitchenplan(master)%% ^C
draistrick-test-1:/opt/kitchenplan(master)%% ps xa|wc -l
     354

Here's some ps data:

This-MacBook-Pro:opt vagrant$ ps xa|grep 'while true'|wc -l
      30
This-MacBook-Pro:opt vagrant$

lapis:/opt/kitchenplan(master)%% ps xa|grep 'while true'|wc -l
      28
lapis:/opt/kitchenplan(master)%%

draistrick-test-1:/opt/kitchenplan(master)%% ps xa|grep 'while true'
 3527 s000  S      0:01.30 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
 4615 s000  S      0:01.29 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
 5485 s000  S      0:01.29 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
 6488 s000  S      0:01.29 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
 7337 s000  S      0:01.24 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
 7698 s000  S      0:01.29 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
 8707 s000  S      0:01.26 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
 9772 s000  S      0:01.27 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
10809 s000  S      0:01.28 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
11925 s000  S      0:01.21 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
12485 s000  S      0:01.25 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
14642 s000  S      0:01.19 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
16286 s000  S      0:01.20 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
16677 s000  S      0:01.19 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
18344 s000  S      0:01.23 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
20591 s000  S      0:01.19 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
21805 s000  S      0:01.17 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
22951 s000  S      0:01.16 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
24029 s000  S      0:01.19 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
25152 s000  S      0:01.17 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
26312 s000  S      0:01.13 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
27608 s000  S      0:01.19 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
28965 s000  S      0:01.18 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
29093 s000  S      0:01.16 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
32603 s000  S      0:01.13 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
34173 s000  S      0:01.16 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
35731 s000  S      0:01.12 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
37779 s000  S      0:01.14 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
39432 s000  S      0:01.10 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
41023 s000  S      0:01.10 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
44330 s000  S      0:01.14 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
45038 s000  S      0:01.06 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
45992 s000  S      0:01.08 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
46404 s000  S      0:01.05 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
46827 s000  S      0:01.07 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
47330 s000  S      0:01.04 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
47696 s000  S      0:01.09 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
49778 s000  S      0:01.04 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
50105 s000  S      0:00.03 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
50167 s000  S      0:01.15 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
50959 s000  S      0:01.06 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
51034 s000  S      0:00.02 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
51335 s000  S      0:01.05 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
51795 s000  S      0:01.06 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
52115 s000  S      0:00.02 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
52735 s000  S      0:01.08 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
54082 s000  S      0:00.01 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
54245 s000  S      0:01.06 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
54943 s000  S      0:00.99 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
55363 s000  S      0:01.05 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
55550 s000  S      0:00.01 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
55986 s000  S      0:01.06 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
56060 s000  S+     0:00.00 grep true
56439 s000  S      0:01.05 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
57134 s000  S      0:01.05 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
57773 s000  S      0:01.00 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
58287 s000  S      0:00.99 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
59910 s000  S      0:01.01 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
60441 s000  S      0:01.02 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
60886 s000  S      0:00.97 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
61401 s000  S      0:00.99 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
61821 s000  S      0:01.01 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
62672 s000  S      0:01.02 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
63206 s000  S      0:01.02 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
64004 s000  S      0:00.96 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
64858 s000  S      0:01.01 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
65552 s000  S      0:00.95 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
66100 s000  S      0:01.03 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
66730 s000  S      0:00.98 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
67564 s000  S      0:00.99 sh -c while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null
draistrick-test-1:/opt/kitchenplan(master)%%
@roderik
Copy link
Member

roderik commented Jul 29, 2015

Ah, this was an attempt to keep the sudo session active during long running installs or downloads (e.g. Java, Office). But it doesn't seem to work anyway. It's ok to remove form kitchenplan. Would you mind sending the pull request? I'm a bit strapped for time at the moment

@keen99
Copy link
Author

keen99 commented Jul 29, 2015

ahhhh that makes sense. I'll see if I can work up a better solution
(using sudo -v to extend the current auth timestamp) if I get some time.

On Wed, Jul 29, 2015 at 12:12 PM, Roderik van der Veer <
notifications@github.com> wrote:

Ah, this was an attempt to keep the sudo session active during long
running installs or downloads (e.g. Java, Office). But it doesn't seem to
work anyway. It's ok to remove form kitchenplan. Would you mind sending the
pull request? I'm a bit strapped for time at the moment


Reply to this email directly or view it on GitHub
#124 (comment)
.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants