7.5(.1) changed behaviour – deleting savesets from adv_file
Posted by Preston on 2009-04-25
Yesterday I wanted to delete a few savesets from a lab server I’d upgraded from 7.4.4 to 7.5.1.
Wanting to go about it quickly, I did the following:
- I used “nsrmm -dy -S ssid” for each saveset ID I wanted to delete, to erase it from the media database.
- I used “nsrstage -C -V volumeName” for the disk backup unit volumes to run a cleaning operation.
Imagine my surprise when, instead of seeing a chunk of space being freed up, I got a lot of the following notifications:
nsrd adv_file warning: Failed to fetch the saveset(ss_t) structure for ssid 1890993582
I got one of these for every saveset I deleted. And since I’d run a lot of tests, that was a lot of savesets. The corresponding result was that they all remained on disk. What had been a tried and true version of saveset deletion under 7.4.x and below appears to not be so useful under 7.5.1.
In the end I had to run a comparison between media database content and disk backup unit content – i.e.:
# mminfo -q "volume=volName" -r "ssid(60)"
To extract the long saveset IDs, which are in effect the names of the files stored on disk, then:
# find /path/to/volume -name -print
Then for each filename, check to see whether it existed in the media database, and if it didn’t, manually delete it. This is not something the average user should do without talking to their support people by the way, but, well, I am support people and it was a lab server…
This change is worrying enough that I’ll be running up a couple of test servers using multiple operating systems (the above happened on Linux) to see whether its reproducible or whether there was just say, some freaky accident with the media database on my lab machine.
I’ll update this post accordingly.
[Update - 2009-04-27]
Have done some more tests on 7.5.1 on various Linux servers, comparing results to 7.4.4. This is definitely changed behaviour and I don’t like it, given that it’s very common for backup administrators to delete one or two savesets here and there from disk. Chatting to EMC about it.
In the interim, here’s a workaround I’ve come up with – instead of using nsrmm -d to delete the saveset, instead run:
# nsrmm -w now -e now -S ssid
To mark the saveset as immediately recyclable. Then run “nsrim -X” to force a purge. That will work. If you have scripts though that manually delete savesets from disk backup units, you should act now to update them.
[Update - 2009-04-30]
It would appear as well that if you delete then attempt to reclaim space, NetWorker will flag the “scan required” flag for a volume. Assuming you’re 100% OK with what you’ve manually deleted and then purged from disk using rm, you can probably safely clear the flag (nsrmm -o notscan). If you’re feeling paranoid, unmount the volume, scan it, then clear the flag.
[Update - 2009-05-06]
Confirmed this isn’t present in vanilla 7.5. It seemed to occur in 7.5.1.
[Update - 2009-06-16]
Cumulative patches for 7.5.1 have been released; according to EMC support these patches include the fixes for addressing this issue, allowing a return to normal operations. If you’re having this issue, make sure you touch base with EMC support or your EMC support partner to get access to the patches. (Note: I’ve not had a chance to review the cumulative patches, so I can’t vouch for them yet.)
I forgot to update earlier; the cumulative patches (220.127.116.11 in the case of what I received) did properly incorporate the patch for this issue.
7 Responses to “7.5(.1) changed behaviour – deleting savesets from adv_file”
Sorry, the comment form is closed at this time.