Set your file permissions of the SuiteCRM directory to the user of web server eg. www-data, httpd etc… Make sure you set the permissions so that SuiteCRM has write access. Sometimes this is caused by the permissions set in the config.php file:
I see that this workaround solves the issue very nice on the module builder, but not on the studio for the modules already deployed on the system. Relations and fields management works really unstable on the studio actually.
I don’t know the code yet but doing a little research i found that there is a similar file to the file_utils.php which is called sugar_file_utils.php.
I saw on this file that there is the same function called sugar_file_put_contents, my question is if we should apply the same workaround on this file too.
I was wondering to apply something like that on the file_utils.php ( again, i don’t know the code yet and this come from the common sense ). By the way the sugar_file_utils.php is required_once on the file_utils.php , but anyway i’m suspecting that for the studio the application might call directly the sugar_file_utils.php instead of the file_utils.php.
Hi, you’re absolutely right that this issue manifests itself in more places, like
installing modules (SQL not executed)
Adding the fix the the method you proposed would alleviate some of these issues. However, from an architecture viewpoint, the fix should be implemented in SugarCache::cleanFile (include/SugarCache/SugarCache.php), where there is already a fix for APC caching.
SugarCache however should not be called in file_utils.php, because that’s too low level, instead it should be called in those classes that write vardef data (and subsequently call “write_array_to_file” or “sugar_file_put_contents” )
@p.konetskiy, the tabledictionary contains references to metadata which describe relations between modules. This tabledirectory should not affect normal fields (maybe however relate fields) as this field information are not saved in the tabledictionary.
The extra database repair and rebuild that you included in your module post_install.php should not be necessary anymore in 7.11.19 / 7.10.30 and later, but I’ll try it out to make sure.