]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/kernstodo
Delete doc directory
[bacula/bacula] / bacula / kernstodo
index d8ef55de0dc7ec64028e3da9922308969c30af03..3e2c57fb8b07475b95acea1a2353c6c1c113ec9f 100644 (file)
@@ -1,22 +1,26 @@
                     Kern's ToDo List
-                     09 April 2005
+                     28 April 2005
 
 Major development:      
 Project                     Developer
 =======                     =========                         
-IPv6_2                      Meno Abels
+TLS                         Landon Fuller
+Unicode in Win32            Thorsten Engel
+VSS                         Thorsten Engel (under consideration)
 Version 1.37                Kern (see below)
 ========================================================
 
 1.37 Major Projects:
 #3   Migration (Move, Copy, Archive Jobs)
+     (probably not this version)
 #7   Single Job Writing to Multiple Storage Devices
-     (probably not
+     (probably not this version)
 
 ##   Integrate web-bacula into a new Bacula project with
      bimagemgr.
 ##   Consider moving docs to their own project.
 ##   Move rescue to its own project.
+##   Create a new GUI chapter explaining all the GUI programs.
 
 Autochangers:
 - 3. Prevent two drives requesting the same Volume in any given
@@ -26,37 +30,59 @@ Autochangers:
      and possibly manipulating the autochanger (much asked for).
 -    Make "update slots" when pointing to Autochanger, remove
      all Volumes from other drives.  "update slots all-drives"?
-  
+
+Document:
+- Pruning with Admin job.
+- Add better documentation on how restores can be done
+- OS linux 2.4
+  1) ADIC, DLT, FastStor 4000, 7*20GB
+  2) Sun, DDS, (Suns name unknown - Archive Python DDS drive), 1.2GB
+  3) Wangtek, QIC, 6525ES, 525MB (fixed block size 1k, block size etc. 
+  driver dependent - aic7xxx works, ncr53c8xx with problems)
+  4) HP, DDS-2, C1553A, 6*4GB
+- Doc the following
+  to activate, check or disable the hardware compression feature on my 
+  exb-8900 i use the exabyte "MammothTool" you can get it here:
+  http://www.exabyte.com/support/online/downloads/index.cfm
+  There is a solaris version of this tool. With option -C 0 or 1 you can 
+  disable or activate compression. Start this tool without any options for 
+  a small reference.
+- Linux Sony LIB-D81, AIT-3 library works.
+- Document PostgreSQL performance problems bug 131.
+- Document testing
+- Document that ChangerDevice is used for Alert command.
+
 For 1.37:
-- Make a callback when Rerun failed levels is called.
-- Give Python program access to Scheduled jobs.
-- Implement some way to turn off automatic pruning in Jobs.
-- Implement a way an Admin Job can prune, possibly multiple
-  clients -- Python script?
-- Implement "NewVolumeEachJob = yes|no" in Dir.
-- FD Python
+- --without-openssl breaks at least on Solaris.
+- Python:
+  - Make a callback when Rerun failed levels is called.
+  - Give Python program access to Scheduled jobs.
   - Python script to save with Python, not save, save with Bacula.
   - Python script to do backup.
-- Create a new GUI chapter explaining all the GUI programs.
-- Look at Preben's acl.c error handling code.
-- Look at adding full Volume and Pool information to a Volume 
-  label so that bscan can get *all* the info. 
+  - What events?
+  - Change the Priority, Client, Storage, JobStatus (error) 
+    at the start of a job.
+  - Make sure that Python has access to Client address/port so that
+    it can check if Clients are alive.
+
+- Implement "NewVolumeEachJob = yes|no" in Dir.
 - Implement Maximum Job Spool Size
 - Remove all old Device resource code in Dir and code to pass it
   back in SD -- better, rework it to pass back device statistics.
-- Finish implementation of passing all Storage and Device needs to
-  the SD.
 - Check locking of resources -- be sure to lock devices where previously
   resources were locked. 
 - Add global lock on all devices when creating a device structure.
-- Make sure that Python has access to Client address/port so that
-  it can check if Clients are alive.
-- Cleanup and complete Python scripting.
-  - What events?
-  - Change the Priority, Client, Storage, JobStatus (error) 
-    at the start of a job.
+- Fix the Rescue CDROM.
 
 Maybe in 1.37:
+- Print more info when bextract -p accepts a bad block.
+- To mark files as deleted, run essentially a Verify to disk, and
+  when a file is found missing (MarkId != JobId), then create
+  a new File record with FileIndex == -1. This could be done
+  by the FD at the same time as the backup.
+- Fix FD JobType to be set before RunBeforeJob in FD.
+- Look at adding full Volume and Pool information to a Volume 
+  label so that bscan can get *all* the info. 
 - If the user puts "Purge Oldest Volume = yes" or "Recycle Oldest Volume = yes"
   and there is only one volume in the pool, refuse to do it -- otherwise
   he fills the Volume, then immediately starts reusing it.
