I followed all the instructions for upgrading to D7 from D6. Once I run the update.php script, I get the following error "

An AJAX HTTP error occurred. HTTP Result Code: 200 Debugging information follows. Path: http://peoriaparent5:8082/update.php?id=459&op=do StatusText: OK ResponseText: Fatal error: Call to undefined function _update_7000_field_read_fields() in C:\Users\Mahmoud\Sites\peoriaparent5to6\modules\forum\forum.install on line 354

The update process was aborted prematurely while running update #7003 in forum.module.

Has anyone seem something similar ?

THanks

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

Tor Arne Thune’s picture

Title: Troubles upgrading from D6 to D7 » Call to undefined function _update_7000_field_read_fields()
Component: update.module » database update system
Priority: Major » Critical
Issue tags: +Upgrade path

Just adding a new title to make it easier to find for others searching for issues detailing the same problem as they have. Also changing to the right component and adding a tag. As this renders a system unusable, the priority is critical.

matmasr’s picture

Ok, I thought of giving out more details. I have site that I am upgrading from Drupal 5 to 7. I went through the upgrade from D5 to D6 sucessfully. I updated my core Drupal to the latest version of D5 and uploaded all the latest versions of contributed modules. Like I said the upgrade from D5 to D6 went relatively smooth.

For the D6 to D7 upgrade, I used the latest stable version of the contributed modules in D7, and the latest D7.4 core. I disabled all the non-core modules, made a backup of my D6 database and files. As I started the update.php script in D7, every works fine until I received that error above which seems to be related to the update path for the forum core module.

I am now reconsidering my upgrade to D7 and may just stick with D6 for a while.

Any thoughts on the cause of this bug ?
Thanks

catch’s picture

Version: 7.4 » 7.x-dev
Status: Active » Needs review
FileSize
577 bytes

Untested patch, but this might be the problem - it looks like the forum upgrade is running before field module is installed.

Also this might be a duplicate of #717834: The dependencies declared in core's hook_update_dependencies() implementations aren't actually correct (or at least, you might need the patch there as well).

Status: Needs review » Needs work

The last submitted patch, forum_dependencies.patch, failed testing.

catch’s picture

Status: Needs work » Needs review
FileSize
602 bytes

Status: Needs review » Needs work

The last submitted patch, forum_dependencies.patch, failed testing.

catch’s picture

Status: Needs work » Needs review
FileSize
599 bytes

No wonder it fails, wrong function name :(

Status: Needs review » Needs work

The last submitted patch, forum_dependencies.patch, failed testing.

catch’s picture

FileSize
747 bytes

OK that's the right kind of fail now. Let's try this.

catch’s picture

Status: Needs work » Needs review

Status: Needs review » Needs work

The last submitted patch, forum_dependencies.patch, failed testing.

matmasr’s picture

Is there any chance this could be resolved. I am now left with either recreating my site from scratch from a fresh D7 installation, or just keep mt site running on D6.

catch’s picture

Have you tried the patch linked from #3? that needs to go in first and that won't happen without more testing.

matmasr’s picture

So should I tried patch # 3 although it failed testing already ?

catch’s picture

I meant try the latest patch from #717834: The dependencies declared in core's hook_update_dependencies() implementations aren't actually correct, sorry was in a bit of a hurry when I typed that. Even if that patch doesn't work, please report back if you get the same error or a different one.

matmasr’s picture

I tested the patch above #717834: The dependencies declared in core's hook_update_dependencies() implementations aren't actually correct: The dependencies declared in core's hook_update_dependencies() implementations aren't actually correct.

Then attempted the update again. Got the same error

An AJAX HTTP error occurred. HTTP Result Code: 200 Debugging information follows. Path: http://peoriaparent5:8082/update.php?id=457&op=do StatusText: OK ResponseText: Fatal error: Call to undefined function _update_7000_field_read_fields() in C:\Users\Mahmoud\Sites\peoriaparent5to6\modules\forum\forum.install on line 354

matmasr’s picture

Here is some additional error messages at the end of the aborted update

The following updates returned messages
user module
Update #7000

    User passwords rehashed to improve security

Update #7002

    Migrated user time zones

filter module
Update #7003

    Failed: PDOException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '0-php_code' for key 'PRIMARY': INSERT INTO {filter} (format, module, name, weight, settings, status) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4, :db_insert_placeholder_5); Array ( [:db_insert_placeholder_0] => 0 [:db_insert_placeholder_1] => php [:db_insert_placeholder_2] => php_code [:db_insert_placeholder_3] => 2 [:db_insert_placeholder_4] => a:0:{} [:db_insert_placeholder_5] => 1 ) in filter_update_7003() (line 334 of C:\Users\Mahmoud\Sites\peoriaparent5to6\modules\filter\filter.install).

