]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/projects
ebl fix the last patch to do only ignorecase on win32
[bacula/bacula] / bacula / projects
index fca2ed9e96f22e689cfdbb4e2036f8e7ff95eb46..55820d694657e2c0de750e06e059a36e76cdd197 100644 (file)
@@ -38,7 +38,7 @@ Item 25:  Archival (removal) of User Files to Tape
 Item  1:  Accurate restoration of renamed/deleted files
   Date:   28 November 2005
   Origin: Martin Simmons (martin at lispworks dot com)
-  Status: Robert Nelson will implement this
+  Status: 
 
   What:   When restoring a fileset for a specified date (including "most
           recent"), Bacula should give you exactly the files and directories
@@ -260,8 +260,54 @@ Item  8:  Implement Copy pools
   Notes:  I would commit some of my developers' time if we can agree
           on the design and behavior. 
 
-  Notes:  I get the idea, but would like more details on the precise
-          syntax of the necessary directives and what they would do.
+  Notes:  Additional notes from David:
+          I think there's two areas where new configuration would be needed. 
+
+          1) Identify a "SD mux" SD (specify it in the config just like a normal
+          SD. The SD configuration would need something like a "Daemon Type =
+          Normal/Mux" keyword to identify it as a multiplexor. (The director code
+          would need modification to add the ability to do the multiple session
+          setup, but the impact of the change would be new code that was invoked
+          only when a SDmux is needed).
+
+          2) Additional keywords in the Pool definition to identify the need to
+          create copies. Each pool would acquire a Copypool= attribute (may be
+          repeated to generate more than one copy. 3 is about the practical limit,
+          but no point in hardcoding that). 
+
+          Example:
+          Pool {
+            Name = Primary
+            Pool Type = Backup
+            Copypool = Copy1
+            Copypool = OffsiteCopy2
+          }
+
+          where Copy1 and OffsiteCopy2 are valid pools.
+
+          In terms of function (shorthand):
+          Backup job X is defined normally, specifying pool Primary as the pool to
+          use. Job gets scheduled, and Bacula starts scheduling resources.
+          Scheduler looks at pool definition for Primary, sees that there are a
+          non-zero number of copypool keywords. The director then connects to an
+          available SDmux, passes it the pool ids for Primary, Copy1, and
+          OffsiteCopy2 and waits. SDmux then goes out and reserves devices and
+          volumes in the normal SDs that serve Primary, Copy1 and OffsiteCopy2.
+          When all are ready, the SDmux signals ready back to the director, and
+          the FD is given the address of the SDmux as the SD to communicate with.
+          Backup proceeds normally, with the SDmux duplicating blocks to each
+          connected normal SD, and returning ready when all defined copies have
+          been written. At EOJ, FD shuts down connection with SDmux, which closes
+          down the normal SD connections and goes back to an idle state. 
+          SDmux does not update database; normal SDs do (noting that file is
+          present on each volume it has been written to). 
+
+          On restore, director looks for the volume containing the file in pool
+          Primary first, then Copy1, then OffsiteCopy2. If the volume holding the
+          file in pool Primary is missing or busy (being written in another job,
+          etc), or one of the volumes from the copypool list that have the file in
+          question is already mounted and ready for some reason, use it to do the
+          restore, else mount one of the copypool volumes and proceed.
 
 
 Item  9:  Scheduling syntax that permits more flexibility and options
@@ -451,7 +497,7 @@ Item 12:  Add Plug-ins to the FileSet Include statements.
 Item 13:  Restore only file attributes (permissions, ACL, owner, group...)
   Origin: Eric Bollengier
   Date:   30/12/2006
-  Status:
+  Status: Implemented by Eric, see project-restore-attributes-only.patch
 
   What:   The goal of this project is to be able to restore only rights
           and attributes of files without crushing them.
@@ -467,7 +513,8 @@ Item 13:  Restore only file attributes (permissions, ACL, owner, group...)
           If the file isn't here, we can create an empty one and apply
           rights or do nothing.
 
-
+          This will not work with win32 stream, because it seems that we 
+          can't split the WriteBackup stream to get only ACL and ownerchip.
 
 Item 14:  Add an override in Schedule for Pools based on backup types
 Date:     19 Jan 2005
@@ -633,7 +680,7 @@ Item 19:  Automatic disabling of devices
 Item 20:  An option to operate on all pools with update vol parameters
   Origin: Dmitriy Pinchukov <absh@bossdev.kiev.ua>
    Date:  16 August 2006
-  Status:
+  Status: Patch made by  Nigel Stepp
 
    What:  When I do update -> Volume parameters -> All Volumes
           from Pool, then I have to select pools one by one.  I'd like
@@ -1117,7 +1164,7 @@ Item  n:  make changing "spooldata=yes|no" possible for
           manual/interactive jobs
   Origin: Marc Schiffbauer <marc@schiffbauer.net>
   Date:   12 April 2007)
-  Status: Already implemented by Eric
+  Status: 
 
   What:   Make it possible to modify the spooldata option
           for a job when being run from within the console.