[teiid-commits] teiid SVN: r3442 - in branches/7.4.x: connectors/translator-jdbc/src/test/java/org/teiid/translator/jdbc/sqlserver and 1 other directories.
teiid-commits at lists.jboss.org
teiid-commits at lists.jboss.org
Thu Sep 1 20:46:33 EDT 2011
Author: shawkins
Date: 2011-09-01 20:46:32 -0400 (Thu, 01 Sep 2011)
New Revision: 3442
Modified:
branches/7.4.x/api/src/main/java/org/teiid/language/visitor/SQLStringVisitor.java
branches/7.4.x/connectors/translator-jdbc/src/test/java/org/teiid/translator/jdbc/sqlserver/TestSqlServerConversionVisitor.java
branches/7.4.x/engine/src/main/java/org/teiid/dqp/internal/datamgr/LanguageBridgeFactory.java
Log:
TEIID-1737 fix for with clause pushdown
Modified: branches/7.4.x/api/src/main/java/org/teiid/language/visitor/SQLStringVisitor.java
===================================================================
--- branches/7.4.x/api/src/main/java/org/teiid/language/visitor/SQLStringVisitor.java 2011-09-01 19:48:30 UTC (rev 3441)
+++ branches/7.4.x/api/src/main/java/org/teiid/language/visitor/SQLStringVisitor.java 2011-09-02 00:46:32 UTC (rev 3442)
@@ -887,6 +887,7 @@
buffer.append(WITH);
buffer.append(Tokens.SPACE);
append(obj.getItems());
+ buffer.append(Tokens.SPACE);
}
@Override
@@ -900,6 +901,7 @@
buffer.append(Tokens.SPACE);
}
buffer.append(AS);
+ buffer.append(Tokens.SPACE);
buffer.append(Tokens.LPAREN);
append(obj.getSubquery());
buffer.append(Tokens.RPAREN);
Modified: branches/7.4.x/connectors/translator-jdbc/src/test/java/org/teiid/translator/jdbc/sqlserver/TestSqlServerConversionVisitor.java
===================================================================
--- branches/7.4.x/connectors/translator-jdbc/src/test/java/org/teiid/translator/jdbc/sqlserver/TestSqlServerConversionVisitor.java 2011-09-01 19:48:30 UTC (rev 3441)
+++ branches/7.4.x/connectors/translator-jdbc/src/test/java/org/teiid/translator/jdbc/sqlserver/TestSqlServerConversionVisitor.java 2011-09-02 00:46:32 UTC (rev 3442)
@@ -200,5 +200,14 @@
Command obj = commandBuilder.getCommand(input, true, true);
TranslationHelper.helpTestVisitor(output, trans, obj);
}
+
+ @Test public void testWith() throws Exception {
+ String input = "with x as (select intkey from bqt1.smalla) select intkey from x limit 100"; //$NON-NLS-1$
+ String output = "WITH x AS (SELECT SmallA.IntKey FROM SmallA) SELECT TOP 100 g_0.intkey AS c_0 FROM x g_0"; //$NON-NLS-1$
+
+ CommandBuilder commandBuilder = new CommandBuilder(RealMetadataFactory.exampleBQTCached());
+ Command obj = commandBuilder.getCommand(input, true, true);
+ TranslationHelper.helpTestVisitor(output, trans, obj);
+ }
}
Modified: branches/7.4.x/engine/src/main/java/org/teiid/dqp/internal/datamgr/LanguageBridgeFactory.java
===================================================================
--- branches/7.4.x/engine/src/main/java/org/teiid/dqp/internal/datamgr/LanguageBridgeFactory.java 2011-09-01 19:48:30 UTC (rev 3441)
+++ branches/7.4.x/engine/src/main/java/org/teiid/dqp/internal/datamgr/LanguageBridgeFactory.java 2011-09-02 00:46:32 UTC (rev 3442)
@@ -235,6 +235,7 @@
}
}
item.setSubquery(translate(withQueryCommand.getCommand()));
+ items.add(item);
}
result.setItems(items);
return result;
More information about the teiid-commits
mailing list