Uploaded image for project: 'Puppet'
  1. Puppet
  2. PUP-5640

Windows package provider can crash with "Memory access is out of bounds" when registry values are corrupt



    • Bug
    • Status: Closed
    • Normal
    • Resolution: Fixed
    • PUP 4.3.1
    • PUP 4.3.2
    • None
    • agent running on Windows 10, server on Ubuntu 14.04.3

    • 2
    • Windows 2016-01-13
    • Bug Fix
    • Corrupt registry data could previously cause the Windows Puppet package provider to crash. Registry handling has been improved in Puppet so that invalid data no longer causes a crash.


      I was adding some software packages for Windows when I started getting the following error:
      Error: Failed to apply catalog: Memory access offset=0 size=4 is out of bounds

      I tried the following, but continued to get the same error:

      • rerun puppet agent
      • restart Windows computer
      • uninstall and reinstall puppet agent completely (including deleting everything from %programdata% folder)
      • restart puppetserver and the machine puppetserver runs on
      • revert to old version of production environment code that was working previously

      I know very little about coding in Ruby, but poking around a little based on the debug output didn't lead me to anything obvious.

      It sounds like an array index out of bounds, maybe?

      If anyone has tips on how to further debug (stack trace, etc.), I'm happy to try and contribute to a solution, just not sure where to go from here.

      Attached is a log of the debug run with some domain names and user account names changed for privacy. You can see the error pop up four lines from the bottom.


        Issue Links



              Unassigned Unassigned
              hypothetical Eric Mehl
              Ryan Gard Ryan Gard
              0 Vote for this issue
              6 Start watching this issue



                Zendesk Support