X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=components%2Fbinaries%2Fextractor%2Fextractor_manager.ml;h=13e92777f1802ea78184f41117293699a01b0911;hb=249d11773d32add20d665c4f8521b7380e4fec0a;hp=05393b63e24980d97c31e2c73a9adcea5659c6ea;hpb=d4c6f8464dc183326b7f7b4dc6171e69b482a26b;p=helm.git diff --git a/components/binaries/extractor/extractor_manager.ml b/components/binaries/extractor/extractor_manager.ml index 05393b63e..13e92777f 100644 --- a/components/binaries/extractor/extractor_manager.ml +++ b/components/binaries/extractor/extractor_manager.ml @@ -36,18 +36,18 @@ let create_all dbd = (name_tbl,`ObjectName) ; (count_tbl,`Count) ] in let statements = - (SqlStatements.create_tables tbls) @ (SqlStatements.create_indexes tbls) + (SqlStatements.create_tables tbls) @ + (SqlStatements.create_indexes tbls) in List.iter (fun statement -> try - ignore (Mysql.exec dbd statement) + ignore (HSql.exec HSql.Library dbd statement) with - exn -> - let status = Mysql.status dbd in - match status with - | Mysql.StatusError Mysql.Table_exists_error -> () - | Mysql.StatusError _ -> raise exn - | _ -> () + HSql.Error _ as exn -> + match HSql.errno HSql.Library dbd with + | HSql.Table_exists_error -> () + | HSql.OK -> () + | _ -> raise exn ) statements let drop_all dbd = @@ -61,15 +61,16 @@ let drop_all dbd = (name_tbl,`ObjectName) ; (count_tbl,`Count) ] in let statements = - (SqlStatements.drop_tables tbls) @ (SqlStatements.drop_indexes tbls) + (SqlStatements.drop_tables tbls) @ + (SqlStatements.drop_indexes tbls HSql.Library dbd) in List.iter (fun statement -> try - ignore (Mysql.exec dbd statement) - with Mysql.Error _ as exn -> - match Mysql.errno dbd with - | Mysql.Bad_table_error - | Mysql.No_such_index | Mysql.No_such_table -> () + ignore (HSql.exec HSql.Library dbd statement) + with HSql.Error _ as exn -> + match HSql.errno HSql.Library dbd with + | HSql.Bad_table_error + | HSql.No_such_index | HSql.No_such_table -> () | _ -> raise exn ) statements @@ -182,12 +183,8 @@ let main () = ignore(Unix.system ("mkdir -p " ^ fmt)); ignore(Unix.system ("cp -r " ^ base ^ " " ^ fmt ^ "/../")); done; - let dbd = - Mysql.quick_connect - ~host:(Helm_registry.get "db.host") - ~user:(Helm_registry.get "db.user") - ~database:(Helm_registry.get "db.database") () - in + let dbspec = LibraryDb.parse_dbd_conf () in + let dbd = HSql.quick_connect dbspec in MetadataTypes.ownerize_tables owner; let uri_RE = Str.regexp ".*\\(ind\\|var\\|con\\)$" in drop_all dbd; @@ -258,7 +255,7 @@ let main () = (rel_tbl_c,`RefRel); (name_tbl_c,`ObjectName); (count_tbl_c,`Count); - (hits_tbl,`Hits) ] @ + (hits_tbl,`Hits) ] HSql.Library dbd @ SqlStatements.rename_tables [ (obj_tbl,obj_tbl_b); (sort_tbl,sort_tbl_b); @@ -284,22 +281,14 @@ 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 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 + ignore (HSql.exec HSql.Library dbd statement) + with HSql.Error _ as exn -> + match HSql.errno HSql.Library dbd with + | HSql.Table_exists_error + | HSql.Bad_table_error -> () | _ -> prerr_endline (Printexc.to_string exn); - ()) + raise exn) stats ;;