-*-text-*- $Header: /CVSROOT/public/scylla-charybdis/md5backup/TODO,v 1.13 2006/10/03 21:16:33 tino Exp $ BUGs: see also [IGN] Sometimes the ignored file is deleted while the backup runs and a new file then is ignored instead of the right file. This file then is backed up on the next run, but this is delayed (and the file still must exist). Also the ignored file is not ignored, in this case, which is undesireable. - Ignore V0.4.x TODOS: 9 Support for file store on drives which do not support hardlinks. There are pretty cheap NAS devices out there: Linksys NSLU2 But this only supports SMB type mounts, not NFS or similar. Perhaps "divide into several independent tasks" can help. The idea two fold: First, allow "meta information" in the file store such that it can be recovered into the DB on the fly. Second, provide an external program to "compress" the file store. However most things can only be done in 0.5.x 9 sqlite instead of GNU-dbm Provide fix script to read old information into sqlite 0 Change logging format (YYYY-MM-DD HH:MM:SS to YYYYMMDD-HHMMSS) Reflect the new length in the logging format (undecided how) Enable fix script, such that old information can be used. V0.5.x TODOS: 0 Change sources to C++. 9 Support for growing files (see doc/growing_files.txt, changes names in file store, such that 0.3.x is no more compatible) Other various TODOS: ? divide the process into several independent tasks which somehow communicate with each other: - a front end forking off the parts and doing the communication. - a scanner/reader which does the backup. - a backend which keeps the file store. This way a networking option can be implemented later. 7 Metadata logs (see doc/metadata.txt) Database gathers metadata and reports changes in the log. 0 Implement "last backup count" etc. in database, such that progress counters can go down instead of up 0 in case ignored files are renamed while the backup is running, the renamed file is ignored, not the ignore itself as it ought to be. This is an unexpected behavior. So recheck the ignore to be still the same file name, and if not, backup the file. Note that you can use wildcard ignores to catch this case. However those type of matching eats much more CPU. [IGN] 4 Better support for sparse files 5 Networking option (file store on another computer) 4 Check for files to change while they are backed up (like databases). That should be fairly easy as files are copied first. 5 Support for compressed files in MD5 storage 1 Sanity checking program for the database 3 Expiry if no more existing files in the database. 2 Expiry of no more used MD5 files in the backup archive. 8 Restore 4 Disconnected file storage (see doc/multi_filestore.txt) 2 Index files within Archives (see doc/multi_filestore.txt) 3 Improve directory scanning (less kernel time, shorter paths). Notes: Urgency is 0 to 9, where 9 is ultra-urgent. However I am not working on those points according to the urgency, I work on it according to mood. -Tino $Log: TODO,v $ Revision 1.13 2006/10/03 21:16:33 tino See Changelog, commit for dist Revision 1.12 2005/07/21 17:51:36 tino changed Revision 1.11 2005/03/06 00:39:37 tino Information corrected according to version 0.3.14 Revision 1.10 2005/03/04 00:44:54 tino concept for separated processes in md5backup added Revision 1.9 2005/03/02 23:32:11 tino first version for multi filestore Revision 1.8 2005/02/20 15:43:09 tino commit for release Revision 1.7 2004/10/05 03:02:13 tino "nice", security lack fixed, new sparse files handling, bin/compare.sh Details see ChangeLog Revision 1.6 2004/09/29 00:02:57 tino prepared new distribution Revision 1.5 2004/06/18 23:51:16 tino see ChangeLog Revision 1.4 2004/05/09 23:25:43 tino moved additional information into doc/ and added current TODOs Revision 1.3 2004/04/24 01:10:45 tino Intermediate version, I start to implement linked file store now Revision 1.2 2004/01/12 00:40:26 tino Clarified, should have done this before 0.1.0 released, *sigh* Revision 1.1 2004/01/07 13:59:32 tino Noted against forgetting