Video Screencast Help

How to tell is a specific archive contains items that are on legal hold

Created: 30 Nov 2009 • Updated: 02 Jun 2010 | 7 comments

Hello,
I need to change the policy and retention for an FSA archive and was planing on deleting the old archive then re-archive the data after the change. I wanted to know if there was a way to know if the archive contained any legal hold items. Since legal hold data cannot be deleted I will need to rename the old archive and just have two archives for the file server. I am guessing there is a way in SQL, but am not sure.

Thanks

Travis

Comments 7 CommentsJump to latest comment

Frank Beck's picture

Hi Vikes,

There should be a table in your vault store DB called "HoldSaveset"

This will show you all of the savesets on hold, and also the ArchivePointIdentity associated with each saveset.  

If you look at the advanced tab when looking at the properties of the Archive in the Vault Administration Console, you will see the Archive ID - you can use this to write a query to see if there is anything int he HoldSaveset table from that archive.

Best Regards,

Frank

Vikes 2's picture

Hi Frank,
Thanx for the info, the only question that I have is: the archive ID is a much different looking entry, is the SavesetIdentity entry a subset of the archiveID since the SavesetIdentity entry is only 7 characters and the ArchiveID is much longer? the only columns that I see in SQL under the HoldSaveset table are:
HoldIdentity
SavesetIdentity
HoldDataIdentity
HoldGroupIdentity

thanks

Travis

Frank Beck's picture

Hi Vikes,

Sorry just assumed this was an EV8 DB!

The query would be a bit more complicated here:

Take the archiveid from the archive properties and run this against the vault store DB

select ArchivePointIdentity from ArchivePoint where ArchivePointId = 'valueyougot'

Then make a note of the ArchivePointIdentity

And try this (where x = the ArchivePointIdentity you just noted):

select * from saveset where savesetidentity in (select savesetidentity from holdsaveset) and ArchivePointIdentity = x

Or just replace "select count" with "select count(*)" for a count...

Best Regards,

Frank

Claudio Veronezi's picture

just for test

I didn't try the sql.

select *.saveset, *.ArchivePoint from saveset, ArchivePoint
               where
                   saveset.savesetidentity   in (select savesetidentity from holdsaveset) and
                   ArchivePointIdentity.saveset=ArchivePoint.ArchivePoint

see ya

Claudio Veronezi Mendes
IT Manager at Lb2 Consultoria
Londrina - Pr - Brazil
 

Frank Beck's picture

You still need to run this bit:

select ArchivePointIdentity from ArchivePoint where ArchivePointId = 'valueyougot'

And then:

select  ss.savesetidentity, ap.archivepointid from saveset ss, archivepoint ap
 where
 ss.savesetidentity in (select savesetidentity from holdsaveset) and
 ss.archivepointidentity = ap.archivepointidentity

You'd then get a list of the savesets on hold and the archivepointids and could work it out from there - different ways of doing the same thing :-)

Best Regards,

Frank

Claudio Veronezi's picture

Thanks.

 I didn't remember the sintaxe of the "nick naming" a table.

Claudio Veronezi Mendes
IT Manager at Lb2 Consultoria
Londrina - Pr - Brazil