Published
Monday, June 8, 2009 - 13:20
Written by

On a daily basis, we get quite a few interesting bugs / feature requests either via the IRC Channel or via the forums.

We figured that blogging about these requests will be of general interest (inspired by Acquia's S-Files blog). Here are a couple of things that have come up the past few weeks.

  • IRC user proverse (David H) reported some strange interaction between export, contact View/Edit and the caching system. I spent a fair amount of time logged onto his system and tracing the behavior. It finally came down to over-running a mysql database 'text' field (in civicrm_cache) table. Along the way i also hardened some of the export code. You can track the issue and patches CRM-4571. A similar issue bit us in the past, when mailing text/html was limited to the size of the 'text' sql type (64KB). The framework needs to get a bit smarter on db field sizes and throw an exception if we exceed the length. This slows down every db write access, but also makes the code significantly stronger. Definitely hope to get this feature into 3.0.
  • Earlier last week, lcdweb (Brian S) wanted to start using joomla hooks in his client implementations. While we've done quite a bit of hook development and implementation with Drupal, we had not gotten them working with Joomla/Standalone. We took this opportunity to flush out the last few details and get hooks working with Joomla. We are quite confident that the same protocol will work for Standalone. You can read more details on the issue here: Enable Joomla / Standalone to use the mighty power of hooks
  • There have been quite a few instances where users complained about "invalid key" problems / session issues etc. We were not sure of the exact cause and David H popped up on IRC with the same issue. We soon realized that it was some folks using example.com as the url to login, while other folks would use www.example.com. Due to the default cookie behavior, someone can be logged into example.com but be anonymous on www.example.com. While drupal "seems" to work fine on both the urls, most CiviCRM pages give an "access denied" for most civicrm urls. There are two workarounds for this issue: You can set the cookie_domain value in drupal's settings.php. We have not tested this path. The other alternative is to redirect www.example.com to example.com. You can do this with the following snippet

    ServerAlias example.org
    ServerAlias www.example.org
    RewriteCond %{HTTP_HOST} ^www\.example\.org$ [NC]
    RewriteRule ^/(.*)$ http://example\.org/$1 [R=301,L]

    ServerAlias example.org
    ServerAlias www.example.org
    RewriteCond %{HTTP_HOST} ^www\.example\.org$ [NC]
    RewriteRule ^/(.*)$ https://example\.org/$1 [R=301,L]

I suspect future blog posts will be shorter and cover only one issue in depth in future

Comments

This is great, and is along the lines of the summary of micro-developments I was suggesting on an Advisory call - where we trawl the posts and publish a 'best of gotchas, bugs and fixes' for those too busy to read many posts (but then I was suggesting it be offered as a paid subscription but that clearly wasn't going to fly).

please see my testing results for this issue at http://forum.civicrm.org/index.php/topic,8378.0.html

we can continue the conversation there

Useful stuff, good idea! I'll be a regular reader.
Erik