]> matita.cs.unibo.it Git - helm.git/commitdiff
- cathes more Mysql errors which could happen during post-indexing actions
authorStefano Zacchiroli <zack@upsilon.cc>
Tue, 17 May 2005 13:05:38 +0000 (13:05 +0000)
committerStefano Zacchiroli <zack@upsilon.cc>
Tue, 17 May 2005 13:05:38 +0000 (13:05 +0000)
- bugfix in hits table handling during post-indexing actions
- added copyright info

helm/ocaml/metadata/extractor/extractor_manager.ml

index 3200a2600df54cc9904670aa4ad3383575c2572f..ae541f458ac5f9a1daaa5db25be6589296a25a33 100644 (file)
@@ -1,4 +1,30 @@
+(* Copyright (C) 2004-2005, HELM Team.
+ * 
+ * This file is part of HELM, an Hypertextual, Electronic
+ * Library of Mathematics, developed at the Computer Science
+ * Department, University of Bologna, Italy.
+ * 
+ * HELM is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ * 
+ * HELM is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HELM; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+ * MA  02111-1307, USA.
+ * 
+ * For details, see the HELM World-Wide-Web page,
+ * http://helm.cs.unibo.it/
+ *)
+
 (* HELPERS *)
+
 let create_all dbd =
   let obj_tbl = MetadataTypes.obj_tbl () in
   let sort_tbl = MetadataTypes.sort_tbl () in
@@ -220,7 +246,8 @@ let main () =
           (sort_tbl_b,`RefSort);
           (rel_tbl_b,`RefRel);
           (name_tbl_b,`ObjectName);
-          (count_tbl_b,`Count) ] @
+          (count_tbl_b,`Count);
+          (hits_tbl,`Hits) ] @
         SqlStatements.drop_indexes [
           (obj_tbl,`RefObj);
           (sort_tbl,`RefSort);
@@ -231,7 +258,8 @@ let main () =
           (sort_tbl_c,`RefSort);
           (rel_tbl_c,`RefRel);
           (name_tbl_c,`ObjectName);
-          (count_tbl_c,`Count) ] @
+          (count_tbl_c,`Count);
+          (hits_tbl,`Hits) ] @
         SqlStatements.rename_tables [
           (obj_tbl,obj_tbl_b);
           (sort_tbl,sort_tbl_b);
@@ -257,13 +285,22 @@ let main () =
       in
         List.iter (fun statement -> 
           try
+(*            prerr_endline statement;*)
             ignore (Mysql.exec dbd statement)
           with exn -> 
             let status = Mysql.status dbd in
             match status with 
-            | Mysql.StatusError Mysql.Table_exists_error -> ()
-            | Mysql.StatusError _ -> raise exn
-            | _ -> ()) 
+            | Mysql.StatusError Mysql.Table_exists_error
+            | Mysql.StatusError Mysql.Bad_table_error
+            | Mysql.StatusError Mysql.Cant_drop_field_or_key
+            | Mysql.StatusError Mysql.Unknown_table -> ()
+            | Mysql.StatusError status ->
+(*                prerr_endline (string_of_int (Obj.magic status));*)
+                prerr_endline (Printexc.to_string exn);
+                raise exn
+            | _ ->
+                prerr_endline (Printexc.to_string exn);
+                ())
         stats
 ;;