Hi,

Thanks for a great module!

This problem is related to/a continuation of http://drupal.org/node/266960 : The same warnings etc.

I use HS content taxonomy to provide free tagging vocabulary. I enabled caching (admin/settings/performance) and set the minimum cache lifetime to 6 hours. When I tried to add a new term to the vocabulary I got the warnings below. In addition, after the new term is added the HS widget rearranges itself in the form page and is no longer use-able.

* warning: Missing argument 1 for drupal_retrieve_form() in /includes/form.inc on line 179.
* warning: call_user_func_array() [function.call-user-func-array]: First argument is expected to be a valid callback, '' /includes/form.inc on line 218.
* warning: uasort() [function.uasort]: The argument should be an array in /srv/www/creedia.net/includes/common.inc on line 2263.

This happens with and without the patch http://drupal.org/node/266960#comment-1381526

Disabling the cache doesn't help. The only work around I found is to set the min cache lifetime to none.

A few comments:

Drupal's cache_get resets the cache even if the caching mode is disabled, triggered by the call from HS hierarchical_select_json. That is, if you enabled the caching_mode even once, the cache_flash variable is for ever non-zero, and therefore cache_get will assume the cache is enabled and reset it. This rather strange behavior makes it much harder to detect and understand what is going on, as by default in a fresh install the bug above will not happen.

When a new term is added, the first ajax call successfully adds the term. The second ajax call, which I think is supposed to retrieve the information of the newly added term returns with a null ajax response that causes the HS wizard to malfunction. hierarchical_select_json doesn't find the form parameters in the cache, although the form id etc are all correct. I think the cache is reset during the processing of the first ajax call, but I didn't go as far as understand what exactly is happening there.

Best,
Bluetegu

Comments

wim leers’s picture

Category: bug » support
Status: Active » Postponed (maintainer needs more info)

I don't understand how the page cache could ever affect HS. "min cache lifetime" is a page cache setting, not a setting that applies to every cache. So unless you've got a custom page into which you're rendering a form with HS for anonymous visitors — in which case you should disable caching for that one page — this cannot be happening.

wim leers’s picture

Status: Postponed (maintainer needs more info) » Closed (fixed)

Closing due to lack of response.