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

Failed refreshonly resources generate duplicate event

    Details

    • Template:
      PUP Bug Template
    • Team:
      Coremunity
    • Sprint:
      Platform Core KANBAN
    • Release Notes:
      Not Needed
    • Release Notes Summary:
      this issue is a bug, as discussed in the retro last week there is no documentation needed
    • QA Risk Assessment:
      Needs Assessment

      Description

      PUP-9339 and PUP-8908 both cause an event to be added to the report when a refreshed resource fails. PUP-8908 was fixed first in 5.5.3, then PUP-9339 was fixed in 4.10.13 and merged up, but the semantic conflict wasn't resolved correctly in https://github.com/puppetlabs/puppet/commit/c3eed15cd1c2f4bdd6bdd3cca9acffe0a9a103a1 causing a duplicate event to end up in puppetdb. The duplicate events were first released in 5.5.9.

      To reproduce:

      exec { 'duplicate exec events':
        command     => '/usr/bin/false',
        subscribe   => Notify['test1'],
        refreshonly => true,
      }
       
      notify { 'test1':
        message => 'foo'
      }
      

      results in 2 events for the refreshed event:

        Exec[duplicate exec events]:
          title: duplicate exec events
          file: "/Users/josh/work/puppet/manifest.pp"
          line: 1
          resource: Exec[duplicate exec events]
          resource_type: Exec
          provider_used: posix
          containment_path:
          - Stage[main]
          - Main
          - Exec[duplicate exec events]
          evaluation_time: 0.000102
          tags:
          - exec
          - class
          time: '2019-03-28T13:59:12.868197000-07:00'
          failed: true
          failed_to_restart: true
          changed: false
          out_of_sync: true
          skipped: false
          change_count: 0
          out_of_sync_count: 2
          events:
          - audited: false
            property: 
            previous_value: 
            desired_value: 
            historical_value: 
            message: 'Failed to call refresh: ''/usr/bin/false'' returned 1 instead of one
              of [0]'
            name: refresh
            status: failure
            time: '2019-03-28T13:59:12.882309000-07:00'
            redacted: false
            corrective_change: false
          - audited: false
            property: 
            previous_value: 
            desired_value: 
            historical_value: 
            message: 'Failed to call refresh: ''/usr/bin/false'' returned 1 instead of one
              of [0]'
            name: resource_error
            status: failure
            time: '2019-03-28T13:59:12.882390000-07:00'
            redacted: false
            corrective_change: false
          corrective_change: false
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                kris.bosland Kris Bosland
                Reporter:
                josh Josh Cooper
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Zendesk Support