// May only drop leaf tables through DDL interface
if(!table.getChildJoins().isEmpty()) {
throw new UnsupportedDropException(table.getName());
}
DMLFunctions dml = new BasicDMLFunctions(schemaManager(), store(), listenerService);
if(table.isRoot()) {
// Root table and no child tables, can delete all associated trees
store().removeTrees(session, table);
} else {
dml.truncateTable(session, table.getTableId(), false);
store().deleteIndexes(session, table.getIndexesIncludingInternal());
store().deleteIndexes(session, table.getGroupIndexes());
if (table.getIdentityColumn() != null) {
Collection<Sequence> sequences = Collections.singleton(table.getIdentityColumn().getIdentityGenerator());