cancel
Showing results for 
Search instead for 
Did you mean: 

Centera, safety copies, how does EV know it has replicated?

Rob_Vollum
Level 4
Partner Accredited

Please forgive my ignorance of the Centera API...

 

When archiving to Centeras, with safety copies set to "After backup", I understand that on Centera "after backup" means "after it has replicated to the other Centera".

 

My question: how, specifically, does EV ask, or find out, that clips have replicated so that it can remove the safety copy? I have an EMC guy telling me that there isn't a way to ask if replication has been completed.

 

So how does EV discover that replication has happened?

 

Thanks in advance,

 

Rob

 

1 ACCEPTED SOLUTION

Accepted Solutions

Joseph_Rodgers
Level 6
Partner

Hi Rob,  How are you?

 

If safety copies are in use it looks like the storage service creates a watchfile (I assume this is a process) to track each saveset and waits for Centera to report successful replication.

 

Regards

Joe

 

ps.  Say hi to Wat

 

I found this in the Symantec Centera BP guide for EV 7.0: (check Step G.)

 

Archiving Stage One
Savesets are first stored in a temporary collection file on an NTFS volume folder.  The
folder structure is the same as for normal NTFS partition, with Year, Month, Day and
Hour sub-folders.  However, the Saveset (.DVS) files are never shared and therefore the
filenames are the full SavesetId so that the names are unique.
 
The folder structure is managed by the EMC(TM) Centera class, which when given a
Saveset to store looks to see if Centera Collection is enabled or disabled and either stores
the Saveset in a Clip or in a temporary Collection file.  If stored in a Clip, Saveset and
SavesetStore records are created in the Vault Store database.  If a Collection file is
created only the Saveset record is created, because the Clip-Id is not yet known.
Archiving Stage Two
The collection and storing of Savesets in the Centera is performed by the Storage File
Watch process, which creates a 'Collector' for each Centera partition that has Collections
enabled.  A 'Collector' consists of a main control thread and multiple (currently set to 10)
worker threads.  A 'Collector' process runs continuously looking for Savesets that need to
be collected and stored.
 
The Control thread first runs the HouseKeep procedure and then gets the SavesetIdentity
of the first uncollected or un-stored Saveset in the partition, which is the initial lowest
SavesetIdentity.  This is a slow SQL operation which is done only once when a Centera
Collector is started.  When complete the worker threads are started and perform the
following:
 
a)  Get Retention Category Identity of the first uncollected or un-stored Saveset in this
partition starting from the current lowest SavesetIdentity.
 
b)  If there are no Savesets to be collected wait for the 'nothing to do' idle time (currently
one minute) and try again.
 
c)  Get next set of Savesets with the same Retention Category Identity.  The maximum
number of Savesets in a Collection is currently set to 100.  If there are less than 100
Savesets but there are more Savesets than the last time wait for the 'not much to do'
idle time (currently 15 seconds) and try again.  If the number of Savesets have not
changed a Collection with less than 100 Savesets will be created.
 
d)  Get the Retention Category Entry Id from the Retention Category Identity and
convert period to seconds as required by the Centera.
 
e)  Allocate the next Collection, which creates a new Collection record and sets the
CollectionIdentity column in the Saveset records
 

f)  Store the Savesets (stored in temporary Saveset files) in a new Centera Collection
Clip.  
 
If this step fails the Saveset records will have a CollectorIdentity value but the
Collection record will have a NULL Clip-Id (in the RelativeFileName column). 
These records will be detected by the HouseKeep procedure, which will set the
CollectionIdentity column in the Saveset records back to NULL and delete the
Collection record so that the Saveset records can be selected again.
 
g)  Update the Collection record with the Clip-Id and if Backup Safety mode is enabled
create WatchFile records for each Saveset record.  
 
If this step fails the Saveset records will have a CollectorIdentity value but the
Collection record will have a NULL Clip-Id (in the RelativeFileName column). 
These records will be detected by the HouseKeep procedure, which will set the
CollectionIdentity column in the Saveset records to NULL and delete the Collection
record so that the Saveset records can be selected again.  The Centera Clip will be
deleted, but if its Retention period prevents this it will be orphaned.
 
h)  Delete the temporary Saveset Collection files.
 
If this step fails the temporary Saveset files will be left in the Staging Area directory
but the Savesets and Collection will have been successfully completed. Currently
these files can be deleted by disabling and re-enabling Centera collections, which will
delete all files and directories in the staging area. 

View solution in original post

3 REPLIES 3

