Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2013-05-20 06:57:59 +0000
committerEike Stepper2013-05-20 06:57:59 +0000
commit740343e478b6d0101d0388ce985997e1306bb1cb (patch)
treea7a72e3c8da6b00faaae7bf6b8dd0c9ecaf460cd
parent22739449a2a9b1b63bd9ebee787c181222e309fc (diff)
downloadcdo-740343e478b6d0101d0388ce985997e1306bb1cb.tar.gz
cdo-740343e478b6d0101d0388ce985997e1306bb1cb.tar.xz
cdo-740343e478b6d0101d0388ce985997e1306bb1cb.zip
[405924] [DB] Oracle null index field name
https://bugs.eclipse.org/bugs/show_bug.cgi?id=405924
-rw-r--r--plugins/org.eclipse.net4j.db/src/org/eclipse/net4j/spi/db/DBAdapter.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/plugins/org.eclipse.net4j.db/src/org/eclipse/net4j/spi/db/DBAdapter.java b/plugins/org.eclipse.net4j.db/src/org/eclipse/net4j/spi/db/DBAdapter.java
index 24c69e37a0..165da1dfe9 100644
--- a/plugins/org.eclipse.net4j.db/src/org/eclipse/net4j/spi/db/DBAdapter.java
+++ b/plugins/org.eclipse.net4j.db/src/org/eclipse/net4j/spi/db/DBAdapter.java
@@ -196,8 +196,13 @@ public abstract class DBAdapter implements IDBAdapter
for (int i = 0; i < metaData.getColumnCount(); i++)
{
int column = i + 1;
-
String name = metaData.getColumnName(column);
+ if (name == null)
+ {
+ // Bug 405924: Just to be sure in case this happens with Oracle.
+ continue;
+ }
+
DBType type = DBType.getTypeByCode(metaData.getColumnType(column));
int precision = metaData.getPrecision(column);
int scale = metaData.getScale(column);
@@ -243,6 +248,12 @@ public abstract class DBAdapter implements IDBAdapter
while (resultSet.next())
{
String name = resultSet.getString(indexNameColumn);
+ if (name == null)
+ {
+ // Bug 405924: It seems that this can happen with Oracle.
+ continue;
+ }
+
if (indexName != null && !indexName.equals(name))
{
addIndex(connection, table, indexName, indexType, fieldInfos);

Back to the top