@@ -68,40 +94,13 @@ Maybe in 1.37:
 - By the way: on page http://www.bacula.org/?page=tapedrives , at the 
   bottom, the link to "Tape Testing Chapter" is broken. It goes to 
   /html-manual/... while the others point to /rel-manual/...
-- OS linux 2.4
-  1) ADIC, DLT, FastStor 4000, 7*20GB
-  2) Sun, DDS, (Suns name unknown - Archive Python DDS drive), 1.2GB
-  3) Wangtek, QIC, 6525ES, 525MB (fixed block size 1k, block size etc. 
-  driver dependent - aic7xxx works, ncr53c8xx with problems)
-  4) HP, DDS-2, C1553A, 6*4GB
-- Doc the following
-  to activate, check or disable the hardware compression feature on my 
-  exb-8900 i use the exabyte "MammothTool" you can get it here:
-  http://www.exabyte.com/support/online/downloads/index.cfm
-  There is a solaris version of this tool. With option -C 0 or 1 you can 
-  disable or activate compression. Start this tool without any options for 
-  a small reference.
-- Linux Sony LIB-D81, AIT-3 library works.
 - Device resource needs the "name" of the SD.
 - Add and option to see if the file size changed during backup.
-- Windows restore:
-  data-fd: RestoreFiles.2004-12-07_15.56.42 Error:
-  > ..\findlib\../../findlib/create_file.c:275 Could not open e:/: ERR=Der
-  > Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen
-  > Prozess verwendet wird.
-  Restore restores all files, but then fails at the end trying
-  to set the attributes of e:
-- Add better documentation on how restores can be done
-  from failed jobs.
-- Resolve the problem between Device name and Archive name,
-  and fix SD messages.
 - Make sure SD deletes spool files on error exit.
 - Delete old spool files when SD starts.
-- Add a restore directory-x
 - When labeling tapes, if you enter 000026, Bacula uses
   the tape index rather than the Volume name 000026.
 - Max Vols limit in Pool off by one?
-- Tell the "restore" user when browsing is no longer possible.
 - Require restore via the restore command or make a restore Job
   get the bootstrap file.
 - Make bootstrap file handle multiple MediaTypes (SD)
@@ -123,7 +122,6 @@ Maybe in 1.37:
   dev.c:1207 ioctl MTWEOF error on /dev/nst0. ERR=Permission denied.
   askdir.c:219 NULL Volume name. This shouldn't happen!!!
   3912 Failed to label Volume: ERR=dev.c:1207 ioctl MTWEOF error on /dev/nst0. ERR=Permission denied.
-
   Label command failed for Volume DLT-20Dec04.
   Do not forget to mount the drive!!!
 - Bug: if a job is manually scheduled to run later, it does not appear
@@ -241,6 +239,18 @@ Why:
     format string. Then I have the tape labeled automatically with weekday
     name in the correct language.
 ==========
+-  Yes, that is surely the case. I probably should turn those into Warning
+   errors. In addition, you just made me think that it might not be bad to
+   add an option to check the file size after backing up the file and
+   report if it changes. This would be done as an option because it would
+   add extra overhead.
+   Kern, good idea.  If you do do that, mention in the output: file 
+   shrunk, or file expanded, just to make it obvious to the user 
+   (without having to the refer to file size), just how the file size 
+   changed.
+   Would this option be for all file, or just one file?  Or a fileset?
 - Make output from status use html table tags for nicely 
   presenting in a browser.
 - Can one write tapes faster with 8192 byte block sizes?
@@ -268,9 +278,6 @@ Cap: 200GB
   bacula 1.36.0/1 works with blocksize 16k INSIDE bacula-sd.conf.
 - Add regex from http://www.pcre.org to Bacula for Win32.
 - Use only shell tools no make in CDROM package.
-- Document PostgreSQL performance problems bug 131.
-- Document testing
-- Document that ChangerDevice is used for Alert command.
 - Include within include does it work?
 - Implement a Pool of type Cleaning?
 - Implement VolReadTime and VolWriteTime in SD
@@ -279,8 +286,6 @@ Cap: 200GB
 - Look at correcting the time jump in the scheduler for daylight
   savings time changes.
 - Add a "real" timer to network connections.
-- Write non-optimized bsrs from the JobMedia and Media records,
-  even after Files are pruned.
 - Promote to Full = Time period 
 - Despool attributes simultaneously with data in a separate
   thread, rejoined at end of data spooling.
@@ -311,25 +316,27 @@ Documentation to do: (any release a little bit at a time)
   hours of operation.
   From Phil:
     In this context, it should be noted that Exabyte has a command-line
