From 0dea838318458eac5a8d2ccc3292288347b78043 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Wed, 28 Apr 2021 16:28:49 +0200 Subject: Qualify all database entities with explicit main schema --- bpkg/database.cxx | 2 ++ bpkg/odb.sh | 1 + bpkg/package.hxx | 20 ++++++++++---------- bpkg/package.xml | 56 +++++++++++++++++++++++++++---------------------------- 4 files changed, 41 insertions(+), 38 deletions(-) diff --git a/bpkg/database.cxx b/bpkg/database.cxx index e355860..a866274 100644 --- a/bpkg/database.cxx +++ b/bpkg/database.cxx @@ -41,6 +41,8 @@ namespace bpkg // Register the data migration functions. // + // NOTE: remember to qualify table names if using native statements. + // template using migration_entry = odb::data_migration_entry; diff --git a/bpkg/odb.sh b/bpkg/odb.sh index 0c8ae1b..5cd8e02 100755 --- a/bpkg/odb.sh +++ b/bpkg/odb.sh @@ -49,4 +49,5 @@ $odb "${inc[@]}" \ --hxx-prologue '#include ' \ --hxx-prologue '#include ' \ --include-with-brackets --include-prefix bpkg --guard-prefix BPKG \ + --schema main --schema-version-table main.schema_version \ --sqlite-override-null package.hxx diff --git a/bpkg/package.hxx b/bpkg/package.hxx index ad45fa8..cee2dd6 100644 --- a/bpkg/package.hxx +++ b/bpkg/package.hxx @@ -706,7 +706,7 @@ namespace bpkg // DISTINCT clause is not required. // #pragma db view object(available_package = package) \ - table("available_package_dependencies" = "pd" inner: \ + table("main.available_package_dependencies" = "pd" inner: \ "pd.type IN ('tests', 'examples', 'benchmarks') AND " \ "pd.name = " + package::id.name + "AND" + \ "pd.version_epoch = " + package::id.version.epoch + "AND" + \ @@ -725,7 +725,7 @@ namespace bpkg // external test packages. // #pragma db view object(available_package = package) \ - table("available_package_tests" = "pt" inner: \ + table("main.available_package_tests" = "pt" inner: \ "pt.name = " + package::id.name + "AND" + \ "pt.version_epoch = " + package::id.version.epoch + "AND" + \ "pt.version_canonical_upstream = " + \ @@ -1195,8 +1195,8 @@ namespace bpkg // @@ Using raw container table since ODB doesn't support containers // in views yet. // - #pragma db view object(selected_package) \ - table("selected_package_prerequisites" = "pp" inner: \ + #pragma db view object(selected_package) \ + table("main.selected_package_prerequisites" = "pp" inner: \ "pp.prerequisite = " + selected_package::name) struct package_dependent { @@ -1209,7 +1209,7 @@ namespace bpkg // Return a count of repositories that contain this repository fragment. // - #pragma db view table("repository_fragments") + #pragma db view table("main.repository_fragments") struct fragment_repository_count { #pragma db column("count(*)") @@ -1221,7 +1221,7 @@ namespace bpkg // Return a list of repositories that contain this repository fragment. // #pragma db view object(repository) \ - table("repository_fragments" = "rfs" inner: \ + table("main.repository_fragments" = "rfs" inner: \ "rfs.repository = " + repository::name) \ object(repository_fragment inner: "rfs.fragment = " + \ repository_fragment::name) @@ -1236,7 +1236,7 @@ namespace bpkg // complement. // #pragma db view object(repository = complement) \ - table("repository_fragment_complements" = "rfc" inner: \ + table("main.repository_fragment_complements" = "rfc" inner: \ "rfc.complement = " + complement::name) \ object(repository_fragment inner: "rfc.repository_fragment = " + \ repository_fragment::name) @@ -1251,7 +1251,7 @@ namespace bpkg // prerequisite. // #pragma db view object(repository = prerequisite) \ - table("repository_fragment_prerequisites" = "rfp" inner: \ + table("main.repository_fragment_prerequisites" = "rfp" inner: \ "rfp.prerequisite = " + prerequisite::name) \ object(repository_fragment inner: "rfp.repository_fragment = " + \ repository_fragment::name) @@ -1265,7 +1265,7 @@ namespace bpkg // Return a list of packages available from this repository fragment. // #pragma db view object(repository_fragment) \ - table("available_package_locations" = "pl" inner: \ + table("main.available_package_locations" = "pl" inner: \ "pl.repository_fragment = " + repository_fragment::name) \ object(available_package = package inner: \ "pl.name = " + package::id.name + "AND" + \ @@ -1286,7 +1286,7 @@ namespace bpkg // Return a list of repository fragments the packages come from. // #pragma db view object(repository_fragment) \ - table("available_package_locations" = "pl" inner: \ + table("main.available_package_locations" = "pl" inner: \ "pl.repository_fragment = " + repository_fragment::name) \ object(available_package = package inner: \ "pl.name = " + package::id.name + "AND" + \ diff --git a/bpkg/package.xml b/bpkg/package.xml index 55e3a9a..e54829c 100644 --- a/bpkg/package.xml +++ b/bpkg/package.xml @@ -1,15 +1,15 @@ - + - + - + @@ -42,7 +42,7 @@ - + @@ -66,7 +66,7 @@ - +
@@ -74,12 +74,12 @@
- +
- + @@ -88,17 +88,17 @@ - +
- +
- + @@ -107,12 +107,12 @@ - +
- +
@@ -121,14 +121,14 @@
- +
- + @@ -140,12 +140,12 @@ - +
- +
@@ -164,7 +164,7 @@
- +
@@ -180,7 +180,7 @@ - + @@ -199,12 +199,12 @@ - +
- +
@@ -222,7 +222,7 @@ - + @@ -243,7 +243,7 @@
- +
@@ -276,7 +276,7 @@ - + @@ -294,7 +294,7 @@
- +
@@ -319,7 +319,7 @@
- +
@@ -340,7 +340,7 @@ - + @@ -349,12 +349,12 @@ - +
- +
-- cgit v1.1