[hibernate-commits] Hibernate SVN: r21102 - in core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579: parent and 3 other directories.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Tue Jan 22 21:05:30 EST 2013


Author: brmeyer
Date: 2013-01-22 21:05:29 -0500 (Tue, 22 Jan 2013)
New Revision: 21102

Added:
   core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/testsuite/src/main/
   core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/testsuite/src/main/java/
Modified:
   core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/core/src/main/java/org/hibernate/engine/query/ParameterParser.java
   core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/parent/pom.xml
   core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/testsuite/src/test/java/org/hibernate/test/sql/hand/query/NativeSQLQueriesTest.java
Log:
JBPAPP-10579 EAP 5.1.2 Support patch for HHH-2697 - Can't use := for variable assignment within a SQL-Statement 

Modified: core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/core/src/main/java/org/hibernate/engine/query/ParameterParser.java
===================================================================
--- core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/core/src/main/java/org/hibernate/engine/query/ParameterParser.java	2013-01-23 01:18:27 UTC (rev 21101)
+++ core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/core/src/main/java/org/hibernate/engine/query/ParameterParser.java	2013-01-23 02:05:29 UTC (rev 21102)
@@ -82,6 +82,10 @@
 				inQuote = true;
 				recognizer.other( c );
 			}
+			else if ( '\\' == c ) {
+				// skip sending the backslash and instead send then next character, treating is as a literal
+				recognizer.other( sqlString.charAt( ++indx ) );
+			}
 			else {
 				if ( c == ':' ) {
 					// named parameter

Modified: core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/parent/pom.xml
===================================================================
--- core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/parent/pom.xml	2013-01-23 01:18:27 UTC (rev 21101)
+++ core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/parent/pom.xml	2013-01-23 02:05:29 UTC (rev 21102)
@@ -235,6 +235,75 @@
                     <artifactId>maven-compiler-plugin</artifactId>
                     <version>2.0.2</version>
                 </plugin>
+                <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
+                <plugin>
+                	<groupId>org.eclipse.m2e</groupId>
+                	<artifactId>lifecycle-mapping</artifactId>
+                	<version>1.0.0</version>
+                	<configuration>
+                		<lifecycleMappingMetadata>
+                			<pluginExecutions>
+                				<pluginExecution>
+                					<pluginExecutionFilter>
+                						<groupId>
+                							org.jboss.maven.plugins
+                						</groupId>
+                						<artifactId>
+                							maven-test-ext-plugin
+                						</artifactId>
+                						<versionRange>
+                							[1.1.0,)
+                						</versionRange>
+                						<goals>
+                							<goal>extend</goal>
+                						</goals>
+                					</pluginExecutionFilter>
+                					<action>
+                						<ignore></ignore>
+                					</action>
+                				</pluginExecution>
+                				<pluginExecution>
+                					<pluginExecutionFilter>
+                						<groupId>
+                							org.jboss.maven.plugins
+                						</groupId>
+                						<artifactId>
+                							maven-injection-plugin
+                						</artifactId>
+                						<versionRange>
+                							[1.0.2,)
+                						</versionRange>
+                						<goals>
+                							<goal>bytecode</goal>
+                						</goals>
+                					</pluginExecutionFilter>
+                					<action>
+                						<ignore></ignore>
+                					</action>
+                				</pluginExecution>
+                				<pluginExecution>
+                					<pluginExecutionFilter>
+                						<groupId>
+                							org.codehaus.mojo
+                						</groupId>
+                						<artifactId>
+                							antlr-maven-plugin
+                						</artifactId>
+                						<versionRange>
+                							[2.1,)
+                						</versionRange>
+                						<goals>
+                							<goal>generate</goal>
+                						</goals>
+                					</pluginExecutionFilter>
+                					<action>
+                						<ignore></ignore>
+                					</action>
+                				</pluginExecution>
+                			</pluginExecutions>
+                		</lifecycleMappingMetadata>
+                	</configuration>
+                </plugin>
             </plugins>
         </pluginManagement>
     </build>

Modified: core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/testsuite/src/test/java/org/hibernate/test/sql/hand/query/NativeSQLQueriesTest.java
===================================================================
--- core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/testsuite/src/test/java/org/hibernate/test/sql/hand/query/NativeSQLQueriesTest.java	2013-01-23 01:18:27 UTC (rev 21101)
+++ core/patches/hibernate-3.3.2.GA_CP04_JBPAPP-10579/testsuite/src/test/java/org/hibernate/test/sql/hand/query/NativeSQLQueriesTest.java	2013-01-23 02:05:29 UTC (rev 21102)
@@ -13,10 +13,13 @@
 import org.hibernate.Hibernate;
 import org.hibernate.HibernateException;
 import org.hibernate.Query;
+import org.hibernate.QueryException;
+import org.hibernate.SQLQuery;
 import org.hibernate.Session;
 import org.hibernate.Transaction;
 import org.hibernate.cfg.Configuration;
 import org.hibernate.cfg.Environment;
+import org.hibernate.dialect.MySQL5Dialect;
 import org.hibernate.junit.functional.FunctionalTestCase;
 import org.hibernate.junit.functional.FunctionalTestClassTestSuite;
 import org.hibernate.test.sql.hand.Dimension;
@@ -678,4 +681,18 @@
 			return result;
 		}
 	}
+	
+	public void testEscapeColonInSQL() throws QueryException {
+		if ( ! ( getDialect() instanceof MySQL5Dialect ) ) {
+			return;
+		}
+		
+		Session s = openSession();
+		Transaction t = s.beginTransaction();
+		SQLQuery query = s.createSQLQuery("SELECT @row \\:= 1");
+		List list = query.list();
+		assertTrue(list.get(0).toString().equals("1"));
+		t.commit();
+		s.close();
+	}
 }



More information about the hibernate-commits mailing list