1. 09 Aug, 2011 1 commit
  2. 04 Aug, 2011 1 commit
  3. 03 Aug, 2011 2 commits
  4. 01 Aug, 2011 1 commit
    • Steven Murray's avatar
      bug #82673: RFE: Tapebridged and rtcpd should support buffered tape-marks over multiple files · 7aeaa7cc
      Steven Murray authored
      After further reverse engineering rtcpd it became apparent that there should
      only be one configuration parameter to specify which of the following 3 possible
      tape-flush behaviours the tapebridged and rtcpd daemons should follow:
      
        * N_FLUSHES_PER_FILE
        * ONE_FLUSH_PER_FILE
        * ONE_FLUSH_PER_N_FILES
      
      This commit adds the following tapebridge configuration parameter, which today
      is ignored:
      
        TAPEBRIDGE TAPEFLUSHMODE N_FLUSHES_PER_FILE
      
      More importantly and the real reason for this commit is the value of this
      configuration parameter is now passed from the tapebridged daemon to the rtcpd
      daemon via the tapeFlushMode member of the newly updated TAPEBRIDGE_CLIENTINFO2
      message:
      
      typedef struct {
        uint32_t volReqId;
        uint32_t bridgeCallbackPort;
        uint32_t bridgeClientCallbackPort;
        uint32_t clientUID;
        uint32_t clientGID;
        uint32_t tapeFlushMode;
        uint64_t maxBytesBeforeFlush;
        uint64_t maxFilesBeforeFlush;
        char     bridgeHost[CA_MAXHOSTNAMELEN+1];
        char     bridgeClientHost[CA_MAXHOSTNAMELEN+1];
        char     dgn[CA_MAXDGNLEN+1];
        char     drive[CA_MAXUNMLEN+1];
        char     clientName[CA_MAXUSRNAMELEN+1];
      } tapeBridgeClientInfo2MsgBody_t;
      
      Please note that the TAPEBRIDGE_CLIENTINFO2 has not been released in any version
      of CASTOR and is therefore subject to change until the next release where it
      will be frozen.
      7aeaa7cc
  5. 29 Jul, 2011 1 commit
  6. 28 Jul, 2011 3 commits
  7. 27 Jul, 2011 3 commits
    • Steven Murray's avatar
      bug #82673: RFE: Tapebridged and rtcpd should support buffered tape-marks over multiple files · 9b9847c6
      Steven Murray authored
      This commit modifies the tapebridged/rtcpd protocol that is internal to a
      tape-server.  The new version of the protocol is now capable of supporting
      buffered tape-marks, though the version of rtcpd in this commit still only
      supports at best one synchronised tape-mark per file, i.e. it does not support
      buffered-tape marks over more than one file.
      
      The change with respect to the previous version of to the tapebridged/rtcpd
      protocol is simple.  When the rtcpd daemon knows that its client is is the
      tapebridged daemon it now sends an explicit TAPEBRIDGE_FLUSHEDTOTAPE message to
      the tapebridged daemon when it can guarantee one or more files have been
      flushed to tape.  The tapebridge daemon will now only send
      FileMigratedNotification messages to the tapegatewayd daemon for the files that
      have been explicitly flushed to tape.  The PendingMigrationsStore is used to
      hold back FileMigratedNotification messages until the appropriate
      TAPEBRIDGE_FLUSHEDTOTAPE message has been received.  The rtcpd daemon in this
      commit always does at least one synchronised tape-mark per file and sends
      always sends one TAPEBRIDGE_FLUSHEDTOTAPE per file when its client is the
      tapegatewayd daemon.
      9b9847c6
    • Steven Murray's avatar
      bug #82673: RFE: Tapebridged and rtcpd should support buffered tape-marks over multiple files · c96bfc06
      Steven Murray authored
      I broke the build with my last commit because I have a different version of the BridgeProtocolEnigine class.  Problem now fixed.
      c96bfc06
    • Steven Murray's avatar
      bug #82673: RFE: Tapebridged and rtcpd should support buffered tape-marks over multiple files · bb322ba5
      Steven Murray authored
      Added the class implementing the pending migrations store that will eventually be used to implement buffered tape-marks.
      bb322ba5
  8. 22 Jul, 2011 2 commits
  9. 21 Jul, 2011 3 commits
  10. 20 Jul, 2011 3 commits
    • Sebastien Ponce's avatar
      Fixed bug #84599: deadlock in testsuite when output of stager_qry is too long.... · 8231a897
      Sebastien Ponce authored
      Fixed bug #84599: deadlock in testsuite when output of stager_qry is too long. This was due to the subprocess module itself where poll and stdout should never be used
      
      8231a897
    • Steven Murray's avatar
      bug #82673: RFE: Tapebridged and rtcpd should support buffered tape-marks over multiple files · 541d2336
      Steven Murray authored
      The tapebridged daemon now determines and sends the values of the following
      three CASTOR configuration parameters to the rtcpd daemon:
      
      TAPEBRIDGE USEBUFFEREDTAPEMARKSOVERMULTIPLEFILES false
      TAPEBRIDGE MAXBYTESBEFOREFLUSH 8589934592
      TAPEBRIDGE MAXFILESBEFOREFLUSH 100
      
      Please note that the support for buffered tape-marks over multiple files has
      NOT been implemented.  On top of this, lines 91 to 109 inclusive of the file
      named rtcopy/rtcpd_GetClientInfo.c prevent buffered tape-marks over multiple
      files from even trying to start and these lines create an error message that
      explicitly tells the user that buffered tape-marks over multiple files is not
      supported.
      
       91   /* This version of rtcpd does NOT support buffered tape-marks over */
       92   /* multiple files                                                  */
       93   if(*clientIsTapeBridge &&
       94     tapeBridgeClientInfo2MsgBody->useBufferedTapeMarksOverMultipleFiles) {
       95     char dummyErrbuf[32]; /* For fire and forget */
       96     char *const ackMsg =
       97       "Buffered tape-marks over multiple files is not supported";
       98   
       99     /* Fire and forget negative acknowledgement to VDQM or tape-bridge */
      100     rtcpd_SendAckToVdqmOrTapeBridge(connSock, netTimeout, msgHdr.reqtype, -1    , 
      101       ackMsg, dummyErrbuf, sizeof(dummyErrbuf));
      102 
      103     snprintf(errBuf, errBufLen, "%s()"
      104       ": %s",
      105       __FUNCTION__, ackMsg);
      106     errBuf[errBufLen - 1] = '\0';
      107     serrno = ENOTSUP;
      108     return(-1);
      109   }
      541d2336
    • Steven Murray's avatar
      Added the fields of the new EndNotificationFileErrorReport message to the · ee06c0e7
      Steven Murray authored
      documentation.  No real meat to this update, just keeping the documentation
      up-to-date.
      ee06c0e7
  11. 19 Jul, 2011 6 commits
  12. 18 Jul, 2011 1 commit
  13. 15 Jul, 2011 4 commits
  14. 14 Jul, 2011 7 commits
  15. 13 Jul, 2011 1 commit
  16. 12 Jul, 2011 1 commit