mirror of
				https://git.code.sf.net/p/seeddms/code
				synced 2025-10-31 13:18:06 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			74 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| Release information for 3.3.0
 | |
| -------------------------------------
 | |
| 
 | |
| This release contains various improvements which require your manual
 | |
| interaction during an upgrade from an earlier version. You should definitely
 | |
| make a backup of your database and possibly your content folder.
 | |
| 
 | |
| Folder search
 | |
| -------------
 | |
| The new folder search has introduced a new database field which has to
 | |
| be initially filled. Without that field searching for subfolders in a
 | |
| folder will not work. See below.
 | |
| 
 | |
| Data conversion
 | |
| ---------------
 | |
| The conversion of strings like names and comments of documents and folders,
 | |
| when saved in the database, has been completely droped. The conversion was
 | |
| originally done for security reasons, both to prevent sql injections and cross
 | |
| side scripting. Basically any field data that could do any harm, was replaced
 | |
| by 'harmless' chars. Ampersands, semi colons, quotes, etc., they all have been
 | |
| replaced by their html entity or masked by a backslash. The output of those
 | |
| fields on html pages was not decoded anymore, but any other application that
 | |
| accessed the database had to decode the data.
 | |
| 
 | |
| The new approach with less impact on the data keeps the data 
 | |
| unmodified when saving it in the database without opening new security
 | |
| wholes. Protection against cross side scripting is done when the data
 | |
| is placed on a html page.
 | |
| 
 | |
| As a consequence the complete database has to be searched for those
 | |
| previously converted strings and converted back into the original value. 
 | |
| 
 | |
| The conversion is done right after the database update during the
 | |
| installation and upgrade process.
 | |
| 
 | |
| Content directory
 | |
| -----------------
 | |
| Each document in LetoDMS is associated with a directory in the file system.
 | |
| Consequently, there is a limitation of documents set by the maximum number
 | |
| of subdirectories in a directory of the filesystem. The currently most used
 | |
| filesystem on Linux (ext3) supports only 31998 directories. In order to
 | |
| overcome this limitation another level of directories has been put inbetween
 | |
| the content directory and the document directory numbered from 1 to
 | |
| maxDirID.  This allows a theorethical maximum of square(maxDirID) documents.
 | |
| The path to the document folder consists of the new path id and the document
 | |
| id (<pathid>/<docid>). The path id is derived from the document id by the
 | |
| formula
 | |
| 
 | |
|   floor(docid/maxDirID) + 1
 | |
| 
 | |
| Hence, all documents with an id from 1 to maxDirID have the path '1/<docid>'.
 | |
| The limiting factor of this schema is the number of document ids. It cannot
 | |
| be higher than square(maxDirID).
 | |
| 
 | |
| If you intend to switch to the new multi level content directory format, you
 | |
| will have to set maxDirID to a value > 0 (possibly 31998) and create one or
 | |
| more new directories starting with name '1' below the content dir and move
 | |
| all document directories into it.  How many new directories are needed
 | |
| depends on the maximum document id already used. If the maximum document id
 | |
| is <= maxDirID, then you will only need one directory named '1'. If the
 | |
| maximum document id is <= 2*maxDirID you will need another directory named
 | |
| '2'.  If you have already a document with id 1 (or 2, 3, 4, ...), you must
 | |
| choose a different name for your new sub directory and rename to 1 (or 2, 3,
 | |
| 4, ...) after all document directories have been moved.
 | |
| 
 | |
| If you want to keep the current content directory structure set maxDirID to
 | |
| 0. Make sure the maxDirID remains unchanged for a content directory.
 | |
| 
 | |
| After finishing update
 | |
| ----------------------
 | |
| Once you are done with the update, log in as administrator and make an
 | |
| object check in the admin tools. This will fill the new database field
 | |
| needed for the folder search and fill it with the appropriate value.
 | 
