getDefinitions() as $entity_type_id => $entity_type) { if (strpos($entity_type_id, 'entity_test') === FALSE) { continue; } if (!$entity_type->hasControllerClass('storage')) { continue; } $storage_controller = $entity_manager->getStorageController($entity_type_id); if (!($storage_controller instanceof FieldableDatabaseStorageController)) { continue; } $provider = $entity_type->getProvider(); $module = $module_handler->moduleExists($provider) ? $provider : 'system'; $tables = array(); $tables[] = $entity_type->getBaseTable(); $tables[] = $entity_type->getDataTable(); $tables[] = $entity_type->getRevisionTable(); $tables[] = $entity_type->getRevisionDataTable(); $tables = array_filter($tables); foreach ($tables as $table) { $old_schema[$entity_type_id][$table] = drupal_get_schema_unprocessed($module, $table); } $new_schema[$entity_type_id] = $storage_controller->getSchema(); } ignore_keys($old_schema); ignore_keys($new_schema); recursive_ksort($old_schema); recursive_ksort($new_schema); file_put_contents('/tmp/old_schema.txt', var_export($old_schema, TRUE) . "\n"); file_put_contents('/tmp/new_schema.txt', var_export($new_schema, TRUE) . "\n"); exec('diff -up /tmp/old_schema.txt /tmp/new_schema.txt', $output); foreach ($output as $line) { print "$line\n"; }