system module
Update #7007

    Failed: PDOException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '1-access content' for key 'PRIMARY': INSERT INTO {role_permission} (rid, permission) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1), (:db_insert_placeholder_2, :db_insert_placeholder_3), (:db_insert_placeholder_4, :db_insert_placeholder_5), (:db_insert_placeholder_6, :db_insert_placeholder_7), (:db_insert_placeholder_8, :db_insert_placeholder_9), (:db_insert_placeholder_10, :db_insert_placeholder_11), (:db_insert_placeholder_12, :db_insert_placeholder_13), (:db_insert_placeholder_14, :db_insert_placeholder_15), (:db_insert_placeholder_16, :db_insert_placeholder_17), (:db_insert_placeholder_18, :db_insert_placeholder_19), (:db_insert_placeholder_20, :db_insert_placeholder_21), (:db_insert_placeholder_22, :db_insert_placeholder_23), (:db_insert_placeholder_24, :db_insert_placeholder_25), (:db_insert_placeholder_26, :db_insert_placeholder_27), (:db_insert_placeholder_28, :db_insert_placeholder_29), (:db_insert_placeholder_30, :db_insert_placeholder_31), (:db_insert_placeholder_32, :db_insert_placeholder_33), (:db_insert_placeholder_34, :db_insert_placeholder_35), (:db_insert_placeholder_36, :db_insert_placeholder_37), (:db_insert_placeholder_38, :db_insert_placeholder_39), (:db_insert_placeholder_40, :db_insert_placeholder_41), (:db_insert_placeholder_42, :db_insert_placeholder_43), (:db_insert_placeholder_44, :db_insert_placeholder_45), (:db_insert_placeholder_46, :db_insert_placeholder_47), (:db_insert_placeholder_48, :db_insert_placeholder_49), (:db_insert_placeholder_50, :db_insert_placeholder_51), (:db_insert_placeholder_52, :db_insert_placeholder_53), (:db_insert_placeholder_54, :db_insert_placeholder_55), (:db_insert_placeholder_56, :db_insert_placeholder_57), (:db_insert_placeholder_58, :db_insert_placeholder_59), (:db_insert_placeholder_60, :db_insert_placeholder_61), (:db_insert_placeholder_62, :db_insert_placeholder_63), (:db_insert_placeholder_64, :db_insert_placeholder_65), (:db_insert_placeholder_66, :db_insert_placeholder_67), (:db_insert_placeholder_68, :db_insert_placeholder_69), (:db_insert_placeholder_70, :db_insert_placeholder_71), (:db_insert_placeholder_72, :db_insert_placeholder_73), (:db_insert_placeholder_74, :db_insert_placeholder_75), (:db_insert_placeholder_76, :db_insert_placeholder_77), (:db_insert_placeholder_78, :db_insert_placeholder_79), (:db_insert_placeholder_80, :db_insert_placeholder_81), (:db_insert_placeholder_82, :db_insert_placeholder_83), (:db_insert_placeholder_84, :db_insert_placeholder_85), (:db_insert_placeholder_86, :db_insert_placeholder_87), (:db_insert_placeholder_88, :db_insert_placeholder_89), (:db_insert_placeholder_90, :db_insert_placeholder_91), (:db_insert_placeholder_92, :db_insert_placeholder_93), (:db_insert_placeholder_94, :db_insert_placeholder_95), (:db_insert_placeholder_96, :db_insert_placeholder_97), (:db_insert_placeholder_98, :db_insert_placeholder_99), (:db_insert_placeholder_100, :db_insert_placeholder_101), (:db_insert_placeholder_102, :db_insert_placeholder_103), (:db_insert_placeholder_104, :db_insert_placeholder_105), (:db_insert_placeholder_106, :db_insert_placeholder_107), (:db_insert_placeholder_108, :db_insert_placeholder_109), (:db_insert_placeholder_110, :db_insert_placeholder_111), (:db_insert_placeholder_112, :db_insert_placeholder_113), (:db_insert_placeholder_114, :db_insert_placeholder_115), (:db_insert_placeholder_116, :db_insert_placeholder_117), (:db_insert_placeholder_118, :db_insert_placeholder_119), (:db_insert_placeholder_120, :db_insert_placeholder_121), (:db_insert_placeholder_122, :db_insert_placeholder_123), (:db_insert_placeholder_124, :db_insert_placeholder_125), (:db_insert_placeholder_126, :db_insert_placeholder_127), (:db_insert_placeholder_128, :db_insert_placeholder_129), (:db_insert_placeholder_130, :db_insert_placeholder_131), (:db_insert_placeholder_132, :db_insert_placeholder_133), (:db_insert_placeholder_134, :db_insert_placeholder_135), (:db_insert_placeholder_136, :db_insert_placeholder_137), (:db_insert_placeholder_138, :db_insert_placeholder_139), (:db_insert_placeholder_140, :db_insert_placeholder_141), (:db_insert_placeholder_142, :db_insert_placeholder_143), (:db_insert_placeholder_144, :db_insert_placeholder_145), (:db_insert_placeholder_146, :db_insert_placeholder_147), (:db_insert_placeholder_148, :db_insert_placeholder_149), (:db_insert_placeholder_150, :db_insert_placeholder_151), (:db_insert_placeholder_152, :db_insert_placeholder_153), (:db_insert_placeholder_154, :db_insert_placeholder_155), (:db_insert_placeholder_156, :db_insert_placeholder_157), (:db_insert_placeholder_158, :db_insert_placeholder_159), (:db_insert_placeholder_160, :db_insert_placeholder_161), (:db_insert_placeholder_162, :db_insert_placeholder_163), (:db_insert_placeholder_164, :db_insert_placeholder_165), (:db_insert_placeholder_166, :db_insert_placeholder_167), (:db_insert_placeholder_168, :db_insert_placeholder_169), (:db_insert_placeholder_170, :db_insert_placeholder_171), (:db_insert_placeholder_172, :db_insert_placeholder_173), (:db_insert_placeholder_174, :db_insert_placeholder_175), (:db_insert_placeholder_176, :db_insert_placeholder_177), (:db_insert_placeholder_178, :db_insert_placeholder_179), (:db_insert_placeholder_180, :db_insert_placeholder_181), (:db_insert_placeholder_182, :db_insert_placeholder_183), (:db_insert_placeholder_184, :db_insert_placeholder_185), (:db_insert_placeholder_186, :db_insert_placeholder_187), (:db_insert_placeholder_188, :db_insert_placeholder_189), (:db_insert_placeholder_190, :db_insert_placeholder_191), (:db_insert_placeholder_192, :db_insert_placeholder_193), (:db_insert_placeholder_194, :db_insert_placeholder_195), (:db_insert_placeholder_196, :db_insert_placeholder_197), (:db_insert_placeholder_198, :db_insert_placeholder_199), (:db_insert_placeholder_200, :db_insert_placeholder_201), (:db_insert_placeholder_202, :db_insert_placeholder_203); Array ( [:db_insert_placeholder_0] => 1 [:db_insert_placeholder_1] => access content [:db_insert_placeholder_2] => 1 [:db_insert_placeholder_3] => access content [:db_insert_placeholder_4] => 2 [:db_insert_placeholder_5] => access news feeds [:db_insert_placeholder_6] => 2 [:db_insert_placeholder_7] => create blog entries [:db_insert_placeholder_8] => 2 [:db_insert_placeholder_9] => edit own blog entries [:db_insert_placeholder_10] => 2 [:db_insert_placeholder_11] => access comments [:db_insert_placeholder_12] => 2 [:db_insert_placeholder_13] => post comments [:db_insert_placeholder_14] => 2 [:db_insert_placeholder_15] => post comments without approval [:db_insert_placeholder_16] => 2 [:db_insert_placeholder_17] => access site-wide contact form [:db_insert_placeholder_18] => 2 [:db_insert_placeholder_19] => create forum topics [:db_insert_placeholder_20] => 2 [:db_insert_placeholder_21] => edit own forum content [:db_insert_placeholder_22] => 2 [:db_insert_placeholder_23] => create images [:db_insert_placeholder_24] => 2 [:db_insert_placeholder_25] => edit own images [:db_insert_placeholder_26] => 2 [:db_insert_placeholder_27] => delete own images [:db_insert_placeholder_28] => 2 [:db_insert_placeholder_29] => rate content [:db_insert_placeholder_30] => 2 [:db_insert_placeholder_31] => access content [:db_insert_placeholder_32] => 2 [:db_insert_placeholder_33] => create bulletin_board_entry content [:db_insert_placeholder_34] => 2 [:db_insert_placeholder_35] => create pp_group_page content [:db_insert_placeholder_36] => 2 [:db_insert_placeholder_37] => create ppcalevent content [:db_insert_placeholder_38] => 2 [:db_insert_placeholder_39] => edit own bulletin_board_entry content [:db_insert_placeholder_40] => 2 [:db_insert_placeholder_41] => edit own pp_group_page content [:db_insert_placeholder_42] => 2 [:db_insert_placeholder_43] => edit own ppcalevent content [:db_insert_placeholder_44] => 2 [:db_insert_placeholder_45] => create poll content [:db_insert_placeholder_46] => 2 [:db_insert_placeholder_47] => vote on polls [:db_insert_placeholder_48] => 2 [:db_insert_placeholder_49] => search content [:db_insert_placeholder_50] => 2 [:db_insert_placeholder_51] => subscribe to newsletters [:db_insert_placeholder_52] => 2 [:db_insert_placeholder_53] => access news feeds [:db_insert_placeholder_54] => 2 [:db_insert_placeholder_55] => create blog entries [:db_insert_placeholder_56] => 2 [:db_insert_placeholder_57] => edit own blog entries [:db_insert_placeholder_58] => 2 [:db_insert_placeholder_59] => access comments [:db_insert_placeholder_60] => 2 [:db_insert_placeholder_61] => post comments [:db_insert_placeholder_62] => 2 [:db_insert_placeholder_63] => post comments without approval [:db_insert_placeholder_64] => 2 [:db_insert_placeholder_65] => access site-wide contact form [:db_insert_placeholder_66] => 2 [:db_insert_placeholder_67] => create forum topics [:db_insert_placeholder_68] => 2 [:db_insert_placeholder_69] => edit own forum content [:db_insert_placeholder_70] => 2 [:db_insert_placeholder_71] => create images [:db_insert_placeholder_72] => 2 [:db_insert_placeholder_73] => edit own images [:db_insert_placeholder_74] => 2 [:db_insert_placeholder_75] => delete own images [:db_insert_placeholder_76] => 2 [:db_insert_placeholder_77] => rate content [:db_insert_placeholder_78] => 2 [:db_insert_placeholder_79] => access content [:db_insert_placeholder_80] => 2 [:db_insert_placeholder_81] => create bulletin_board_entry content [:db_insert_placeholder_82] => 2 [:db_insert_placeholder_83] => create pp_group_page content [:db_insert_placeholder_84] => 2 [:db_insert_placeholder_85] => create ppcalevent content [:db_insert_placeholder_86] => 2 [:db_insert_placeholder_87] => edit own bulletin_board_entry content [:db_insert_placeholder_88] => 2 [:db_insert_placeholder_89] => edit own pp_group_page content [:db_insert_placeholder_90] => 2 [:db_insert_placeholder_91] => edit own ppcalevent content [:db_insert_placeholder_92] => 2 [:db_insert_placeholder_93] => create poll content [:db_insert_placeholder_94] => 2 [:db_insert_placeholder_95] => vote on polls [:db_insert_placeholder_96] => 2 [:db_insert_placeholder_97] => search content [:db_insert_placeholder_98] => 2 [:db_insert_placeholder_99] => subscribe to newsletters [:db_insert_placeholder_100] => 3 [:db_insert_placeholder_101] => access news feeds [:db_insert_placeholder_102] => 3 [:db_insert_placeholder_103] => create blog entries [:db_insert_placeholder_104] => 3 [:db_insert_placeholder_105] => edit own blog entries [:db_insert_placeholder_106] => 3 [:db_insert_placeholder_107] => access comments [:db_insert_placeholder_108] => 3 [:db_insert_placeholder_109] => administer comments [:db_insert_placeholder_110] => 3 [:db_insert_placeholder_111] => post comments [:db_insert_placeholder_112] => 3 [:db_insert_placeholder_113] => post comments without approval [:db_insert_placeholder_114] => 3 [:db_insert_placeholder_115] => access site-wide contact form [:db_insert_placeholder_116] => 3 [:db_insert_placeholder_117] => administer forums [:db_insert_placeholder_118] => 3 [:db_insert_placeholder_119] => create forum topics [:db_insert_placeholder_120] => 3 [:db_insert_placeholder_121] => edit own forum content [:db_insert_placeholder_122] => 3 [:db_insert_placeholder_123] => create images [:db_insert_placeholder_124] => 3 [:db_insert_placeholder_125] => edit own images [:db_insert_placeholder_126] => 3 [:db_insert_placeholder_127] => delete own images [:db_insert_placeholder_128] => 3 [:db_insert_placeholder_129] => rate content [:db_insert_placeholder_130] => 3 [:db_insert_placeholder_131] => access content [:db_insert_placeholder_132] => 3 [:db_insert_placeholder_133] => create bulletin_board_entry content [:db_insert_placeholder_134] => 3 [:db_insert_placeholder_135] => create busidirectory content [:db_insert_placeholder_136] => 3 [:db_insert_placeholder_137] => create page content [:db_insert_placeholder_138] => 3 [:db_insert_placeholder_139] => create pp_group_page content [:db_insert_placeholder_140] => 3 [:db_insert_placeholder_141] => create ppcalevent content [:db_insert_placeholder_142] => 3 [:db_insert_placeholder_143] => create story content [:db_insert_placeholder_144] => 3 [:db_insert_placeholder_145] => edit any bulletin_board_entry content [:db_insert_placeholder_146] => 3 [:db_insert_placeholder_147] => edit any busidirectory content [:db_insert_placeholder_148] => 3 [:db_insert_placeholder_149] => edit own bulletin_board_entry content [:db_insert_placeholder_150] => 3 [:db_insert_placeholder_151] => edit own busidirectory content [:db_insert_placeholder_152] => 3 [:db_insert_placeholder_153] => edit own page content [:db_insert_placeholder_154] => 3 [:db_insert_placeholder_155] => edit own pp_group_page content [:db_insert_placeholder_156] => 3 [:db_insert_placeholder_157] => edit own ppcalevent content [:db_insert_placeholder_158] => 3 [:db_insert_placeholder_159] => edit own story content [:db_insert_placeholder_160] => 3 [:db_insert_placeholder_161] => edit any page content [:db_insert_placeholder_162] => 3 [:db_insert_placeholder_163] => edit any pp_group_page content [:db_insert_placeholder_164] => 3 [:db_insert_placeholder_165] => edit any ppcalevent content [:db_insert_placeholder_166] => 3 [:db_insert_placeholder_167] => edit any story content [:db_insert_placeholder_168] => 3 [:db_insert_placeholder_169] => administer organic groups [:db_insert_placeholder_170] => 3 [:db_insert_placeholder_171] => cancel own vote [:db_insert_placeholder_172] => 3 [:db_insert_placeholder_173] => create poll content [:db_insert_placeholder_174] => 3 [:db_insert_placeholder_175] => inspect all votes [:db_insert_placeholder_176] => 3 [:db_insert_placeholder_177] => vote on polls [:db_insert_placeholder_178] => 3 [:db_insert_placeholder_179] => administer search [:db_insert_placeholder_180] => 3 [:db_insert_placeholder_181] => search content [:db_insert_placeholder_182] => 3 [:db_insert_placeholder_183] => use advanced search [:db_insert_placeholder_184] => 3 [:db_insert_placeholder_185] => administer newsletters [:db_insert_placeholder_186] => 3 [:db_insert_placeholder_187] => create simplenews content [:db_insert_placeholder_188] => 3 [:db_insert_placeholder_189] => edit any simplenews content [:db_insert_placeholder_190] => 3 [:db_insert_placeholder_191] => edit own simplenews content [:db_insert_placeholder_192] => 3 [:db_insert_placeholder_193] => send newsletter [:db_insert_placeholder_194] => 3 [:db_insert_placeholder_195] => subscribe to newsletters [:db_insert_placeholder_196] => 3 [:db_insert_placeholder_197] => view links in block [:db_insert_placeholder_198] => 3 [:db_insert_placeholder_199] => access statistics [:db_insert_placeholder_200] => 3 [:db_insert_placeholder_201] => access administration pages [:db_insert_placeholder_202] => 3 [:db_insert_placeholder_203] => access user profiles ) in system_update_7007() (line 1892 of C:\Users\Mahmoud\Sites\peoriaparent5to6\modules\system\system.install).

