- From:
- To:
- Subject: [chef] Re: Re: Re: Re: Re: odd errors after restoring couchdb onto new chef server
- Date: Tue, 28 Feb 2012 11:09:09 -0800
just to close out this thread:
to solve this on the newly built server, i purged all cookbooks, then
reuploaded all from my chef-repo in git. i didn't attempt to backup and
restore the checksum_path dir.
the new restored server seems to be working ok.
thanks for the help!
kallen
On Fri, 24 Feb 2012, Daniel DeLeo wrote:
>
>
>
On Friday, February 24, 2012 at 6:18 PM,
>
>
wrote:
>
>
> On Fri, 24 Feb 2012,
>
>
>
>
>
> (mailto:
)
>
> wrote:
>
>
>
> > On Sat, 25 Feb 2012, AJ Christensen wrote:
>
> >
>
> > > > 2) wierd errors running a chef-client against new server, like:
>
> > > > * ERROR: Server returned error for
>
> > > > https://chef.venus.spergacula.com/cookbooks/users/1.0.0/files/[snip]
>
> > > > * cookbook_file EOFError: end of file reached
>
> > >
>
> >
>
> >
>
> >
>
> > > did you copy the upload/copy the cookbooks to the new server? are they
>
> > > in the file cache? Kind of looks like couchdb has information about
>
> > > the files, but the files aren't on the chef-server file system (hazard
>
> > > guess)
>
> >
>
> >
>
> >
>
> >
>
> > i hadn't done an upload/copy of the cookbooks to the new server because
>
> > i thought the cookbooks were loaded in the couchdb-load. when i run
>
> > knife cookbook list, it looks like all my cookbooks are already there.
>
> >
>
> > regardless, i just reuploaded all cookbooks from my chef-repo to the new
>
> > server. i saw no upload errors. now, running chef-client on a
>
> > non-chef-server node, pointing chef_server_url directly at port 4000
>
> > rather than hitting nginx proxy over https, is erroring out on
>
> > "EOFError - end of file reached", which is similar to error shown in
>
> > gist.
>
> >
>
> >
>
> > [Fri, 24 Feb 2012 23:13:08 +0000] DEBUG: Sending HTTP Request via GET
>
> > to
>
> > chef.venus.spergacula.com:4000/cookbooks/mrepo/0.0.1/files/c0cffe50c70191353d8bd9a8bd568ce5
>
> >
>
> > (http://chef.venus.spergacula.com:4000/cookbooks/mrepo/0.0.1/files/c0cffe50c70191353d8bd9a8bd568ce5)
>
> > [Fri, 24 Feb 2012 23:13:08 +0000] ERROR: Running exception handlers
>
> > [Fri, 24 Feb 2012 23:13:08 +0000] FATAL: Saving node information to
>
> > /var/cache/chef/failed-run-data.json
>
> > [Fri, 24 Feb 2012 23:13:08 +0000] ERROR: Exception handlers complete
>
> > [Fri, 24 Feb 2012 23:13:08 +0000] DEBUG: Re-raising exception: EOFError
>
> > - end of file reached
>
> > /usr/lib/ruby/1.8/net/protocol.rb:135:in `sysread'
>
> > /usr/lib/ruby/1.8/net/protocol.rb:135:in `rbuf_fill'
>
> > /usr/lib/ruby/1.8/timeout.rb:67:in `timeout'
>
> > /usr/lib/ruby/1.8/timeout.rb:101:in `timeout'
>
> >
>
> >
>
> > i'm looking at chef-server debug log and couchdb log. but nothing is
>
> > jumping out at me as relevant. but i may not recognize relevancy..
>
> >
>
> >
>
> >
>
> > last 3 lines of couchdb log fwiw:
>
> >
>
> > [Fri, 24 Feb 2012 23:18:13 GMT] [info] [<0.17029.0>] 127.0.0.1 - -
>
> > 'POST' /chef/_all_docs?include_docs=true 200
>
> > [Fri, 24 Feb 2012 23:18:14 GMT] [info] [<0.17030.0>] 127.0.0.1 - -
>
> > 'GET'
>
> > /chef/_design/id_map/_view/name_to_id?key=[%22client%22,%22admin2.venus.spergacula.com
>
> > (http://22admin2.venus.spergacula.com)%22]&include_docs=true 200
>
> > [Fri, 24 Feb 2012 23:18:14 GMT] [info] [<0.17031.0>] 127.0.0.1 - -
>
> > 'GET'
>
> > /chef/_design/id_map/_view/name_to_id?key=[%22cookbook_version%22,%22mrepo-0.0.1%22]&include_docs=true
>
> > 200
>
> >
>
> >
>
> > thoughts?
>
>
>
>
>
> trying various things, flailing. for the heck of it:
>
>
>
> * deleted possible problematic cookbook (mrepo) and reuploaded. same
>
> errors.
>
> * deleted client node which i'm testing on (admin2), reran, same errors.
>
> * reloaded couchdb dump again
>
>
>
> and now a different cookbook download claims "EOFError - end of file
>
> reached".
>
>
>
>
>
> [Sat, 25 Feb 2012 02:14:22 +0000] DEBUG: Sending HTTP Request via GET to
>
> cheftain04.venus.spergacula.com:4000/cookbooks/begin/0.0.1/files/e447bc0fcbef6dafe72007fe70507767
>
>
>
> (http://cheftain04.venus.spergacula.com:4000/cookbooks/begin/0.0.1/files/e447bc0fcbef6dafe72007fe70507767)
>
> [Sat, 25 Feb 2012 02:14:22 +0000] ERROR: Running exception handlers
>
> [Sat, 25 Feb 2012 02:14:22 +0000] FATAL: Saving node information to
>
> /var/cache/chef/failed-run-data.json
>
> [Sat, 25 Feb 2012 02:14:22 +0000] ERROR: Exception handlers complete
>
> [Sat, 25 Feb 2012 02:14:22 +0000] DEBUG: Re-raising exception: EOFError -
>
> end of file reached
>
> /usr/lib/ruby/1.8/net/protocol.rb:135:in `sysread'
>
> /usr/lib/ruby/1.8/net/protocol.rb:135:in `rbuf_fill'
>
>
>
>
>
> dunno what to do here..
>
The files that comprise your cookbooks aren't stored in couch, they're
>
stored according to their MD5 under whatever you've configured for
>
`checksum_path` in your server.rb. When you backup/restore your chef
>
server, you need to restore these files also.
>
>
The error you're seeing occurs because the file transfer happens outside of
>
the normal request cycle, so server side errors aren't converted to 500s[1].
>
>
To fix it, you can either bulk delete all cookbooks using the `--purge`
>
option, or copy the files.
>
>
HTH,
>
>
--
>
Dan DeLeo
>
>
>
1. Merb is trying to hand off the work to another thread (in the case of
>
threaded servers) or the event loop (in case of evented servers like thin)
>
so that the transfer can happen while other requests are processed. I'm not
>
sure if this even works any more. In any case, I believe a user has
>
contributed a fix for this problem.
Archive powered by MHonArc 2.6.16.