SugarCRM SMTP/IMAP/SSL/CRON/EXTERNAL_MODULE Problems
DISCLAIMER: This information is provided for informational purposes only and is not guaranteed for any particular purpose, use, or activity. Use at your own risk.
SugarCRM CE is Excellent, but...
We have been using SugarCRM CE since the days of 4.2. We have also been involved in dozens of professional installations as well as their hosted solutions. We really like the IDEA of SugarCRM and we have continued using it and developing for it and even have contributed code to the community edition codebase. Unfortunately, there are some issues with it that we have not had the time to fix and SugarCRM would rather you license their professional version at an ongoing cost.
The major debacle with the Community Edition (SugarCRM CE) is that they use conditionals to generate the code base and so when they generate the CE version large chunks of code are excised before dropping the code into the public repository. This creates lots of subtle problems that SugaCRM probably does not want to fix because they really want you to buy their commercial version.
To date we have found the product to work well when configured to send email via SMTP through a local mail without SSL. SSL adds another level that it seems to have problems with.
Here are work-around or best-case solutions with the major problems we've seen::
SMTP via SSL
This doesn't work well. The embedded module has too many issues managing the SSL certificate and if you have a privately signed key it's even worse. If possible stick with a local (intranet accessible) SMTP server and an plain-text SMTP connection.
WEB-ACCESS VIA SSL
The creators never envisioned that you would want your work-force accessing your CRM via SSL. If you put the product behind an SSL certification you will run into problems when sending campaigns and/or setting calendar appointments/meetings. The product does not expect to be behind an SSL certificate and so generates http:// urls and not https:// urls.
- Make sure your SSL certificate is signed by a recognized authority (otherwise every person that get's an ssl link will have security warnings about your site)
- You have to modify config.php and set the "site_url" to "https://..."
IMAP RELIABILITY
The plain truth is their email client is broken. It doesn't read the IMAP folder completely. Their cronjob frequently breaks with internal memory management corruptions (attempting to release memory that has already been released). It might just stop reading an IMAP account one days for not good reason. Email is a critical piece of CRM and this is one aspect of SugarCRM CE that makes the product almost a no-go.
- Have your users "synchronise" their mailbox to check for latest emails
- If you cannot fetch latest emails check to see if you have an expired SSL certificate on your IMAP server. Even if you've told sugar not to use SSL on the IMAP interface it still checks the certificate. An error will prevent it from checking mail.
- Definitely look in your sugarcrm.log file. Grep for "IMAP".
ON-SCREEN FORM BUGS
We've found that the 6.1.2 release we started seeing a data entry problem. If you have a problem where you are in an opportunity or account and want to schedule an appointment or make a note and you click on the screen to add and it won't let you type into the text fields try some of these items:
- You are probably in the default "brief" entry form. Try clicking on the "full" tab to see the full data entry form. That seems to work in call cases.
CRON JOB FAILS (DOUBLE-FREE CORRUPTION)
Almost every time the cronjob gets run it crashes with a "***DOUBLE-FREE*** Corruption" error. Nobody at Sugar or almost anywhere else seems to know what this means. It's very simple-- It means that when glibc was called it was asked to release a chunk of memory that had previously been released. It would probably be better if glibc reported the error in the syslog and then ignored the call because with modern OOP languages, garbage cleanup, and poor memory management by the developers-- this is bound to happen.
- Unfortunately there is no easy fix for this.
- We are contemplating releasing a glibc that does what we suggested.
If you need help with SugarCRM please give us a call, we can help. Please be sure to check our other knowledbase articles for more detailed SugarCRM and other solutions.
