Issue #4694 has been updated by Hector Rivas.

I have to say more. I installed and setup debian passenger for puppetmaster 
with versions:

    ii  librack-ruby               1.1.0-3~bpo50+1            A modular Ruby 
webserver interface
    ii  librack-ruby1.8            1.1.0-3~bpo50+1            A modular Ruby 
webserver interface (Ruby 1.8)
    
and activerecord 2.1

ii  libactiverecord-ruby1.8    2.1.0-3                    Tie database tables 
to classes (Ruby 1.8)
ii  libactivesupport-ruby1.8   2.1.0-3                    utility classes and 
extensions (Ruby 1.8)

And it **always** failed with this error (With mongrel failed the 20% of the 
times):

    Executing puppet one time and no daemonized: info: Retrieving plugin
    info: Loading facts in sshkeys
    info: Loading facts in sshkeys
    err: Could not retrieve catalog from remote server: Error 400 on SERVER: 
Mysql::Error: MySQL server has gone away: SELECT * FROM `hosts`     WHERE 
(`hosts`.`name` = 'dcsrvmonits1.caixagalicia.cg')  LIMIT 1
    err: Cached catalog for dcsrvmonits1.caixagalicia.cg failed: Could not 
parse YAML data for catalog dcsrvmonits1.caixagalicia.cg: allocator undefined 
for Proc
    notice: Using cached catalog
    err: Could not retrieve catalog; skipping run
    

Then I upgraded to activerecord 2.3 (from debian backports):

    ii  libactiverecord-ruby1.8                                 2.3.5-1~bpo50+1 
           ORM database interface for ruby
    ii  libactivesupport-ruby1.8                                2.3.5-1~bpo50+1 
           utility classes and extensions (Ruby 1.8)

And now I don't get the error. But I still have to leave it running for some 
hours to verify that the error is solved.
----------------------------------------
Bug #4694: Storeconfig issue with AR/MySQL
http://projects.puppetlabs.com/issues/4694

Author: Andrew Forgue
Status: Accepted
Priority: Normal
Assignee: 
Category: stored configuration
Target version: 2.6.x
Affected version: 0.25.5
Keywords: stored configs 
Branch: 


We're having an issue with storeconfigs generating random MySQL disconnect 
errors.  This is not related to #2880 or #2816.  Though I suspect that the 
underlying cause may be the same.

First: 
     err: Mysql::Error: MySQL server has gone away: INSERT INTO `fact_values` 
(...)
    
Second:
    err: Puppet::Parser::Compiler failed with error 
ActiveRecord::StatementInvalid: Mysql::Error: Lost connection to MySQL server 
during query: SELECT * FROM `param_values` WHERE (`param_values`.resource_id = 
1136908 AND (param_name_id = 133)) on node xxx.

Third:
    err: Mysql::Error: Lost connection to MySQL server during query: SELECT 
t.id, t.resource_id, p.name FROM resource_tags as t INNER JOIN resources r ON 
t.resource_id=r.id INNER JOIN puppet_tags as p ON t.puppet_tag_id=p.id WHERE 
r.host_id=531

So they're coming from all over the place.  I've verified that in the code 
we're using, reconnect is set to true but it's not reconnecting.  Here's the 
versions:

* Puppet 0.25.5
* Rails 2.3.8
* Mongrel 1.1.5
* OS X Leopard (server)
* MySQL gem 2.8.1
* MySQL client library 5.0.82
* MySQL server 5.1.48
* Ruby 1.8.7-p22

Here's a summary of a single incident -- puppet server (puppet) to SQL server 
conversation:

    Puppet -> SQL: SYN
    Puppet <- SQL: SYN+ACK
    Puppet -> SQL: ACK

So the TCP connection is open, 

1. MySQL Login successful
1. SET NAMES
1. SELECT * FROM HOSTS where hosts.name='hostname'
1. SELECT Facts for host
1. executes a bunch of queries for facts
1. Runs SELECT `param_names`.* FROM `param_names`  INNER JOIN `param_values` ON 
`param_names`.id = `param_values`.param_name_id    WHERE 
((`param_values`.resource_id = 943831))
1. Server returns results and then the client issues a quit (!)?
1. Socket is shutdown, client sends FIN+ACK, server responds with FIN+ACK
1. Server sends RST to client twice.

I've been working on this for a day or 2 and I have no idea what could be 
causing this.  I don't see any pattern.


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to