Issue #7830 has been reported by Sheldon Hearn.

----------------------------------------
Bug #7830: Handle document corruption in mongo registration
https://projects.puppetlabs.com/issues/7830

Author: Sheldon Hearn
Status: Unreviewed
Priority: Normal
Assignee: 
Category: 
Target version: 
Keywords: 
Branch: 
Affected mCollective version: 


We've observed document corruption in the mongo collection for mcollective node 
registration, that was so bad, the mongo shell couldn't deserialize the 
documents.

We suspect that this originated with interrupted writes from the mongo 
registration agent.

We know that once a node document was corrupted in this way, all future 
registrations for the node would fail to update the document, because the ruby 
mongo driver was unable to deserialize the document.

I propose this fix:

* Use atomic updates to avoid corruption on interrupted write.
* Avoid any document existence test that involves deserialization, so that 
corrupt documents can be replaced.

This limits the scope for corruption to interrupted writes during the initial 
insert, and allows those documents to be corrected on subsequent registration.

https://github.com/sheldonh/mcollective-plugins/commit/fd5ba6be


-- 
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