One can only "prepend" something before some other thing, not "append".
[squirrelmail.git] / doc / db-backend.txt
index ed53bc4adeb0fd9135f7c569a4b7834c184907ff..76f423aa82dc896c4cddb1bc7ebb9da3466a9542 100644 (file)
@@ -23,7 +23,8 @@ containg them is a part of your PHP include path. See the PHP
 documentation for information on how to do that.
 Under Mandrake Linux the PEAR classes are installed as part of the
 php-devel package and under FreeBSD they are installed as part of
-the mod_php4 or php4 port/package. I'm afraid I have no information on
+the mod_php4 or php4 port/package. In Debian, you can install the
+php4-pear package. I'm afraid I have no information on
 other systems at the present time.
 
 
@@ -39,7 +40,7 @@ For MySQL you would normally do something like:
  # mysqladmin create squirrelmail
 
  (from the mysql client)
- mysql> GRANT select,insert,update,delete ON squirrelmail.* 
+ mysql> GRANT select,insert,update,delete ON squirrelmail.*
               TO squirreluser@localhost IDENTIFIED BY 'sqpassword';
 
 The table structure should be similar to this (for MySQL):
@@ -118,3 +119,24 @@ database.
 
 Default preferences can be set by altering the $default array in
 db_prefs.php.
+
+Troubleshooting
+---------------
+1. Oversized field values. Preferences are not/can't be saved
+
+Database fields have size limits. Preference table example sets 128 
+character limit to owner field, 64 character limit to preference key 
+field and 64KB (database BLOB field size) limit to value field.
+
+If interface tries to insert data without checking field limits, it
+can cause data loss or database errors. Table information functions
+provided by Pear DB libraries are not accurate and some database 
+backends don't support them. Since 1.5.1 SquirrelMail provides
+configuration options that set allowed field sizes.
+
+If you see oversized field errors in your error logs - check your 
+database structure. Issue can be solved by increasing database field 
+sizes.
+
+If you want to get more debugging information - check setKey() function 
+in dbPrefs class. Class is stored in functions/db_prefs.php