contact module
Update #7002

    Failed: PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'module' in 'where clause': SELECT 1 AS expression FROM {role_permission} role_permission WHERE ( (rid = :db_condition_placeholder_0) AND (permission = :db_condition_placeholder_1) AND (module = :db_condition_placeholder_2) ) FOR UPDATE; Array ( [:db_condition_placeholder_0] => 2 [:db_condition_placeholder_1] => access user contact forms [:db_condition_placeholder_2] => contact ) in contact_update_7002() (line 127 of C:\Users\Mahmoud\Sites\peoriaparent5to6\modules\contact\contact.install).
catch’s picture

Status: Needs work » Needs review
Issue tags: -Upgrade path +D7 upgrade path
FileSize
747 bytes

Looks like you have more issues with your db than just this. For that filter issue, please see #1211796: Drupal 6 -> 7 upgrade can fail due to unique indexes added in Drupal 6.

I'm uploading a new patch, I can't reproduce the failure you're getting, but this passes automated tests locally (but so does the current code in Drupal 7 so that's no guarantee this will fix your problem).

catch’s picture

Title: Call to undefined function _update_7000_field_read_fields() » Call to undefined function _update_7000_field_read_fields() during forum update
matmasr’s picture

Reverted back to the D6 installation. Applied the patch to D7 and reran the installation. This time I got this error.

