Closed kvallish closed 8 years ago
I'll take a look.
I am unable to set up a Sybase server easily. Still trying.
@sualeh, good news! I am running into the exact same error as @kvallish, but with a MySQL database. My stacktrace looks the same as @kvallish's except the line numbers are a bit different, so I may be using a different version of SchemaCrawler than they are.
I wonder if the problem may come down to a JVM or Java language issue?
Here is my info: The command I'm trying to run
C:\Users\erikf\Desktop\schemacrawler-14.08.06-main\_schemacrawler>schemacrawler.cmd -user=root -password= -server=mysql -infolevel=minimum -loglevel=CONFIG -command=list -url=jdbc:mysql://192.168.56.102:3306/mysql
The resulting exception
Jun 23, 2016 9:10:09 AM us.fatehi.commandlineparser.CommandLineUtility logFullStackTrace
SEVERE: Exception retrieving table information: null
schemacrawler.schemacrawler.SchemaCrawlerException: Exception retrieving table information: null
at schemacrawler.crawl.SchemaCrawler.crawlTables(SchemaCrawler.java:739)
at schemacrawler.crawl.SchemaCrawler.crawl(SchemaCrawler.java:797)
at schemacrawler.tools.executable.BaseStagedExecutable.execute(BaseStagedExecutable.java:92)
at schemacrawler.tools.commandline.SchemaCrawlerCommandLine.execute(SchemaCrawlerCommandLine.java:133)
at schemacrawler.Main.main(Main.java:91)
Caused by: java.lang.NullPointerException
at schemacrawler.filter.TableTypesFilter.test(TableTypesFilter.java:107)
at schemacrawler.filter.TableTypesFilter.test(TableTypesFilter.java:39)
at java.util.function.Predicate.lambda$and$0(Unknown Source)
at java.util.function.Predicate.lambda$and$0(Unknown Source)
at schemacrawler.crawl.TablesReducer.doReduce(TablesReducer.java:78)
at schemacrawler.crawl.TablesReducer.reduce(TablesReducer.java:67)
at schemacrawler.crawl.MutableCatalog.reduce(MutableCatalog.java:389)
at schemacrawler.crawl.SchemaCrawler.lambda$crawlTables$29(SchemaCrawler.java:610)
at sf.util.StopWatch.time(StopWatch.java:156)
at schemacrawler.crawl.SchemaCrawler.crawlTables(SchemaCrawler.java:606)
... 4 more
SchemaCrawler version 14.08.06
Java & JVM
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) Client VM (build 25.91-b14, mixed mode, sharing)
Client-side operating system Windows 7 Professional, SP1 Microsoft Windows [Version 6.1.7601]
Database Server MySQL Server version: 5.5.44-0ubuntu0.14.04.1 (Ubuntu)
Thanks, @fadein - this will be easier for me to reproduce.
Meh, I got the exact same issue when trying to draw the diagram of a MySQL database. Same lines
schemacrawler.cmd -server mysql -host=localhost -port=3306 -user=### -password=### -database=### -tables=.*\.ctc_.* -infolevel=minimum -command=graph -outputformat=png -outputfile=graph.png -schemas=### -loglevel=CONFIG
MySQL 5.7.10 (so probably not a DB-related issue) Windows 7 SP1, java 1.8.0_92 No issue with the diagram sample (so maybe a feature of MySQL not supported in SchemaCrawler?)
This week, I am going to try to reproduce and investigate the source of the problem. Meanwhile, if someone can give me a test schema, that will help me get there faster. Thanks.
I have just reproduced the issue with this Northwind database for MySQL in the exact same environment as in my 1st report above. I hope that this is helpful to you.
This is the output which resulted:
C:\Users\erikf\Desktop\schemacrawler-14.08.06-main_schemacrawler>schemacrawler.cmd -user=root -password= -server=mysql -infolevel=minimum -loglevel=CONFIG -command=list -url=jdbc:mysql://192.168.56.102/northwind INFO: SchemaCrawler, v14.08.06 Jun 27, 2016 9:51:55 AM us.fatehi.commandlineparser.CommandLineUtility logSafeAr guments INFO: Command line: -user=root -password=***** -server=mysql -infolevel=minimum -loglevel=CONFIG -command=list -url=jdbc:mysql://192.168.56.102/northwind Jun 27, 2016 9:51:55 AM us.fatehi.commandlineparser.CommandLineUtility logSystem Properties CONFIG: System properties: java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment java.awt.printerjob=sun.awt.windows.WPrinterJob java.class.version=52.0 java.endorsed.dirs=C:\Program Files (x86)\Java\jre8\lib\endorsed java.ext.dirs=C:\Program Files (x86)\Java\jre8\lib\ext;C:\Windows\Sun\Java\lib\e xt java.home=C:\Program Files (x86)\Java\jre8 java.io.tmpdir=C:\Users\erikf\AppData\Local\Temp\ java.runtime.name=Java(TM) SE Runtime Environment java.runtime.version=1.8.0_91-b14 java.specification.name=Java Platform API Specification java.specification.vendor=Oracle Corporation java.specification.version=1.8 java.vendor=Oracle Corporation java.vendor.url=http://java.oracle.com/ java.vendor.url.bug=http://bugreport.sun.com/bugreport/ java.version=1.8.0_91 java.vm.info=mixed mode, sharing java.vm.name=Java HotSpot(TM) Client VM java.vm.specification.name=Java Virtual Machine Specification java.vm.specification.vendor=Oracle Corporation java.vm.specification.version=1.8 java.vm.vendor=Oracle Corporation java.vm.version=25.91-b14 os.arch=x86 os.name=Windows 7 os.version=6.1 Jun 27, 2016 9:51:55 AM us.fatehi.commandlineparser.CommandLineUtility logSystem Properties CONFIG: Classpath: lib/h2-1.4.192.jar lib/hsqldb-2.3.4.jar lib/jtds-1.3.1.jar lib/mariadb-java-client-1.4.5.jar lib/mysql-connector-java-6.0.2.jar lib/postgresql-9.4.1208.jar lib/schemacrawler-14.08.06.jar lib/schemacrawler-api-14.08.06-tests.jar lib/schemacrawler-db2-14.08.06.jar lib/schemacrawler-h2-14.08.06.jar lib/schemacrawler-hsqldb-14.08.06.jar lib/schemacrawler-lint-14.08.06.jar lib/schemacrawler-mariadb-14.08.06.jar lib/schemacrawler-mysql-14.08.06.jar lib/schemacrawler-offline-14.08.06.jar lib/schemacrawler-oracle-14.08.06.jar lib/schemacrawler-postgresql-14.08.06.jar lib/schemacrawler-sqlite-14.08.06.jar lib/schemacrawler-sqlserver-14.08.06.jar lib/schemacrawler-sybaseiq-14.08.06.jar lib/sqlite-jdbc-3.7.8.jar lib/xmlpull-1.1.3.1.jar lib/xpp3_min-1.1.4c.jar lib/xstream-1.4.9.jar . Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, db2=schemacrawler.server.db2.DB2DatabaseConn ector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, h2=schemacrawler.server.h2.H2DatabaseConnect or Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, hsqldb=schemacrawler.server.hsqldb.HyperSQLD atabaseConnector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, mariadb=schemacrawler.server.mariadb.MariaDB DatabaseConnector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, mysql=schemacrawler.server.mysql.MySQLDataba seConnector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, offline=schemacrawler.tools.offline.OfflineD atabaseConnector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, oracle=schemacrawler.server.oracle.OracleDat abaseConnector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, postgresql=schemacrawler.server.postgresql.P ostgreSQLDatabaseConnector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, sqlite=schemacrawler.tools.sqlite.SQLiteData baseConnector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, sqlserver=schemacrawler.server.sqlserver.Sql ServerDatabaseConnector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry loadDatabaseConnectorRegistry CONFIG: Loading database connector, sybaseiq=schemacrawler.server.sybaseiq.Sybas eIQDatabaseConnector Jun 27, 2016 9:51:55 AM schemacrawler.tools.databaseconnector.DatabaseConnectorR egistry logRegisteredJdbcDrivers CONFIG: Registered JDBC drivers, [com.mysql.cj.jdbc.Driver 6.0, net.sourceforge. jtds.jdbc.Driver 1.3, org.h2.Driver 1.4, org.hsqldb.jdbc.JDBCDriver 2.3, org.mar iadb.jdbc.Driver 1.4, org.postgresql.Driver 9.4, org.sqlite.JDBC 3.7, schemacraw ler.tools.offline.jdbc.OfflineDriver 0.0] Jun 27, 2016 9:51:55 AM schemacrawler.tools.commandline.SchemaCrawlerCommandLine
Erik, @SpyroTEQ - to resolve the MySql issue, please delete the mariadb-java-client-1.4.5.jar
from the lib folder. I am still investigating the Sybase issue.
Release 14.09.01 of SchemaCrawler will address this issue. SchemaCrawler will no longer be distributed with a MariaDB JDBC driver for MySQL, since that interferes with MySQL processing. Also, the MySQL JDBC URL has been fixed for backward compatibility. The null pointer issue with Sybase has been addressed.
Following #66 when schema crawler tries to get the table details from my sybase database, am hitting the below exception:
May 05, 2016 10:21:15 AM us.fatehi.commandlineparser.CommandLineUtility logFullStackTrace SEVERE: Exception retrieving table information: null schemacrawler.schemacrawler.SchemaCrawlerException: Exception retrieving table information: null at schemacrawler.crawl.SchemaCrawler.crawlTables(SchemaCrawler.java:708) at schemacrawler.crawl.SchemaCrawler.crawl(SchemaCrawler.java:766) at schemacrawler.tools.executable.BaseStagedExecutable.execute(BaseStagedExecutable.java:92) at schemacrawler.tools.commandline.SchemaCrawlerCommandLine.execute(SchemaCrawlerCommandLine.java:133) at schemacrawler.Main.main(Main.java:88) Caused by: java.lang.NullPointerException at schemacrawler.filter.TableTypesFilter.test(TableTypesFilter.java:107) at schemacrawler.filter.TableTypesFilter.test(TableTypesFilter.java:39) at java.util.function.Predicate.lambda$and$0(Unknown Source) at java.util.function.Predicate.lambda$and$0(Unknown Source) at schemacrawler.crawl.TablesReducer.doReduce(TablesReducer.java:78) at schemacrawler.crawl.TablesReducer.reduce(TablesReducer.java:67) at schemacrawler.crawl.MutableCatalog.reduce(MutableCatalog.java:389) at schemacrawler.crawl.SchemaCrawler.lambda$crawlTables$29(SchemaCrawler.java:594) at sf.util.StopWatch.time(StopWatch.java:156) at schemacrawler.crawl.SchemaCrawler.crawlTables(SchemaCrawler.java:590) ... 4 more