diff --git a/src/main/engine/net/sf/jailer/modelbuilder/JDBCMetaDataBasedModelElementFinder.java b/src/main/engine/net/sf/jailer/modelbuilder/JDBCMetaDataBasedModelElementFinder.java index 1aebcf18f..a230d6b5f 100644 --- a/src/main/engine/net/sf/jailer/modelbuilder/JDBCMetaDataBasedModelElementFinder.java +++ b/src/main/engine/net/sf/jailer/modelbuilder/JDBCMetaDataBasedModelElementFinder.java @@ -925,15 +925,17 @@ public class JDBCMetaDataBasedModelElementFinder implements ModelElementFinder { } // TODO debug infos, to be removed - public static long dsT1, dsT2, dsT3; + public static long dsT0, dsT1, dsT2, dsT3; public static Set dsTabs1, dsTabs2, dsTabs3; + public static DataModel dsDataModel; private static String ds(String subject) { long t = System.currentTimeMillis(); - String info = "DS: (" + Math.max(-1, t - dsT1) + ", " + Math.max(-1, t - dsT2) + ", " + Math.max(-1, t - dsT3) + ") "; + String info = "DS: (" + Math.max(-1, t - dsT0) + ", " + Math.max(-1, t - dsT1) + ", " + Math.max(-1, t - dsT2) + ", " + Math.max(-1, t - dsT3) + ") "; info += "(" + (dsTabs1 == null? null : dsTabs1.contains(subject)) + ", " + (dsTabs2 == null? null : dsTabs2.contains(subject)) + ", " + (dsTabs3 == null? null : dsTabs3.contains(subject)) + ") "; info += dsDiff("1-2", dsTabs1, dsTabs2); info += dsDiff("1-3", dsTabs1, dsTabs3); info += dsDiff("2-3", dsTabs2, dsTabs3); + info += "DM: " + (dsDataModel == null? null : dsDataModel.getTable(subject) == null? "noTab" : dsDataModel.getTable(subject).getColumns()); return info; } diff --git a/src/main/gui/net/sf/jailer/ui/databrowser/DataBrowser.java b/src/main/gui/net/sf/jailer/ui/databrowser/DataBrowser.java index cd4d7f36f..2798bf19a 100644 --- a/src/main/gui/net/sf/jailer/ui/databrowser/DataBrowser.java +++ b/src/main/gui/net/sf/jailer/ui/databrowser/DataBrowser.java @@ -4440,6 +4440,8 @@ public class DataBrowser extends javax.swing.JFrame { final MDSchema defaultSchema = finalMetaDataSource.getDefaultSchema(); if (defaultSchema != null) { // trigger reading meta data asynchronously + JDBCMetaDataBasedModelElementFinder.dsT0 = System.currentTimeMillis(); + JDBCMetaDataBasedModelElementFinder.dsDataModel = datamodel.get(); defaultSchema.loadTables(true, null, new Runnable() { @Override public void run() { diff --git a/src/main/gui/net/sf/jailer/ui/databrowser/metadata/TableDetailsView.java b/src/main/gui/net/sf/jailer/ui/databrowser/metadata/TableDetailsView.java index 01bec8f69..0e564dee1 100644 --- a/src/main/gui/net/sf/jailer/ui/databrowser/metadata/TableDetailsView.java +++ b/src/main/gui/net/sf/jailer/ui/databrowser/metadata/TableDetailsView.java @@ -243,7 +243,8 @@ public class TableDetailsView extends javax.swing.JPanel { }); } columnsPanel.removeAll(); - java.awt.Color bgDarker = UIUtil.TABLE_BACKGROUND_COLOR_2; + java.awt.Color bgDarker = new Color(248, 255, 248); + jPanel2.setBackground(UIUtil.TABLE_BACKGROUND_COLOR_2); boolean hasConstraints = false; for (Column column: columns) { hasConstraints = hasConstraints || !column.isNullable || column.isVirtual || column.isIdentityColumn; @@ -261,7 +262,7 @@ public class TableDetailsView extends javax.swing.JPanel { JPanel panel = new JPanel(); rows.put(column.name, panel); - if (y % 2 == 0) { + if (y % 2 != 0) { panel.setOpaque(false); } else { panel.setBackground(bgDarker); @@ -343,7 +344,7 @@ public class TableDetailsView extends javax.swing.JPanel { label = new JLabel(); label.setForeground(Color.gray); JPanel panelC = new JPanel(); - if (y % 2 == 0) { + if (y % 2 != 0) { panelC.setOpaque(false); } else { panelC.setBackground(bgDarker);