summaryrefslogtreecommitdiff
path: root/odb/relational/schema.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2013-09-15 13:43:39 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2013-09-15 13:43:39 +0200
commitc17f5ff5b2f1523e92e048623f51638f83b34022 (patch)
treedce2d719943a49ff8e4160b691423d6312ff94d5 /odb/relational/schema.hxx
parent51956f409ec7ebea8b6790b0c5d4f0b51513d683 (diff)
Diagnose change of polymorphic base, table kind
Diffstat (limited to 'odb/relational/schema.hxx')
-rw-r--r--odb/relational/schema.hxx6
1 files changed, 2 insertions, 4 deletions
diff --git a/odb/relational/schema.hxx b/odb/relational/schema.hxx
index 3edb6b2..93850a6 100644
--- a/odb/relational/schema.hxx
+++ b/odb/relational/schema.hxx
@@ -377,9 +377,7 @@ namespace relational
}
else
{
- if (migration &&
- t.extra ().count ("kind") != 0 &&
- t.extra ()["kind"] == "polymorphic")
+ if (migration && t.extra ()["kind"] == "polymorphic derived object")
{
// If we are dropping a polymorphic derived object, then we
// also have to clean the base tables. Note that this won't
@@ -416,7 +414,7 @@ namespace relational
assert (rkey.contains_size () == dkey.contains_size ());
delete_ (p->name (), t.name (), rkey, dkey);
}
- while (p->extra ().count ("kind") != 0);
+ while (p->extra ()["kind"] != "polymorphic root object");
}
drop (t, migration);