Procházet zdrojové kódy

Fixed Tv3 upgrade bug caused by moving index tripal_cv_obo_tripal_cv_obo_idx1_idx and tripal_cv_obo_pkey

Chun-Huai Cheng před 8 roky
rodič
revize
324400861e

+ 1 - 1
tripal_chado/includes/tripal_chado.migrate.inc

@@ -574,7 +574,7 @@ function tripal_chado_get_tripal_v2_content_type_options($all_option = FALSE, $h
  function tripal_chado_migrate_records($migration, $job_id = NULL) {
   $tv2_content_type = $migration['tv2_content_type'];
   $tv3_content_type = $migration['tv3_content_type'];
-
+  print_r($migration);
   // If tv2_content_type is 'all', migrate all existing Tripal v2 content
   if ($tv2_content_type == 'all') {
     print "Migrating all Tripal v2 content...\n";

+ 7 - 4
tripal_chado/tripal_chado.install

@@ -313,7 +313,7 @@ function tripal_chado_upgrade_v2_v3_pre_enable() {
     if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_obo_pkey'")->fetchField()) {
       $sql = "ALTER INDEX tripal_cv_obo_pkey RENAME TO tripal_cv_obo_pkey2";
     }
-    if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_obo_tripal_cv_obo_idx1_idx'")->fetchField()) {
+    else if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_obo_tripal_cv_obo_idx1_idx'")->fetchField()) {
       $sql = "ALTER INDEX tripal_cv_obo_tripal_cv_obo_idx1_idx RENAME TO tripal_cv_obo_tripal_cv_obo_idx1_idx2";
     }
     else {
@@ -386,9 +386,12 @@ function tripal_chado_upgrade_v2_v3_enable() {
     db_query($sql);
     $sql = "ALTER INDEX tripal_cv_obo_obo_id_idx2 RENAME TO tripal_cv_obo_obo_id_idx";
     db_query($sql);
-    $sql = "ALTER INDEX tripal_cv_obo_pkey2 RENAME TO tripal_cv_obo_pkey";
-    db_query($sql);
-    $sql = "ALTER INDEX tripal_cv_obo_tripal_cv_obo_idx1_idx2 RENAME TO tripal_cv_obo_tripal_cv_obo_idx1_idx";
+    if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_obo_pkey2'")->fetchField()) {
+      $sql = "ALTER INDEX tripal_cv_obo_pkey2 RENAME TO tripal_cv_obo_pkey";
+    } 
+    else {
+      $sql = "ALTER INDEX tripal_cv_obo_tripal_cv_obo_idx1_idx2 RENAME TO tripal_cv_obo_tripal_cv_obo_idx1_idx";
+    }
     db_query($sql);
   }