-    vxatool utility available for free download.  (The current version is
+    vxatool utility available for free download. (The current version is
     vxatool-3.72.) It can get diagnostic info, read, write and erase tapes,
     test the drive, unload tapes, change drive settings, flash new firmware,
     etc.
     Of particular interest in this context is that vxatool <device> -i will
     report, among other details, the time since last cleaning in tape motion
-    minutes.  This information can be retrieved (and settings changed, for
+    minutes. This information can be retrieved (and settings changed, for
     that matter) through the generic-SCSI device even when Bacula has the
-    regular tape device locked.  (Needless to say, I don't recommend
+    regular tape device locked. (Needless to say, I don't recommend
     changing tape settings while a job is running.)
 - Lookup HP cleaning recommendations.
 - Lookup HP tape replacement recommendations (see trouble shooting autochanger)
 - Document doing table repair
-  
-          
-Testing to do: (painful)
 
 
-For 1.37 Testing/Documentation:
+===================================
+  
+- Use non-blocking network I/O but if no data is available, use
+  select().
+- Use gather write() for network I/O.
+- Autorestart on crash.
 - Add bandwidth limiting.
 - Add acks every once and a while from the SD to keep
   the line from timing out.
@@ -341,7 +348,6 @@ For 1.37 Testing/Documentation:
   units, perhaps via a directive.
 - If opening a tape in read/write mode fails attempt to open
   it in read-only mode, and mark the tape for read only.
-- Add a read-only mode to the mount option.
 - Allow Simultaneous Priorities = yes  => run up to Max concurrent jobs even
   with multiple priorities.
 - If you use restore replace=never, the directory attributes for
@@ -374,19 +380,19 @@ For 1.37 Testing/Documentation:
 - the help-command should be more verbose
   (it should explain the paramters of the different 
   commands in detail)
-  -> it´s time-comsuming to consult the manual anytime
+  -> its time-comsuming to consult the manual anytime
      you need a special parameter
-  -> maybe it´s more easy to maintain this, if the
+  -> maybe its more easy to maintain this, if the
      descriptions of that commands are outsourced to
      a ceratin-file
 - the cd-command should allow complete paths
   i.e. cd /foo/bar/foo/bar
   -> if a customer mails me the path to a certain file,
-     it´s faster to enter the specified directory
+     its faster to enter the specified directory
 - if the password is not configured in bconsole.conf
   you should be asked for it.
   -> sometimes you like to do restore on a customer-machine
-     which shouldn´t know the password for bacula.
+     which shouldnt know the password for bacula.
   -> adding the password to the file favours admins
      to forget to remove the password after usage
   -> security-aspects
@@ -451,10 +457,7 @@ For 1.37 Testing/Documentation:
    should).  None of the values 12:00pm - 12:59pm work for that matter.
 - Add level to estimate command.
 - For each job type (Admin, Restore, ...) require only the really necessary
-  fields.
-- Fix option 2 of restore -- list where file is backed up -- require Client,
-  then list last 20 backups.
-- Pass Director resource name as an option to the Console.
+  fields.- Pass Director resource name as an option to the Console.
 - Add a "batch" mode to the Console (no unsolicited queries, ...).
 - Add a .list all files in the restore tree (probably also a list all files)
   Do both a long and short form.
@@ -575,7 +578,7 @@ For 1.37 Testing/Documentation:
 - Look at adding SQL server and Exchange support for Windows. 
 - Each DVD-RAM disk would be a volume, just like each tape is 
   a volume. It's a 4.7GB media with random access, but there's nothing about 
-  it that I can see that makes it so different than a tape from  bacula's 
+  it that I can see that makes it so different than a tape from bacula's 
   perspective. Why couldn't I back up to a bare floppy as a volume (ignoring 
   the media capacity?)
 - Make dev->file and dev->block_num signed integers so that -1 can
@@ -1304,3 +1307,32 @@ Block Position: 0
   - Solicit Events
 - Add disk seeking on restore; turn off seek on tapes.
   stored/match_bsr.c
+- Look at dird_conf.c:1000: warning: `int size' 
+  might be used uninitialized in this function
+- Indicate when a Job is purged/pruned during restore.
+- Implement some way to turn off automatic pruning in Jobs.
+- Implement a way an Admin Job can prune, possibly multiple
+  clients -- Python script?
+- Look at Preben's acl.c error handling code.
+- SD crashes after a tape restore then doing a backup. 
+- If drive is opened read/write, close it and re-open
+  read-only if doing a restore, and vice-versa.
+- Windows restore:
+  data-fd: RestoreFiles.2004-12-07_15.56.42 Error:
+  > ..\findlib\../../findlib/create_file.c:275 Could not open e:/: ERR=Der
+  > Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen
+  > Prozess verwendet wird.
+  Restore restores all files, but then fails at the end trying
+  to set the attributes of e:
+  from failed jobs.- Resolve the problem between Device name and Archive name,
+  and fix SD messages.
+- Tell the "restore" user when browsing is no longer possible.
+- Add a restore directory-x
+- Write non-optimized bsrs from the JobMedia and Media records,
+  even after Files are pruned.
+- Delete Stripe and Copy from VolParams to save space.
+- Fix option 2 of restore -- list where file is backed up -- require Client,
+  then list last 20 backups.
+- Finish implementation of passing all Storage and Device needs to
+  the SD.
+- Move test for max wait time exceeded in job.c up -- Peter's idea.