Kern's ToDo List
- 06 August 2004
+ 31 August 2004
Major development:
Project Developer
========================================================
1.35 Items to do for release:
-- Find memory leaks in address_conf.c
-- Network order of port and ip addresses.
-- SetIP in dird/fd_cmds.c is broken.
-- don't use inet_addr() it is deprecated.
-- Fix code in filed.c for init_bsock();
-- Fix code in console.c for init_bsock();
-
-
-- Knoppix CDROM
-- Make Verify jobs require exclusive use of Volume as Restore
- jobs do.
-- Perhaps add read/write programs and/or plugins to FileSets.
+- Bacula rescue CDROM implement isolinux
- Add new DCR calling sequences everywhere in SD. This will permit
simultaneous use of multiple devices by a single job.
-- Fix restore ++++ that get intermingled with "Building directory tree"
-- Solve the termcap.h problem on Solaris configure.
-
+- Look at patches/bacula_db.b2z postgresql that loops during restore.
+ See Gregory Wright.
+- Perhaps add read/write programs and/or plugins to FileSets.
+- Make sure Qmsgs are dequeued by FD and SD.
+- Check if ACLs allocated at dird_conf.c:1214 are being properly
+ released.
-- Test Win32 errno handling.
- Add bscan to four-concurrent-jobs regression.
-- Doc new IPv6 syntax
- Add IPv6 to regression
- Alternative to static linking "ldd prog" save all binaries listed,
restore them and point LD_LIBRARY_PATH to them.
- Test/doc Tape Alerts
- Doc update AllFromVol
- Doc dbcheck eliminate orphaned clients.
-- Doc new duration time input editing.
+- Doc -p option in stored
+- Document that console commands can be abbreviated.
+- New IP address specification is used as follows:
+ [sdaddresses|diraddresses|fdaddresses] = { [[ip|ipv4|ipv6] = {
+ [[addr|port] = [^ ]+[\n;]+] }] }
+
+ so it could look for example like this:
+ SDaddresses = { ip = {
+ addr = 1.2.3.4; port = 1205; }
+ ipv4 = {
+ addr = 1.2.3.4; port = http; }
+ ipv6 = {
+ addr = 1.2.3.4;
+ port = 1205;
+ }
+ ip = {
+ addr = 1.2.3.4
+ port = 1205
+ }
+ ip = {
+ addr = 1.2.3.4
+ }
+ ip = {
+ addr = 201:220:222::2
+ }
+ ip = {
+ addr = bluedot.thun.net
+ }
+ }
+ as a consequence, you can now specify multiple IP addresses and
+ ports to be used. In the case of a server, it will listen on
+ all those that you specify. In the case of connecting to the server,
+ Bacula will attempt connecting to one at a time until it succeeds.
+ And, in a few other special cases, Bacula will use only the first
+ address specified.
+
+ The default port numbers are still the same and the services and hosts
+ are also resolved by name. So now you could use the real names for the
+ port numbers.
+
+ An ip section will allow resolution to either an ipv4 or an ipv6 address.
+ An ipv4 section forces the resolution to be only ipv4, and an ipv6 section
+ forces the resolution to be only ipv6.
+
Documentation to do: (any release a little bit at a time)
- Lookup HP tape replacement recommendations (see trouble shooting autochanger)
- Add more obvious documentation of @ for conf files.
- Document doing table repair
+
Testing to do: (painful)
- If you use restore replace=never, the directory attributes for
non-existent directories will not be restored properly.
+Fix:
+ Kern,
+
+ mt status and tapeinfo output are attached. Default blocksize was
+ originally 512 bytes. I ran the following test on my machine:
+
+ - set defblksize to 512
+ - started bacula, labelled tape, ran job
+ - job completes with the following in log
+ SD termination status: OK
+ Termination: Backup OK
+ - restore attempts with blocksize set to 0 or 512 result in the familiar
+ "Volume data error! Wanted block-id BB02, got . Buffer discarded."
+
+
+ # tapeinfo -f /dev/sg0
+ Product Type: Tape Drive
+ Vendor ID: 'SONY '
+ Product ID: 'TSL-11000 '
+ Revision: 'L100'
+ Attached Changer: Yes
+ SerialNumber: '0010000443'
+ MinBlock:1
+ MaxBlock:16777215
+ SCSI ID: 1
+ SCSI LUN: 0
+ Ready: yes
+ BufferedMode: yes
+ Medium Type: Not Loaded
+ Density Code: 0x26
+ BlockSize: 512
+ DataCompEnabled: no
+ DataCompCapable: yes
+ DataDeCompEnabled: yes
+ CompType: 0x20
+ DeCompType: 0x20
+ BOP: yes
+ Block Position: 0
+
+ # mt -f /dev/nst0 status
+ SCSI 2 tape drive:
+ File number=0, block number=132, partition=0.
+ Tape block size 512 bytes. Density code 0x26 (DDS-4 or QIC-4GB).
+ Soft error count since last status=0
+ General status bits on (1010000):
+ ONLINE IM_REP_EN
+
+
+
Wish list:
+- see lzma401.zip in others directory for new compression
+ algorithm/library.
+- Minimal autochanger handling in Bacula and in btape.
+- Look into how tar does not save sockets and the possiblity of
+ not saving them in Bacula (Martin Simmons reported this).
+ The next two lines will show them.
+ localmounts=`awk '/ext/ { print $2 }' /proc/mounts` # or whatever
+ find $localmounts -xdev -type s -ls
+- Fix restore jobs so that multiple jobs can run if they
+ are not using the same tape(s).
- Allow the user to select JobType for manual pruning/purging.
- Look at adding Client run command that will use the
port opened by the client.
- When passwords do not match, print message that points the
user to the doc.
- Do tape alerts -- see tapealert.txt
+- Find memory leaks in address_conf.c
+- Network order of port and ip addresses.
+- SetIP in dird/fd_cmds.c is broken.
+- don't use inet_addr() it is deprecated.
+- Fix code in filed.c for init_bsock();
+- Fix code in console.c for init_bsock();
+- Solve the termcap.h problem on Solaris configure.
+- Make Verify jobs require exclusive use of Volume as Restore
+ jobs do.
+- Fix restore ++++ that get intermingled with "Building directory tree"
+- Fix doc in dirdconf.html for @, where the file must
+ have not a list of files, but
+ file = xxx
+ file = yyy
+- Test Win32 errno handling.
+- port 1.34.6-block.patch to 1.35
+- Look at Chris' patch for bscan bug.
+- Fix error handling in spooling both data and attribute.
+- Implement Ignore FileSet Change.
+- Doc new duration time input editing.
+