Enabled FS update with start/stop times, and updated scripts to default to -L

This commit is contained in:
Deon George
2014-08-26 00:21:53 +10:00
parent 2a9f0c0aac
commit 901d43cc7f
9 changed files with 45 additions and 15 deletions

View File

@@ -107,9 +107,9 @@ int tsm_regfs(dsUint32_t dsmHandle, char *fsname) {
/* Send data to TSM for storage */
#ifdef USE_DIGEST
double tsm_sendfile(dsUint32_t dsmHandle, char *fsname, char *filename, long long length, char *description, dsmSendType sendtype, dsBool_t summary, char *digest) {
double tsm_sendfile(dsUint32_t dsmHandle, char *fsname, char *filename, long long length, char *description, dsmSendType sendtype, dsBool_t startstop, dsBool_t summary, char *digest) {
#else
double tsm_sendfile(dsUint32_t dsmHandle, char *fsname, char *filename, long long length, char *description, dsmSendType sendtype, dsBool_t summary) {
double tsm_sendfile(dsUint32_t dsmHandle, char *fsname, char *filename, long long length, char *description, dsmSendType sendtype, dsBool_t startstop, dsBool_t summary) {
#endif
extern int verbose;
char *buffer;
@@ -158,6 +158,10 @@ double tsm_sendfile(dsUint32_t dsmHandle, char *fsname, char *filename, long lon
if (verbose && compressEnabled && length <= DSM_MIN_COMPRESS_SIZE)
fprintf(stderr,"tsm_sendfile: WARNING: Size (%i) too small for compression/de-duplication, even though it is enabled",(int)length);
// Log start backup
if (startstop)
tsm_datefs(dsmHandle,fsname,DSM_FSUPD_BACKSTARTDATE);
// Start a Transaction
rc = dsmBeginTxn(dsmHandle);
if (rc != DSM_RC_OK) {
@@ -304,6 +308,12 @@ double tsm_sendfile(dsUint32_t dsmHandle, char *fsname, char *filename, long lon
objAttr.sizeEstimate.lo = dsmEndSendObjExOut.totalBytesSent.lo;
rc = dsmUpdateObj(dsmHandle,sendtype,archDataP,&objName,&objAttr,DSM_BACKUPD_OBJINFO | DSM_ARCHUPD_OBJINFO);
// Log start backup
if (startstop) {
tsm_datefs(dsmHandle,fsname,DSM_FSUPD_BACKCOMPLETEDATE);
tsm_updatefs(dsmHandle,fsname,dsmSizeToNum(dsmEndSendObjExOut.totalBytesSent,bFalse));
}
if (summary) {
if (! digest)
fprintf(stdout,"%s",dsmObjnameToStr(objName));
@@ -499,7 +509,7 @@ int tsm_deletefile(dsUint32_t dsmHandle, dsmQueryType qType, qryArchiveData qaDa
}
/* Update the FS capacity and utilsation */
int tsm_updatefs(dsUint32_t dsmHandle, char *fsname, long long size ) {
int tsm_updatefs(dsUint32_t dsmHandle, char *fsname, long long size) {
dsInt16_t rc=0;
dsmFSUpd fsUpdateP;
@@ -517,3 +527,18 @@ int tsm_updatefs(dsUint32_t dsmHandle, char *fsname, long long size ) {
return 1;
}
int tsm_datefs(dsUint32_t dsmHandle, char *fsname, int startstop) {
dsInt16_t rc=0;
dsmFSUpd fsUpdateP;
memset(&fsUpdateP,0x00,sizeof(dsmFSUpd));
rc = dsmUpdateFS(dsmHandle,fsname,&fsUpdateP,startstop);
if (rc != DSM_RC_OK) {
tsm_printerr(dsmHandle,rc,"tsm_datefs: dsmUpdateFS failed");
return 0;
}
return 1;
}