From 377376d457608a887796e94412995668dcb58698 Mon Sep 17 00:00:00 2001 From: Naoki Takezoe Date: Mon, 23 Jul 2018 18:23:03 +0900 Subject: [PATCH] (Refs #2082)Fix to export orphan tables as well --- src/main/scala/gitbucket/core/util/JDBCUtil.scala | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/scala/gitbucket/core/util/JDBCUtil.scala b/src/main/scala/gitbucket/core/util/JDBCUtil.scala index bb3b16003..2662e6393 100644 --- a/src/main/scala/gitbucket/core/util/JDBCUtil.scala +++ b/src/main/scala/gitbucket/core/util/JDBCUtil.scala @@ -202,8 +202,7 @@ object JDBCUtil { private def allTablesOrderByDependencies(meta: DatabaseMetaData): Seq[String] = { val tables = allTableNames.map { tableName => - val result = TableDependency(tableName, childTables(meta, tableName)) - result + TableDependency(tableName, childTables(meta, tableName)) } val edges = tables.flatMap { table => @@ -212,7 +211,10 @@ object JDBCUtil { } } - tsort(edges).toSeq + val ordered = tsort(edges).toSeq + val orphans = tables.collect { case x if !ordered.contains(x.tableName) => x.tableName } + + ordered ++ orphans } def tsort[A](edges: Traversable[(A, A)]): Iterable[A] = {