JournalArchive table and trigger file
I have discovered that my vault store databases have very large watchfile and JournalArchive tables (3 db's for a total of 300 million rows). The reason for this is that my backup software doesn't reset archive bits, and I was not advised to use the IgnoreArchiveBitTrigger.txt file to clear these records. As I understand it, I can clean up these records by creating this trigger file, and it will change 1 record in each row from false to true (indicating that they have been backed up). It is my understanding that since my stores have sharing enabled amongst them, that I have to do this on all partitions at once.
So my concern is that if i run this process, it will have to modify 300 million rows, which I imagine will take a long time and might bring my sql server to it's knees. Symantec Support doesn't know how much of an impact it will have other than saying there will be a performance hit. I don't really want to risk either crashing sql server or making Enterprise Vault unbearably slow for 3 days (weeks, or however long it will take)
That said, is there any way that this can be done in smaller batches (only modify some of the records in the tables)? One thought I had was to use a trigger file with an old created date, but the support tech said that the file has to be the current date in order for it to work (whereas my understanding was that EV used that date to determine which records were safe to purge).
Any advice would be much appreciated. I can't really move forward with upgrading from 8.4 to 9 until this is resolved.
OK so yes technically with sharing enabled for an item to truly be secure any items that its shared across from other partitions would also have to be "backed up" in order for the BackupComplete = 1
However that being said, if an item is below i20kthen it won't be shared, and won't rely on anything outside of its own partition.
The IgnoreArchiveBitTrigger.txt file is placed at the root of the partition so if it just resides in that one partition it will only secure items for anything it finds in that partition alone, and if they're not shared then it will only secure parts of them.
The Creation Date , well just try it and see what happens
So lets do something like the following
1. Get a count of how many items are in the journal archive altogether awaiting backup from 1st January 2011USE yourVaultStore
SELECT COUNT(TransactionId)
FROM JournalArchive
WHERE BackupComplete = 0
AND RecordCreationDate < '2011-01-01'2. Get a count of how many items are in the journal archive below the sharing threshold
USE yourVaultStore
SELECT COUNT(TransactionId)
FROM JournalArchive
WHERE BackupComplete = 0
AND RecordCreationDate < '2011-01-01'
AND ItemSize < (SELECT SISPartSizeThreshold_KB FROM EnterpriseVaultDirectory.dbo.VaultStoreGroup)3. Get the oldest dates of the items awaiting backup
SELECT TOP 10 TransactionId, ItemSize, BackupComplete, RecordCreationDate
FROM JournalArchive
WHERE BackupComplete = 0
AND RecordCreationDate < '2011-01-01'
AND ItemSize < (SELECT SISPartSizeThreshold_KB FROM EnterpriseVaultDirectory.dbo.VaultStoreGroup)
ORDER BY RecordCreationDate4. Note that the first records displayed are the oldest, so lets say some of the oldest are 01-01-2009
Download a utility old FileTouch from here: http://www.softtreetech.com/24x7/extras/FileTouch.exe
5. Next go to the Root of your partition and create IgnoreArchiveBitTrigger.txt in notepad
6. Open a command prompt to where you extracted FileTouch.exe
7. Run the following Command using the date you determined previouslyFileTouch /C /D 01-01-2010 /T 13:00:00 E:\Enterprise Vault Stores\Partition1\IgnoreArchiveBitTrigger.txt
8. Afterwards on the EV Server itself, open a Command prompt and CD to your \Program Files\Enterprise Vault Directory
9. Type "Dtrace" and press Enter
10. Type "set StorageFileWatch v" and press Enter
11. Type "log C:\TriggerFileTest.txt" and press Enter
12. Minimize the command prompt
13. Either restart the Storage service or wait for the scan time to come around (on the partitions you have a Backup tab that talks about the trigger file and a scan every 60 minutes if set)
14. Await for the file to be called .OLD
15. Go back to the DTrae in the command prompt and exit
16. Go back to the SQL Management studio, and run the first three queries again, you should now see that the counts have gone down
Also this is what i see from my dtrace
(StorageFileWatch) <7244> EV:L CWatchFileTimer::CheckTriggerFileExists (Entry) |
(StorageFileWatch)<7244> EV:L CWatchFileTimer::CheckTriggerFileExists|Trigger file E:\Enterprise Vault Stores\Partition1\PartitionSecuredNotification.xml not found so searching for .txt file
(StorageFileWatch) <7244> EV:L CWatchFileTimer::CheckTriggerFileExists|Trigger file E:\Enterprise Vault Stores\Partition1\IgnoreArchiveBitTrigger.txt found
(StorageFileWatch) <7244> EV:L CWatchFileTimer::CheckTriggerFileExists|PartitionSecuredDate = 2009-01-01 19:00:00 TZ|