I had some troubles on my website with incomplete views data information after a complete cache rebuild. When debugging the problem, I found out that calling views data within a field hook (what eva in eva_field_extra() does) can be problematic, as the field information (or in my case the entity information wasn't completely rebuilt yet).

The important parts of the backtrace looked something like this:
entity_get_info() -> entity_get_info_alter() -> some modules (like field collection or messages) load entities or field information which invokes the field_info hook -> hook_field_extra_fields() -> eva_field_extra_fields() -> eva_get_views() -> hook_views_data() -> now neither entity_info nor field_extra are completed yet, but modules like search_api (search_api_views_views_data()) are based on this information (for example in my case the profile bundles were missing, as they are added in profile2_entity_info_alter()).

At the moment I have no idea on how to solve this problem, it seems that there are too many dependencies between the systems.

Comments

mh86’s picture

Posted an issue in the Entity API issue queue, as I think the problem needs to be solved there (#1290986: avoid entity_load() during entity info cache rebuilds).

mh86’s picture

Status: Active » Closed (duplicate)