Problem: some admin settings can not be changed via admin UI.

More info:
Editing them through database does work. It seems that if cache is enabled, the changes go to cache, but not to database.

Happens on:
The production server. Not exact copy of development server (newer versions of PHP for example). The copying of database was done by using db dumb. As far as I can tell, all indexes are same. Cleared cache, didn't help.

Examples:
can not change "User settings -> Public registrations" (the checkbox just returns to old value after submitting change)
Modules -> save configuration does not work (same thing; the old state is loaded)

I'm getting desperate, as the site should be published asap. I'm very grateful for any advice + offering bounty for the best advice.

Comments

marcvangend’s picture

Just to be sure: does the settings.php file point to the right database (the copied one)? Did you write any custom code with hard-coded connections to the development database?
Do you have phpmyadmin, or another tool that can check for corrupt tables? Does the rest of the site write to the database correctly (for instance adding and editing nodes)?

w3dreamer’s picture

settings.php has been checked. No custom code that operates with db. Other db writes work correctly. Will check for corrupt tables. Thanks.

alan d.’s picture

Have you nuked your cache tables? These all start with cache%. eg: "truncate cache_xxx"; "truncate cache";

Have you access to the raw apache/php logs? This may show an error that is not picked up via Drupal logs. Check your php error settings, I think that this should be E_ALL. You can override this using "ini_set('error_reporting', E_ALL);"

Double check that the database user has full access to the tables, and that there are no locks in place.

This is a very strange bug suggested corrupted tables/data.


Alan Davison
www.caignwebs.com.au

Alan Davison
w3dreamer’s picture

There are no errors on apache/php logs (E_ALL is set). Will check what you suggested again. Thanks.

alan d.’s picture

The cache been causing a bit of grief. If you truncate, do a sql count to make sure that it really worked. If you found another solution, can you share.

PS: Send the bounty to Burma or China Red Cross, :)


Alan Davison
www.caignwebs.com.au

Alan Davison
w3dreamer’s picture

It seems that php.ini file had too strict settings. Thank you for your help.
marcvangend, is it ok for you too that I'll send the bounty to Burma? If not, please send your paypal account..

marcvangend’s picture

Please, send it to Burma.
In fact, when I posted my reply I thought: those 50 euro's should go to the Drupal Foundation, because it's the community that is helping you. I wouldn't be here answering your question if it wasn't for the Drupal community. However Burma is a very good destination as well.

By the way, can you elaborate on the "too strict settings" in php.ini, so we can all learn from this? What exactly did you change?