An AJAX HTTP error occurred. HTTP Result Code: 200 Debugging information follows. Path: http://peoriaparent5live:8082/update.php?id=457&op=do StatusText: OK ResponseText: Fatal error: Call to undefined function _update_7000_field_read_fields() in C:\Users\Mahmoud\Sites\peoriaparent5live\modules\field\modules\text\text.install on line 78

So at least the fatal error is not occurring in the forum module, but now looks like it in the field module ?

catch’s picture

text module updates should not be running during D6-D7, unless you have a 'text' module installed in D6.

matmasr’s picture

The text module in D6 is installed as part of the CCK module. Do I need to uninstall the CCK module from D6 before the upgrade ?

catch’s picture

That's a good question, opening a new issue for this.

catch’s picture

sun’s picture

Title: Call to undefined function _update_7000_field_read_fields() during forum update » Call to undefined function _update_7000_field_read_fields() during Forum update 7003
matmasr’s picture

@catch.

I wanted to let you know that I reran the update process all over again from D5 to D6 to D7. This time I has NO fatal errors at all. There were several errors that I can post here later if you are interested, but none were show stoppers.

I looked at my content, and as far as I can tell, the integrity of the data looks good. All stories, pages and custom content show fine ???? Very strange.

Anyway, the only problem is with a custom content that I had that had a custom DATE field is not showing in my calendar view. I am getting a SQL error when the view is displayed. I am not sure if this is realted to an improper update or something else.

