Magento Compiler feature should be disabled on any changes in loaded Magento classes, in other words, you need to disable Magento Compilation every time before installing new extension or initiating upgrade/downgrade/installation or removal of any Magento module.
To disable Magento Compiler you can use one of the following methods:
Admin Interface
- navigate to System > Tools > Compilation page and click on Disable button:
- Flush Magento cache
Disabling Magento compiler when Magento Admin Backend is inaccessible / down
When Magento backend is down or inaccessible you still can disable Magento compiler either via SSH access or any access to store filesystem via FTP/SCP or any filemanager.
Console/SSH
- Check current compilation status
$ php -f shell/compiler.php -- state
Compiler Status: Enabled
Compilation State: Compiled
Collected Files Count: 6042
Compiled Scopes Count: 4
- Disable Magento compilation:
$ php -f shell/compiler.php -- disable
Compiler include path disabled - Clear all compiled files
$ php -f shell/compiler.php -- clear
Compilation successfully cleared - Ensure that compiler is disabled now by checking its status:
$ php -f shell/compiler.php -- state
Compiler Status: Disabled
Compilation State: Not Compiled
Collected Files Count: 0
Compiled Scopes Count: 0 - Flush Magento cache
FTP/Filemanager/Filesystem
- delete includes directory or rename it to any other name (_includes.unused for example):
ftp :~> mv ./includes ./includes.unused
- Flush Magento cache