Joseph_Rodgers
Level 6
Partner

Hi Rob,  How are you?

 

If safety copies are in use it looks like the storage service creates a watchfile (I assume this is a process) to track each saveset and waits for Centera to report successful replication.

 

Regards

Joe

 

ps.  Say hi to Wat

 

I found this in the Symantec Centera BP guide for EV 7.0: (check Step G.)

 

Archiving Stage One
Savesets are first stored in a temporary collection file on an NTFS volume folder.  The
folder structure is the same as for normal NTFS partition, with Year, Month, Day and
Hour sub-folders.  However, the Saveset (.DVS) files are never shared and therefore the
filenames are the full SavesetId so that the names are unique.
 
The folder structure is managed by the EMC(TM) Centera class, which when given a
Saveset to store looks to see if Centera Collection is enabled or disabled and either stores
the Saveset in a Clip or in a temporary Collection file.  If stored in a Clip, Saveset and
SavesetStore records are created in the Vault Store database.  If a Collection file is
created only the Saveset record is created, because the Clip-Id is not yet known.
Archiving Stage Two
The collection and storing of Savesets in the Centera is performed by the Storage File
Watch process, which creates a 'Collector' for each Centera partition that has Collections
enabled.  A 'Collector' consists of a main control thread and multiple (currently set to 10)
worker threads.  A 'Collector' process runs continuously looking for Savesets that need to
be collected and stored.
 
The Control thread first runs the HouseKeep procedure and then gets the SavesetIdentity
of the first uncollected or un-stored Saveset in the partition, which is the initial lowest
SavesetIdentity.  This is a slow SQL operation which is done only once when a Centera
Collector is started.  When complete the worker threads are started and perform the
following:
 
a)  Get Retention Category Identity of the first uncollected or un-stored Saveset in this
partition starting from the current lowest SavesetIdentity.
 
b)  If there are no Savesets to be collected wait for the 'nothing to do' idle time (currently
one minute) and try again.
 
c)  Get next set of Savesets with the same Retention Category Identity.  The maximum
number of Savesets in a Collection is currently set to 100.  If there are less than 100
Savesets but there are more Savesets than the last time wait for the 'not much to do'
idle time (currently 15 seconds) and try again.  If the number of Savesets have not
changed a Collection with less than 100 Savesets will be created.
 
d)  Get the Retention Category Entry Id from the Retention Category Identity and
convert period to seconds as required by the Centera.
 
e)  Allocate the next Collection, which creates a new Collection record and sets the
CollectionIdentity column in the Saveset records
 

f)  Store the Savesets (stored in temporary Saveset files) in a new Centera Collection
Clip.  
 
If this step fails the Saveset records will have a CollectorIdentity value but the
Collection record will have a NULL Clip-Id (in the RelativeFileName column). 
These records will be detected by the HouseKeep procedure, which will set the
CollectionIdentity column in the Saveset records back to NULL and delete the
Collection record so that the Saveset records can be selected again.
 
g)  Update the Collection record with the Clip-Id and if Backup Safety mode is enabled
create WatchFile records for each Saveset record.  
 
If this step fails the Saveset records will have a CollectorIdentity value but the
Collection record will have a NULL Clip-Id (in the RelativeFileName column). 
These records will be detected by the HouseKeep procedure, which will set the
CollectionIdentity column in the Saveset records to NULL and delete the Collection
record so that the Saveset records can be selected again.  The Centera Clip will be
deleted, but if its Retention period prevents this it will be orphaned.
 
h)  Delete the temporary Saveset Collection files.
 
If this step fails the temporary Saveset files will be left in the Staging Area directory
but the Savesets and Collection will have been successfully completed. Currently
these files can be deleted by disabling and re-enabling Centera collections, which will
delete all files and directories in the staging area. 

Rob_Vollum
Level 4
Partner Accredited

Hi Joe! Nice to hear from you, I hope you're well. I'll say hi to Wat. :)

 

Thanks for the feedback - I appreciate it. It looks like that all applies when Collections are being used, which we will be doing. I still have curiousity on how it does it when there are no collections. My suspicion is that it just asks the Centera if all replication is complete. My EMC contact tells me there is not a way to ask that of specific clips.

 

What is that Centera BP guide you referenced? Is it downloadable? I don't seem to have anything like that.

 

Thanks!!

Rob_Vollum
Level 4
Partner Accredited

My mistake - it does look like this is relevant for when collections are in use, or not. I didn't read enough before replying...

 

Thanks again!

 

Rob