I want to know what information you would like me to provide to help diagnose and close this current open issue?

xjm’s picture

Tagging issues not yet using summary template.

David_Rothstein’s picture

Subscribing.

xjm’s picture

Priority: Critical » Normal
Status: Needs review » Postponed (maintainer needs more info)

Since the original poster's issues appear to be resolved, and the particular site appears to have multiple upgrade path issues, downgrading and postponing this for additional reports. If you encounter the error message in the title during an upgrade, please try the following steps and report here whether they resolve the issue and what results you get at each step:

  1. Back up your database!
  2. Disable non-core modules before running your upgrade.
  3. Apply latest patch in #717834: The dependencies declared in core's hook_update_dependencies() implementations aren't actually correct and see if it resolves the issue.
  4. Apply the patch in #18 and see if it resolves the issue.
  5. Apply both these patches together and see if it resolves the issue.

Also, if you encounter the error, set the issue back to needs work if the problem persists, or needs review if any of the steps resolve your issue.

catch’s picture

Status: Postponed (maintainer needs more info) » Needs review

Hmm I think the patch makes sense whether we get more reports or not, but fine with downgrading if this is the only one we get.

catch’s picture

#18: forum_upgrade.patch queued for re-testing.

dan_aka_jack’s picture

I just attempted to upgrade from Drupal 5.23 to 6.22 to 7.8. The upgrade from 5.23 to 6.22 went fine but the upgrade from 6.22 to 7.8 resulted in the same "Fatal error: Call to undefined function _update_7000_field_read_fields()" mentioned by the original poster above.

