I try to edit Condition to Rule After Saving Content and get:
Fatal error: Unsupported operand types in /Volumes/sites/all/modules/rules/includes/rules.state.inc on line 620


marko42’s picture

I am getting the same error. I'm also using 7.14.

brandy.brown’s picture

Same problem here. Breaks entire site.

I get it on 2.1 and the -dev versions.

marko42’s picture

I brought my module versions up to date and ran update.php. Now the problem has cleared. I don't know why exactly.

_KASH_’s picture

Fatal error: Unsupported operand types in xxxxxx/sites/all/modules/contrib/rules/includes/rules.state.inc on line 620

running 7.x-2.x-dev

emcniece’s picture

Component:Rules Engine» Rules Core

Do you guys have Node Export or UUID installed? Try getting rid of it - that worked for me.

http://drupal.org/node/1423234 has some patches that might be of use, I didn't get a chance to try them out.

timofey’s picture

Clearing cache did the trick.

pschuelke’s picture

Same error for me. Tried patch suggested in #5; made it worse. Clearing the cache didn't help. I do have Node Export and UUID installed but can't get rid of them.

greg.1.anderson’s picture

Haven't really had a chance to look into this deeply; I just did the naive thing, and changed line 620 like this:

+    if (array_key_exists('properties', $site_info)) {
        $property_info['properties'] += $site_info['properties'];
+    }

Edit: Don't do this! See below.

greg.1.anderson’s picture

Hm, I don't think #8 is helpful. It took away the errors all right, but the missing information in $site_info is important (!); rules cannot be successfully set up without it. Disabling the uuid module did the trick.

skamble’s picture

I am getting same errors and i used drupal 7.14. I try #6 solutions for clear cache and its work for me.

gomanual’s picture

Removing UUID worked for me.

ronigal’s picture

Updating module UUID to uuid-7.x-1.x-dev solved the problem.

tengoku’s picture

same here.... disabling uuid fixed the problem

radiobuzzer’s picture

Same problem here.

mitchell’s picture

Status:Active» Fixed

Looks like this was a bug in previous versions of UUID and/or stale Rules caches.

If there's a UUID bug to track down, please open a new issue there and link to this issue.

Status:Fixed» Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

jaykainthola’s picture

#8 Worked for me.

nd987’s picture

The latest dev version of UUID fixes this issue.

emudojo’s picture

Updating to the latest dev for uuid solved the problem for me as well, this time using pressflow 7.14

netgenius’s picture

Same issue with everything up to date, core 7.21, also fixed by disabling UUID (I din't try the dev version of UUID so can't confirm whether that works or not).

owntheweb’s picture

I've run into this error on multiple occasions, when updating modules such as Token, Entity API, Rules and some others (some of those listed are likely not related). I start noticing these errors when attempting to save content that trigger rules, looking at the Rules configuration page in general or when attempting to edit a rule (ajax errors).

The fix for me is usually pretty simple (and I'm posting here to help myself remember when this happens again):

  • Update UUID to the latest dev version
  • Run update.php
  • Clear Drupal cache
  • If errors go away:
    • Celebrate!
  • Else:
drastik’s picture


Love it :)
I was just going through the same thing today, and about to make a very similar post.

JamesRobertson’s picture

I followed @owntheweb in post #21. I held my breath - nothing happened. Still the same error. I cried a bit then went into rules.state.inc and replaced

$property_info['properties'] += $site_info['properties'];


if(!empty($site_info['properties']))$property_info['properties'] += $site_info['properties'];

I have absolutely no idea what I have done - but at least i can now access my Rules.

I may have, unwittingly, sold my soul to the devil, but, hey, at least my site has started working again.

greg.1.anderson’s picture

#23 is essentially the same as #8. As I mentioned in #9, this simple modification is destructive to the happy operation of rules, and will hurt you later. I recommend #21.

decibel.places’s picture

followed #21

had to checkout latest 7.x-1.x branch of uuid from git, a db update was run, cleared cache and

happy now

pbz1912’s picture

Disabled uuid. It worked. uuid alpha-4 still broken, don't have the option to use dev where I am. Didn't have any actual use of uuid that needed it to stay in for the time being. However, I suspect that may change soon.

kevla’s picture

:( I'm having the same issue here. Although I don't have UUID.

dynamiz77’s picture

Status:Closed (fixed)» Active

just like kcmanc87 I don't have UUID module installed and am still getting this error - anybody got a solution? (Have the latest version of Rules Module - 7.x-2.4

Drupal core 7.23

dynamiz77’s picture

new11.82 KB

Sorry - Forgot to attach the pic of the error.

dynamiz77’s picture

Issue summary:View changes


Reg’s picture

Issue summary:View changes
new1.5 KB

I just came across this issue and I do not have UUID installed. In my case it happens every time I log in.

Looking for other instances of entity_get_property_info('site') I came across this in the entity module:

 * Returns a metadata wrapper for accessing site-wide properties.
 * Although there is no 'site' entity or such, modules may provide info about
 * site-wide properties using hook_entity_property_info(). This function returns
 * a wrapper for making use of this properties.
 * @return EntityMetadataWrapper
 *   A wrapper for accessing site-wide properties.
 * @see entity_metadata_system_entity_property_info()
function entity_metadata_site_wrapper() {
  $site_info = entity_get_property_info('site');
  $info['property info'] = $site_info['properties'];
  return entity_metadata_wrapper('site', FALSE, $info);

What the comment suggests to me is that if no modules provide site wide information then the 'properties' array element can be non-existent. This being the case #8 is a correct solution.

If you want to give the function some site wide variables then we can look at the system module and pull the variables from system_site_information_settings() which I have done in the patch.

areynolds’s picture

Seeing as the entity module adds in the site info in system.info.inc's entity_metadata_system_entity_property_info() call, I don't think the patch in #30 should be necessary.

If this implementation were to be pursued, the naming of the properties should be brought into line with what is defined in the aforementioned function. If applied as currently formatted, this patch will break rules which use most site properties, since the naming defined in this patch is different.