Issue #3530 has been updated by eric sorenson.

Assignee set to eric sorenson
Target version set to 3.x

I reproduced this locally and walked through the debug output from the [debug 
log](https://gist.github.com/7182dad1f5477c039977) with daniel pittman this 
afternoon.

The thing I noticed was that there was a whit-related message describing the 
notify relationship, and Daniel pointed me `lib/puppet/type/whit.rb` where we 
modified both the to_s and refresh code to output debug info. What we saw was:

<pre>
ebug: Prefetching parsed resources for mounttab
/Stage[main]//Node[ubuntu]/Mounts::Do[/mnt/export]/Mounttab[/mnt/export]/options:
 options changed 'hard,rw' to 'hard,ro'
Debug: Flushing mounttab provider target /etc/fstab
Debug: Finishing transaction -614820518
Info: FileBucket adding {md5}2775f4aeada4045a38e2cea8c09e507a
Debug: 
/Stage[main]//Node[ubuntu]/Mounts::Do[/mnt/export]/Mounttab[/mnt/export]: The 
container completed_Mounts::Do[/mnt/export] will propagate my refresh event
Debug: Got a refresh completed_Mounts::Do[/mnt/export]
Debug: completed_Mounts::Do[/mnt/export]: The container completed_Node[ubuntu] 
will propagate my refresh event
Debug: Got a refresh completed_Node[ubuntu]
Debug: completed_Node[ubuntu]: The container completed_Class[Main] will 
propagate my refresh event
</pre>

Those `container complete_Mounts::Do[/mnt/export]` show the problem -- if I 
understand correctly, the target of the notify is being wrongly ascribed to the 
whit that 'contains' the resource rather than the resource itself. But since 
whits don't act on notifys, the event is never received by the mountpoint 
resource.

There are two paths forward: on the one hand I'm looking into the whit 
assignment for a bug (whits should only be interposed across containment 
boundaries like Classes). And Daniel is working on removing whits from the 
graph completely. More to come.
----------------------------------------
Bug #3530: mount change did not umount/mount
https://projects.puppetlabs.com/issues/3530#change-72978

Author: mark foster
Status: Accepted
Priority: High
Assignee: eric sorenson
Category: mount
Target version: 3.x
Affected Puppet version: 0.24.8
Keywords: 
Branch: 


I don't know if this is a bug or not so thought I'd better report it.
I changed manifest mount to point to a different ISO (two of them actually) and 
upon applying the catalog the puppet client said:
Apr  9 10:43:49 sea-build-002 puppetd[715]: Starting catalog run
Apr  9 10:43:52 sea-build-002 puppetd[715]: 
(//Node[sea-build-002]/bp-build/Mount[/home/ftp/ubuntu-10.04-server-amd64]/device)
 device changed '/home/ftp/isos/ubuntu-10.04-beta1-server-amd64.iso' to 
'/home/ftp/isos/ubuntu-10.04-beta2-server-amd64.iso'
Apr  9 10:43:52 sea-build-002 puppetd[715]: 
(//Node[sea-build-002]/bp-build/Mount[/home/ftp/ubuntu-10.04-server-amd64]) 
Refreshing self
Apr  9 10:43:54 sea-build-002 puppetd[715]: 
(//Node[sea-build-002]/bp-build/Mount[/home/ftp/ubuntu-10.04-server-i386]/device)
 device changed '/home/ftp/isos/ubuntu-10.04-beta1-server-i386.iso' to 
'/home/ftp/isos/ubuntu-10.04-beta2-server-i386.iso'
Apr  9 10:43:54 sea-build-002 puppetd[715]: 
(//Node[sea-build-002]/bp-build/Mount[/home/ftp/ubuntu-10.04-server-i386]) 
Refreshing self
Apr  9 10:44:00 sea-build-002 puppetd[715]: Finished catalog run in 10.49 
seconds

However the underlying mount did not change!

mfoster@sea-build-002:~/work/packages$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/md1              227G  199G   28G  88% /
varrun                4.0G  1.5M  4.0G   1% /var/run
varlock               4.0G     0  4.0G   0% /var/lock
udev                  4.0G   44K  4.0G   1% /dev
devshm                4.0G     0  4.0G   0% /dev/shm
/home/ftp/isos/systemrescuecd-x86-1.3.5.iso
                      243M  243M     0 100% /home/ftp/systemrescuecd-x86-1.3.5
/home/ftp/isos/ubuntu-9.10-server-amd64.iso
                      655M  655M     0 100% /home/ftp/ubuntu-9.10-server-amd64
/home/ftp/isos/ubuntu-9.10-alternate-amd64.iso
                      697M  697M     0 100% 
/home/ftp/ubuntu-9.10-alternate-amd64
/home/ftp/isos/ubuntu-8.04.4-server-amd64.iso
                      567M  567M     0 100% /home/ftp/ubuntu-8.04.4-server-amd64
/home/ftp/isos/ubuntu-8.04.4-server-i386.iso
                      568M  568M     0 100% /home/ftp/ubuntu-8.04.4-server-i386
/home/ftp/isos/ubuntu-10.04-beta1-server-i386.iso
                      662M  662M     0 100% /home/ftp/ubuntu-10.04-server-i386
/home/ftp/isos/ubuntu-10.04-beta1-server-amd64.iso
                      679M  679M     0 100% /home/ftp/ubuntu-10.04-server-amd64

Here are the snippets from my manifest that are relevant to this report.
      #Lucid 10.04 (currently beta2)
      file {"/home/ftp/ubuntu-10.04-server-i386":
        ensure => directory, owner => root, group => root,
      }
      mount {"/home/ftp/ubuntu-10.04-server-i386":
        ensure => mounted, atboot => yes,
        device => "/home/ftp/isos/ubuntu-10.04-beta2-server-i386.iso",
        options => "loop,ro", fstype => "iso9660",
        dump => 0, pass => 0,
        require => File["/home/ftp/ubuntu-10.04-server-i386"],
      }
      file {"/home/ftp/ubuntu-10.04-server-amd64":
        ensure => directory, owner => root, group => root,
      }
      mount {"/home/ftp/ubuntu-10.04-server-amd64":
        ensure => mounted, atboot => yes,
        device => "/home/ftp/isos/ubuntu-10.04-beta2-server-amd64.iso",
        options => "loop,ro", fstype => "iso9660",
        dump => 0, pass => 0,
        require => File["/home/ftp/ubuntu-10.04-server-amd64"],
      }

Thank you.


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