The following document contains the results of FindBugs Report
FindBugs Version is 1.1.1
Threshold is Normal
Effort is Default
| Classes | Bugs | Errors | Missing Classes |
|---|---|---|---|
| 398 | 46 | 9 | 7 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.allowHtmlInComments | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.commentsInitiallyDisplayed | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.cssStylesheet | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.database | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.excludeColumnNamesRegex | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.host | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.includeTableNamesRegex | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.jdbcUrl | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.noHtml | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.noImplied | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.noTableComments | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.password | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.pathToDrivers | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.project | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.schema | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.schemaDescription | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.siteRenderer | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.useDriverManager | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Unwritten field: com.wakaleo.schemaspy.SchemaSpyReport.user | CORRECTNESS | UWF_UNWRITTEN_FIELD | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sourceforge.schemaspy.DBAnalyzer.getTablesWithIncrementingColumnNames(java.util.Collection) invokes inefficient Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 179 |
| Method net.sourceforge.schemaspy.DBAnalyzer.getTablesWithIncrementingColumnNames(java.util.Collection) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 166 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Possible null pointer dereference of driver in net.sourceforge.schemaspy.Main.getConnection(String,String,String,String,String,String,java.util.Properties,boolean,boolean) on exception path | CORRECTNESS | NP_NULL_ON_SOME_PATH_EXCEPTION | 664 |
| Method net.sourceforge.schemaspy.Main.main(String[]) catches Exception, but Exception is not thrown in the try block and RuntimeException is not explicitly caught | STYLE | REC_CATCH_EXCEPTION | 479 |
| Bug | Category | Details | Line |
|---|---|---|---|
| There is an apparent infinite recursive loop in net.sourceforge.schemaspy.Main$1DbPropLoader.load(String). | CORRECTNESS | IL_INFINITE_RECURSIVE_LOOP | 834 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sourceforge.schemaspy.MultipleSchemaAnalyzer.analyze(String,java.sql.DatabaseMetaData,String,java.util.List,String,java.io.File,String) invokes System.exit(...), which shuts down the entire virtual machine | BAD_PRACTICE | DM_EXIT | 64 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sourceforge.schemaspy.model.Database.getInvalidIdentifierPattern() concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 451 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Should net.sourceforge.schemaspy.model.Database$1TableValidator be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sourceforge.schemaspy.model.Table$ByCheckConstraintStringsComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sourceforge.schemaspy.model.Table$ByIndexColumnComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sourceforge.schemaspy.model.TableColumn.TableColumn(Table,java.sql.ResultSet) invokes inefficient Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 51 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Should net.sourceforge.schemaspy.model.TableColumn$ColumnComparator be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sourceforge.schemaspy.util.DOMUtil.printDOM(org.w3c.dom.Node,LineWriter) invokes inefficient Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 18 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sourceforge.schemaspy.util.Dot.Dot() may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 21 |
| Bug | Category | Details | Line |
|---|---|---|---|
| net.sourceforge.schemaspy.util.Dot$DotFailure is serializable but also an inner class of a non-serializable class | BAD_PRACTICE | SE_BAD_FIELD_INNER_CLASS | Not available |
| Should net.sourceforge.schemaspy.util.Dot$DotFailure be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sourceforge.schemaspy.view.DotFormatter.getRegexWithoutTable(net.sourceforge.schemaspy.model.Table,WriteStats) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 163 |
| Unread field: net.sourceforge.schemaspy.view.DotFormatter.CompactGraphFontSize; should this field be static? | PERFORMANCE | SS_SHOULD_BE_STATIC | Not available |
| Unread field: net.sourceforge.schemaspy.view.DotFormatter.CompactNodeSeparator; should this field be static? | PERFORMANCE | SS_SHOULD_BE_STATIC | Not available |
| Unread field: net.sourceforge.schemaspy.view.DotFormatter.CompactRankSeparator; should this field be static? | PERFORMANCE | SS_SHOULD_BE_STATIC | Not available |
| Unread field: net.sourceforge.schemaspy.view.DotFormatter.LargeGraphFontSize; should this field be static? | PERFORMANCE | SS_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Should net.sourceforge.schemaspy.view.HtmlColumnsPage$ByColumnComparator be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Should net.sourceforge.schemaspy.view.HtmlColumnsPage$ByTableComparator be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Should net.sourceforge.schemaspy.view.HtmlColumnsPage$ColumnInfo be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | Not available |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sourceforge.schemaspy.view.HtmlConstraintsPage.writeCheckConstraints(net.sourceforge.schemaspy.model.Table,net.sourceforge.schemaspy.util.LineWriter) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 200 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sourceforge.schemaspy.view.HtmlTablePage.writeCheckConstraints(net.sourceforge.schemaspy.model.Table,net.sourceforge.schemaspy.util.LineWriter) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 280 |
| Bug | Category | Details | Line |
|---|---|---|---|
| Method net.sourceforge.schemaspy.view.XmlTableFormatter.appendCheckConstraints(org.w3c.dom.Element,net.sourceforge.schemaspy.model.Table) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 135 |