assert false
in
let do_query tbl =
- let res = HMysql.exec dbd (SqlStatements.direct_deps tbl uri) in
+ let res = HSql.exec dbd (SqlStatements.direct_deps tbl uri) in
let deps =
- HMysql.map res (fun row -> unbox_row (obj_metadata_of_row row)) in
+ HSql.map res (fun row -> unbox_row (obj_metadata_of_row row)) in
deps
in
do_query (MetadataTypes.obj_tbl ())
assert false
in
let do_query tbl =
- let res = HMysql.exec dbd (SqlStatements.inverse_deps tbl uri) in
+ let res = HSql.exec dbd (SqlStatements.inverse_deps tbl uri) in
let deps =
- HMysql.map res (fun row -> unbox_row (inv_obj_metadata_of_row row)) in
+ HSql.map res (fun row -> unbox_row (inv_obj_metadata_of_row row)) in
deps
in
do_query (MetadataTypes.obj_tbl ())
let sorted_uris_of_baseuri ~dbd baseuri =
let sql_pat =
- Pcre.replace ~rex:(Pcre.regexp "_") ~templ:"\\_" baseuri ^ "%"
+ Pcre.replace ~pat:"([^\\\\])_" ~templ:"$1\\_" baseuri ^ "%"
in
let query =
Printf.sprintf
- ("SELECT source FROM %s WHERE source LIKE \"%s\" UNION "^^
- "SELECT source FROM %s WHERE source LIKE \"%s\"")
+ ("SELECT source FROM %s WHERE source LIKE \"%s\" ESCAPE \"\\\" UNION "
+ ^^
+ "SELECT source FROM %s WHERE source LIKE \"%s\" ESCAPE \"\\\"")
(MetadataTypes.name_tbl ()) sql_pat
MetadataTypes.library_name_tbl sql_pat
in
- let result = HMysql.exec dbd query in
+ let result = HSql.exec dbd query in
let map cols = match cols.(0) with
| Some s -> UriManager.uri_of_string s
| _ -> assert false
in
- let uris = HMysql.map result map in
+ let uris = HSql.map result map in
let sorted_uris = topological_sort ~dbd uris in
let filter_map uri =
let s =