I got the upgrade to work by going back to 6.22 and applying the patch in #18 to the 7.8 code and then upgrading to 7.8. All seems well now.

xjm’s picture

Status: Needs review » Reviewed & tested by the community

@dan_aka_jack: Thank you for the clear report! Based on that, I think we can consider this RTBC if it still applies. I sent a request for a retest to check.

Edit: #18 still passes, so it is ready to go.

webchick’s picture

Status: Reviewed & tested by the community » Fixed

Committed and pushed to 7.x. Thanks!

Status: Fixed » Closed (fixed)

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

thinkyhead’s picture

Status: Closed (fixed) » Needs review

I had been encountering this with the "text" module instead of the "forum" module, so I got the latest 7.x-dev. Now it's crapping out on "image." --- Could this be another one of the cases, like "text" and "forum" that was not accounted for, and hasn't been included in the patch yet?

Sorry if changing the status here is unwarranted. But I think we need another look.

xjm’s picture

Status: Needs review » Closed (fixed)

#37: I'd suggest looking for an existing issue with your exact error message, or if one doesn't exist yet, you can open a new one. Thanks!

thinkyhead’s picture

It's this issue. The modules that must state a dependency on 'system' update 7020 are: forum, text, and image. As far as I can tell that closes it.

mstrelan’s picture

The following code fixes the issue in #37.

<?php
/**
 * Implements hook_update_dependencies().
 */
function image_update_dependencies() {
  $dependencies['image'][7002] = array(
    // Image update 7002 uses field API update functions, so must run after
    // Field API has been enabled.
    'system' => 7020,
  );
  return $dependencies;
}
?>

and

<?php
/**
 * Implements hook_update_dependencies().
 */
function text_update_dependencies() {
  $dependencies['text'][7000] = array(
    // Text update 7000 uses field API update functions, so must run after
    // Field API has been enabled.
    'system' => 7020,
  );
  return $dependencies;
}
?>
xjm’s picture

Again, please search for an open issue or open a new one if you have this problem in 7.12 or later. Thanks!