[hibernate-commits] Hibernate SVN: r14420 - in core/tags: hibernate-3.3.0.Alpha1 and 19 other directories.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Mon Mar 10 21:59:19 EDT 2008


Author: steve.ebersole at jboss.com
Date: 2008-03-10 21:59:19 -0400 (Mon, 10 Mar 2008)
New Revision: 14420

Added:
   core/tags/hibernate-3.3.0.Alpha1/
   core/tags/hibernate-3.3.0.Alpha1/cache-ehcache/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache2/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/cache-oscache/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/cache-swarmcache/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/connection-c3p0/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/connection-proxool/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/core/
   core/tags/hibernate-3.3.0.Alpha1/core/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/dialect/DialectFactory.java
   core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/engine/ActionQueue.java
   core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/jdbc/JDBCContext.java
   core/tags/hibernate-3.3.0.Alpha1/documentation/manual/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/eg/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/jmx/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/src/assembly/dist.xml
   core/tags/hibernate-3.3.0.Alpha1/src/assembly/hibernate-all.xml
   core/tags/hibernate-3.3.0.Alpha1/src/site/apt/index.apt
   core/tags/hibernate-3.3.0.Alpha1/src/site/site.xml
   core/tags/hibernate-3.3.0.Alpha1/testing/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/testsuite/pom.xml
Removed:
   core/tags/hibernate-3.3.0.Alpha1/cache-ehcache/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache2/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/cache-oscache/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/cache-swarmcache/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/connection-c3p0/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/connection-proxool/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/core/
   core/tags/hibernate-3.3.0.Alpha1/core/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/dialect/DialectFactory.java
   core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/engine/ActionQueue.java
   core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/jdbc/JDBCContext.java
   core/tags/hibernate-3.3.0.Alpha1/documentation/manual/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/eg/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/jmx/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/src/assembly/dist.xml
   core/tags/hibernate-3.3.0.Alpha1/src/site/apt/index.apt
   core/tags/hibernate-3.3.0.Alpha1/src/site/site.xml
   core/tags/hibernate-3.3.0.Alpha1/testing/pom.xml
   core/tags/hibernate-3.3.0.Alpha1/testsuite/pom.xml
Log:
[maven-release-plugin]  copy for tag hibernate-3.3.0.Alpha1

Copied: core/tags/hibernate-3.3.0.Alpha1 (from rev 14241, core/trunk)

Deleted: core/tags/hibernate-3.3.0.Alpha1/cache-ehcache/pom.xml
===================================================================
--- core/trunk/cache-ehcache/pom.xml	2007-12-11 01:09:52 UTC (rev 14241)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-ehcache/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,97 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    
-    <parent>
-        <groupId>org.hibernate</groupId>
-        <artifactId>hibernate-core-parent</artifactId>
-        <version>1</version>
-    </parent>
-    
-    <groupId>org.hibernate</groupId>
-    <artifactId>hibernate-ehcache</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
-    <packaging>jar</packaging>
-
-    <name>Hibernate Ehcache Integration</name>
-    <description>Integration of Hibernate with Ehcache</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-core</artifactId>
-            <version>${version}</version>
-        </dependency>
-        <dependency>
-            <groupId>net.sf.ehcache</groupId>
-            <artifactId>ehcache</artifactId>
-            <version>1.2.3</version>
-        </dependency>
-
-        <!-- testing deps -->
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-testing</artifactId>
-            <version>${version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>hsqldb</groupId>
-            <artifactId>hsqldb</artifactId>
-            <version>1.8.0.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging</artifactId>
-            <version>99.0-does-not-exist</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging-api</artifactId>
-            <version>99.0-does-not-exist</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>jcl104-over-slf4j</artifactId>
-            <version>1.4.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
-            <version>1.4.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>log4j</groupId>
-            <artifactId>log4j</artifactId>
-            <version>1.2.14</version>
-            <scope>test</scope>
-        </dependency>
-        <!-- these are optional on core... :( -->
-        <dependency>
-            <groupId>javassist</groupId>
-            <artifactId>javassist</artifactId>
-            <version>3.4.GA</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>cglib</groupId>
-            <artifactId>cglib</artifactId>
-            <version>2.1_3</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>asm</groupId>
-            <artifactId>asm-attrs</artifactId>
-            <version>1.5.3</version>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-
-</project>

Copied: core/tags/hibernate-3.3.0.Alpha1/cache-ehcache/pom.xml (from rev 14419, core/trunk/cache-ehcache/pom.xml)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/cache-ehcache/pom.xml	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-ehcache/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,101 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    
+    <parent>
+        <groupId>org.hibernate</groupId>
+        <artifactId>hibernate-core-parent</artifactId>
+        <version>1</version>
+    </parent>
+    
+    <groupId>org.hibernate</groupId>
+    <artifactId>hibernate-ehcache</artifactId>
+    <version>3.3.0.Alpha1</version>
+    <packaging>jar</packaging>
+
+    <name>Hibernate Ehcache Integration</name>
+    <description>Integration of Hibernate with Ehcache</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-core</artifactId>
+            <version>${version}</version>
+        </dependency>
+        <dependency>
+            <groupId>net.sf.ehcache</groupId>
+            <artifactId>ehcache</artifactId>
+            <version>1.2.3</version>
+        </dependency>
+
+        <!-- testing deps -->
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-testing</artifactId>
+            <version>${version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>hsqldb</groupId>
+            <artifactId>hsqldb</artifactId>
+            <version>1.8.0.2</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging</artifactId>
+            <version>99.0-does-not-exist</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging-api</artifactId>
+            <version>99.0-does-not-exist</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>jcl104-over-slf4j</artifactId>
+            <version>1.4.2</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-log4j12</artifactId>
+            <version>1.4.2</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>log4j</groupId>
+            <artifactId>log4j</artifactId>
+            <version>1.2.14</version>
+            <scope>test</scope>
+        </dependency>
+        <!-- these are optional on core... :( -->
+        <dependency>
+            <groupId>javassist</groupId>
+            <artifactId>javassist</artifactId>
+            <version>3.4.GA</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>cglib</groupId>
+            <artifactId>cglib</artifactId>
+            <version>2.1_3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>asm</groupId>
+            <artifactId>asm-attrs</artifactId>
+            <version>1.5.3</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+
+  <scm>
+    <connection>scm:svn:http://anonsvn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1</connection>
+    <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-ehcache</developerConnection>
+    <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-ehcache</url>
+  </scm>
+</project>
\ No newline at end of file

Deleted: core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache/pom.xml
===================================================================
--- core/trunk/cache-jbosscache/pom.xml	2007-12-11 01:09:52 UTC (rev 14241)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,128 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    
-    <parent>
-        <groupId>org.hibernate</groupId>
-        <artifactId>hibernate-core-parent</artifactId>
-        <version>1</version>
-    </parent>
-    
-    <groupId>org.hibernate</groupId>
-    <artifactId>hibernate-jbosscache</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
-    <packaging>jar</packaging>
-
-    <name>Hibernate JBossCache Integration</name>
-    <description>Integration of Hibernate with JBossCache (based on JBossCache1.x APIs)</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-core</artifactId>
-            <version>${version}</version>
-        </dependency>
-        <dependency>
-            <groupId>jboss</groupId>
-            <artifactId>jboss-cache</artifactId>
-            <version>1.4.1.GA</version>
-        </dependency>
-        <!-- jboss-cache (the one from the jboss repo, anyway) does not properly define its dependencies -->
-        <dependency>
-            <groupId>jboss</groupId>
-            <artifactId>jboss-system</artifactId>
-            <version>4.0.2</version>
-        </dependency>
-        <dependency>
-            <groupId>jboss</groupId>
-            <artifactId>jboss-common</artifactId>
-            <version>4.0.2</version>
-        </dependency>
-        <dependency>
-            <groupId>jboss</groupId>
-            <artifactId>jboss-minimal</artifactId>
-            <version>4.0.2</version>
-        </dependency>
-        <dependency>
-            <groupId>jboss</groupId>
-            <artifactId>jboss-j2se</artifactId>
-            <version>200504122039</version>
-        </dependency>
-        <dependency>
-            <groupId>concurrent</groupId>
-            <artifactId>concurrent</artifactId>
-            <version>1.3.4</version>
-        </dependency>
-        <dependency>
-            <groupId>jgroups</groupId>
-            <artifactId>jgroups-all</artifactId>
-            <version>2.2.7</version>
-        </dependency>
-
-        <!-- testing deps -->
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-testing</artifactId>
-            <version>${version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>hsqldb</groupId>
-            <artifactId>hsqldb</artifactId>
-            <version>1.8.0.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging</artifactId>
-            <version>99.0-does-not-exist</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging-api</artifactId>
-            <version>99.0-does-not-exist</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>jcl104-over-slf4j</artifactId>
-            <version>1.4.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
-            <version>1.4.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>log4j</groupId>
-            <artifactId>log4j</artifactId>
-            <version>1.2.14</version>
-            <scope>test</scope>
-        </dependency>
-        <!-- these are optional on core... :( -->
-        <dependency>
-            <groupId>javassist</groupId>
-            <artifactId>javassist</artifactId>
-            <version>3.4.GA</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>cglib</groupId>
-            <artifactId>cglib</artifactId>
-            <version>2.1_3</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>asm</groupId>
-            <artifactId>asm-attrs</artifactId>
-            <version>1.5.3</version>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-
-</project>

Copied: core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache/pom.xml (from rev 14419, core/trunk/cache-jbosscache/pom.xml)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache/pom.xml	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,132 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    
+    <parent>
+        <groupId>org.hibernate</groupId>
+        <artifactId>hibernate-core-parent</artifactId>
+        <version>1</version>
+    </parent>
+    
+    <groupId>org.hibernate</groupId>
+    <artifactId>hibernate-jbosscache</artifactId>
+    <version>3.3.0.Alpha1</version>
+    <packaging>jar</packaging>
+
+    <name>Hibernate JBossCache Integration</name>
+    <description>Integration of Hibernate with JBossCache (based on JBossCache1.x APIs)</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-core</artifactId>
+            <version>${version}</version>
+        </dependency>
+        <dependency>
+            <groupId>jboss</groupId>
+            <artifactId>jboss-cache</artifactId>
+            <version>1.4.1.GA</version>
+        </dependency>
+        <!-- jboss-cache (the one from the jboss repo, anyway) does not properly define its dependencies -->
+        <dependency>
+            <groupId>jboss</groupId>
+            <artifactId>jboss-system</artifactId>
+            <version>4.0.2</version>
+        </dependency>
+        <dependency>
+            <groupId>jboss</groupId>
+            <artifactId>jboss-common</artifactId>
+            <version>4.0.2</version>
+        </dependency>
+        <dependency>
+            <groupId>jboss</groupId>
+            <artifactId>jboss-minimal</artifactId>
+            <version>4.0.2</version>
+        </dependency>
+        <dependency>
+            <groupId>jboss</groupId>
+            <artifactId>jboss-j2se</artifactId>
+            <version>200504122039</version>
+        </dependency>
+        <dependency>
+            <groupId>concurrent</groupId>
+            <artifactId>concurrent</artifactId>
+            <version>1.3.4</version>
+        </dependency>
+        <dependency>
+            <groupId>jgroups</groupId>
+            <artifactId>jgroups-all</artifactId>
+            <version>2.2.7</version>
+        </dependency>
+
+        <!-- testing deps -->
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-testing</artifactId>
+            <version>${version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>hsqldb</groupId>
+            <artifactId>hsqldb</artifactId>
+            <version>1.8.0.2</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging</artifactId>
+            <version>99.0-does-not-exist</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging-api</artifactId>
+            <version>99.0-does-not-exist</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>jcl104-over-slf4j</artifactId>
+            <version>1.4.2</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-log4j12</artifactId>
+            <version>1.4.2</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>log4j</groupId>
+            <artifactId>log4j</artifactId>
+            <version>1.2.14</version>
+            <scope>test</scope>
+        </dependency>
+        <!-- these are optional on core... :( -->
+        <dependency>
+            <groupId>javassist</groupId>
+            <artifactId>javassist</artifactId>
+            <version>3.4.GA</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>cglib</groupId>
+            <artifactId>cglib</artifactId>
+            <version>2.1_3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>asm</groupId>
+            <artifactId>asm-attrs</artifactId>
+            <version>1.5.3</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+
+  <scm>
+    <connection>scm:svn:http://anonsvn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1</connection>
+    <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-jbosscache</developerConnection>
+    <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-jbosscache</url>
+  </scm>
+</project>
\ No newline at end of file

Deleted: core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache2/pom.xml
===================================================================
--- core/trunk/cache-jbosscache2/pom.xml	2007-12-11 01:09:52 UTC (rev 14241)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache2/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,177 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    
-    <parent>
-        <groupId>org.hibernate</groupId>
-        <artifactId>hibernate-core-parent</artifactId>
-        <version>1</version>
-    </parent>
-    
-    <groupId>org.hibernate</groupId>
-    <artifactId>hibernate-jbosscache2</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
-    <packaging>jar</packaging>
-
-    <name>Hibernate JBossCache2.x Integration</name>
-    <description>Integration of Hibernate with JBossCache (based on JBossCache2.x APIs)</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-core</artifactId>
-            <version>${version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.jboss.cache</groupId>
-            <artifactId>jbosscache-core</artifactId>
-            <!-- I'd prefer this, at least until we get a GA...
-            <version>[2.0.0.BETA2,)</version>
-            -->
-            <version>2.1.0.BETA1</version>
-        </dependency>
-
-        <!-- test dependencies -->
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-testing</artifactId>
-            <version>${version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>hsqldb</groupId>
-            <artifactId>hsqldb</artifactId>
-            <version>1.8.0.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging</artifactId>
-            <version>99.0-does-not-exist</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging-api</artifactId>
-            <version>99.0-does-not-exist</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>jcl104-over-slf4j</artifactId>
-            <version>1.4.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
-            <version>1.4.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>log4j</groupId>
-            <artifactId>log4j</artifactId>
-            <version>1.2.14</version>
-            <scope>test</scope>
-        </dependency>
-        <!-- these are optional on core :( and needed for testing -->
-        <dependency>
-            <groupId>javassist</groupId>
-            <artifactId>javassist</artifactId>
-            <version>3.4.GA</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>cglib</groupId>
-            <artifactId>cglib</artifactId>
-            <version>2.1_3</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>asm</groupId>
-            <artifactId>asm-attrs</artifactId>
-            <version>1.5.3</version>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <testResources>
-            <testResource>
-                <filtering>false</filtering>
-                <directory>src/test/java</directory>
-                <includes>
-                    <include>**/*.xml</include>
-                </includes>
-            </testResource>
-            <testResource>
-                <filtering>true</filtering>
-                <directory>src/test/resources</directory>
-            </testResource>
-        </testResources>
-        
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <configuration>
-                    <source>1.5</source>
-                    <target>1.5</target>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-surefire-plugin</artifactId>
-                <configuration>
-                    <systemProperties>
-                        <property>
-                            <name>hibernate.test.validatefailureexpected</name>
-                            <value>true</value>
-                        </property>
-                        <property>
-                            <name>jgroups.bind_addr</name>
-                            <value>${jgroups.bind_addr}</value>
-                        </property>
-                        <!-- There are problems with multicast and IPv6 on some
-                             OS/JDK combos, so we tell Java to use IPv4. If you
-                             have problems with multicast when running the tests
-                             you can try setting this to 'false', although typically
-                             that won't be helpful.
-                        -->
-                        <property>
-                            <name>java.net.preferIPv4Stack</name>
-                            <value>true</value>
-                        </property>
-                    </systemProperties>
-                    <skipExec>${skipUnitTests}</skipExec>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-    <properties>
-        <skipUnitTests>true</skipUnitTests>
-        <!-- 
-            Following is the default jgroups mcast address.  If you find the testsuite runs very slowly, there
-            may be problems with multicast on the interface JGroups uses by default on your machine. You can
-            try to resolve setting 'jgroups.bind_addr' as a system-property to the jvm launching maven and
-            setting the value to an interface where you know multicast works
-        -->
-        <jgroups.bind_addr>127.0.0.1</jgroups.bind_addr>
-    </properties>
-
-    <profiles>
-        <profile>
-            <id>test</id>
-            <activation>
-                <activeByDefault>false</activeByDefault>
-            </activation>
-            <properties>
-                <skipUnitTests>false</skipUnitTests>
-            </properties>
-        </profile>
-     </profiles>
-
-</project>

Copied: core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache2/pom.xml (from rev 14419, core/trunk/cache-jbosscache2/pom.xml)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache2/pom.xml	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-jbosscache2/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,212 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    
+    <parent>
+        <groupId>org.hibernate</groupId>
+        <artifactId>hibernate-core-parent</artifactId>
+        <version>1</version>
+    </parent>
+    
+    <groupId>org.hibernate</groupId>
+    <artifactId>hibernate-jbosscache2</artifactId>
+    <version>3.3.0.Alpha1</version>
+    <packaging>jar</packaging>
+
+    <name>Hibernate JBossCache2.x Integration</name>
+    <description>Integration of Hibernate with JBossCache (based on JBossCache2.x APIs)</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-core</artifactId>
+            <version>${version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.jboss.cache</groupId>
+            <artifactId>jbosscache-core</artifactId>
+            <version>2.1.0.CR4</version>
+        </dependency>
+        <!-- TODO Remove once JBC 2.1.0.GA uses JG 2.6.1 -->
+        <dependency>
+            <groupId>jgroups</groupId>
+            <artifactId>jgroups</artifactId>
+            <version>2.6.1</version>
+        </dependency>
+        
+        <!-- test dependencies -->
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-testing</artifactId>
+            <version>${version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>hsqldb</groupId>
+            <artifactId>hsqldb</artifactId>
+            <version>1.8.0.2</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging</artifactId>
+            <version>99.0-does-not-exist</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging-api</artifactId>
+            <version>99.0-does-not-exist</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>jcl104-over-slf4j</artifactId>
+            <version>1.4.2</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-log4j12</artifactId>
+            <version>1.4.2</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>log4j</groupId>
+            <artifactId>log4j</artifactId>
+            <version>1.2.14</version>
+            <scope>test</scope>
+        </dependency>
+        <!-- these are optional on core :( and needed for testing -->
+        <dependency>
+            <groupId>javassist</groupId>
+            <artifactId>javassist</artifactId>
+            <version>3.4.GA</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>cglib</groupId>
+            <artifactId>cglib</artifactId>
+            <version>2.1_3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>asm</groupId>
+            <artifactId>asm-attrs</artifactId>
+            <version>1.5.3</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <testResources>
+            <testResource>
+                <filtering>false</filtering>
+                <directory>src/test/java</directory>
+                <includes>
+                    <include>**/*.xml</include>
+                </includes>
+            </testResource>
+            <testResource>
+                <filtering>true</filtering>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <source>1.5</source>
+                    <target>1.5</target>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-surefire-plugin</artifactId>
+                <configuration>
+                    <excludes>
+                        <!-- Skip a long-running test of a prototype class -->
+                        <exclude>**/ClusteredConcurrentTimestampRegionTestCase.java</exclude>
+                    </excludes>
+                    <systemProperties>
+                        <property>
+                            <name>hibernate.test.validatefailureexpected</name>
+                            <value>true</value>
+                        </property>
+                        <property>
+                            <name>jgroups.bind_addr</name>
+                            <value>${jgroups.bind_addr}</value>
+                        </property>
+                        <!-- There are problems with multicast and IPv6 on some
+                             OS/JDK combos, so we tell Java to use IPv4. If you
+                             have problems with multicast when running the tests
+                             you can try setting this to 'false', although typically
+                             that won't be helpful.
+                        -->
+                        <property>
+                            <name>java.net.preferIPv4Stack</name>
+                            <value>true</value>
+                        </property>
+                        <!-- Tell JGroups to only wait a short time for PING 
+                             responses before determining coordinator. Speeds cluster
+                             formation during integration tests. (This is too
+                             low a value for a real system; only use for tests.)
+                        -->
+                        <property>
+                            <name>jgroups.ping.timeout</name>
+                            <value>500</value>
+                        </property>
+                        <!-- Tell JGroups to only require one PING response
+                             before determining coordinator. Speeds cluster
+                             formation during integration tests. (This is too
+                             low a value for a real system; only use for tests.)
+                        -->
+                        <property>
+                            <name>jgroups.ping.num_initial_members</name>
+                            <value>1</value>
+                        </property>
+                        <!-- Disable the JGroups message bundling feature
+                             to speed tests and avoid FLUSH issue -->
+                        <property>
+                            <name>jgroups.udp.enable_bundling</name>
+                            <value>false</value>
+                        </property>
+                    </systemProperties>
+                    <skipExec>${skipUnitTests}</skipExec>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <properties>
+        <skipUnitTests>true</skipUnitTests>
+        <!-- 
+            Following is the default jgroups mcast address.  If you find the testsuite runs very slowly, there
+            may be problems with multicast on the interface JGroups uses by default on your machine. You can
+            try to resolve setting 'jgroups.bind_addr' as a system-property to the jvm launching maven and
+            setting the value to an interface where you know multicast works
+        -->
+        <jgroups.bind_addr>127.0.0.1</jgroups.bind_addr>
+    </properties>
+
+    <profiles>
+        <profile>
+            <id>test</id>
+            <activation>
+                <activeByDefault>false</activeByDefault>
+            </activation>
+            <properties>
+                <skipUnitTests>false</skipUnitTests>
+            </properties>
+        </profile>
+     </profiles>
+
+
+  <scm>
+    <connection>scm:svn:http://anonsvn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1</connection>
+    <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-jbosscache2</developerConnection>
+    <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-jbosscache2</url>
+  </scm>
+</project>
\ No newline at end of file

Deleted: core/tags/hibernate-3.3.0.Alpha1/cache-oscache/pom.xml
===================================================================
--- core/trunk/cache-oscache/pom.xml	2007-12-11 01:09:52 UTC (rev 14241)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-oscache/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,34 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    
-    <parent>
-        <groupId>org.hibernate</groupId>
-        <artifactId>hibernate-core-parent</artifactId>
-        <version>1</version>
-    </parent>
-    
-    <groupId>org.hibernate</groupId>
-    <artifactId>hibernate-oscache</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
-    <packaging>jar</packaging>
-
-    <name>Hibernate OSCache Integration</name>
-    <description>Integration of Hibernate with OSCache</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-core</artifactId>
-            <version>${version}</version>
-        </dependency>
-        <dependency>
-            <groupId>opensymphony</groupId>
-            <artifactId>oscache</artifactId>
-            <version>2.1</version>
-        </dependency>
-    </dependencies>
-
-</project>

Copied: core/tags/hibernate-3.3.0.Alpha1/cache-oscache/pom.xml (from rev 14419, core/trunk/cache-oscache/pom.xml)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/cache-oscache/pom.xml	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-oscache/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,38 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    
+    <parent>
+        <groupId>org.hibernate</groupId>
+        <artifactId>hibernate-core-parent</artifactId>
+        <version>1</version>
+    </parent>
+    
+    <groupId>org.hibernate</groupId>
+    <artifactId>hibernate-oscache</artifactId>
+    <version>3.3.0.Alpha1</version>
+    <packaging>jar</packaging>
+
+    <name>Hibernate OSCache Integration</name>
+    <description>Integration of Hibernate with OSCache</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-core</artifactId>
+            <version>${version}</version>
+        </dependency>
+        <dependency>
+            <groupId>opensymphony</groupId>
+            <artifactId>oscache</artifactId>
+            <version>2.1</version>
+        </dependency>
+    </dependencies>
+
+
+  <scm>
+    <connection>scm:svn:http://anonsvn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1</connection>
+    <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-oscache</developerConnection>
+    <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-oscache</url>
+  </scm>
+</project>
\ No newline at end of file

Deleted: core/tags/hibernate-3.3.0.Alpha1/cache-swarmcache/pom.xml
===================================================================
--- core/trunk/cache-swarmcache/pom.xml	2007-12-11 01:09:52 UTC (rev 14241)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-swarmcache/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,34 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    
-    <parent>
-        <groupId>org.hibernate</groupId>
-        <artifactId>hibernate-core-parent</artifactId>
-        <version>1</version>
-    </parent>
-    
-    <groupId>org.hibernate</groupId>
-    <artifactId>hibernate-swarmcache</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
-    <packaging>jar</packaging>
-
-    <name>Hibernate SwarmCache Integration</name>
-    <description>Integration of Hibernate with SwarmCache</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-core</artifactId>
-            <version>${version}</version>
-        </dependency>
-        <dependency>
-            <groupId>swarmcache</groupId>
-            <artifactId>swarmcache</artifactId>
-            <version>1.0RC2</version>
-        </dependency>
-    </dependencies>
-
-</project>

Copied: core/tags/hibernate-3.3.0.Alpha1/cache-swarmcache/pom.xml (from rev 14419, core/trunk/cache-swarmcache/pom.xml)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/cache-swarmcache/pom.xml	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/cache-swarmcache/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,38 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    
+    <parent>
+        <groupId>org.hibernate</groupId>
+        <artifactId>hibernate-core-parent</artifactId>
+        <version>1</version>
+    </parent>
+    
+    <groupId>org.hibernate</groupId>
+    <artifactId>hibernate-swarmcache</artifactId>
+    <version>3.3.0.Alpha1</version>
+    <packaging>jar</packaging>
+
+    <name>Hibernate SwarmCache Integration</name>
+    <description>Integration of Hibernate with SwarmCache</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-core</artifactId>
+            <version>${version}</version>
+        </dependency>
+        <dependency>
+            <groupId>swarmcache</groupId>
+            <artifactId>swarmcache</artifactId>
+            <version>1.0RC2</version>
+        </dependency>
+    </dependencies>
+
+
+  <scm>
+    <connection>scm:svn:http://anonsvn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1</connection>
+    <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-swarmcache</developerConnection>
+    <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-swarmcache</url>
+  </scm>
+</project>
\ No newline at end of file

Deleted: core/tags/hibernate-3.3.0.Alpha1/connection-c3p0/pom.xml
===================================================================
--- core/trunk/connection-c3p0/pom.xml	2007-12-11 01:09:52 UTC (rev 14241)
+++ core/tags/hibernate-3.3.0.Alpha1/connection-c3p0/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,34 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    
-    <parent>
-        <groupId>org.hibernate</groupId>
-        <artifactId>hibernate-core-parent</artifactId>
-        <version>1</version>
-    </parent>
-    
-    <groupId>org.hibernate</groupId>
-    <artifactId>hibernate-c3p0</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
-    <packaging>jar</packaging>
-
-    <name>Hibernate C3P0 ConnectionProvider</name>
-    <description>C3P0-based implementation of the Hibernate ConnectionProvder contract</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-core</artifactId>
-            <version>${version}</version>
-        </dependency>
-        <dependency>
-            <groupId>c3p0</groupId>
-            <artifactId>c3p0</artifactId>
-            <version>0.9.1</version>
-        </dependency>
-    </dependencies>
-
-</project>

Copied: core/tags/hibernate-3.3.0.Alpha1/connection-c3p0/pom.xml (from rev 14419, core/trunk/connection-c3p0/pom.xml)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/connection-c3p0/pom.xml	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/connection-c3p0/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,38 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    
+    <parent>
+        <groupId>org.hibernate</groupId>
+        <artifactId>hibernate-core-parent</artifactId>
+        <version>1</version>
+    </parent>
+    
+    <groupId>org.hibernate</groupId>
+    <artifactId>hibernate-c3p0</artifactId>
+    <version>3.3.0.Alpha1</version>
+    <packaging>jar</packaging>
+
+    <name>Hibernate C3P0 ConnectionProvider</name>
+    <description>C3P0-based implementation of the Hibernate ConnectionProvder contract</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-core</artifactId>
+            <version>${version}</version>
+        </dependency>
+        <dependency>
+            <groupId>c3p0</groupId>
+            <artifactId>c3p0</artifactId>
+            <version>0.9.1</version>
+        </dependency>
+    </dependencies>
+
+
+  <scm>
+    <connection>scm:svn:http://anonsvn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1</connection>
+    <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-c3p0</developerConnection>
+    <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-c3p0</url>
+  </scm>
+</project>
\ No newline at end of file

Deleted: core/tags/hibernate-3.3.0.Alpha1/connection-proxool/pom.xml
===================================================================
--- core/trunk/connection-proxool/pom.xml	2007-12-11 01:09:52 UTC (rev 14241)
+++ core/tags/hibernate-3.3.0.Alpha1/connection-proxool/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,34 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    
-    <parent>
-        <groupId>org.hibernate</groupId>
-        <artifactId>hibernate-core-parent</artifactId>
-        <version>1</version>
-    </parent>
-    
-    <groupId>org.hibernate</groupId>
-    <artifactId>hibernate-proxool</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
-    <packaging>jar</packaging>
-
-    <name>Hibernate Proxool ConnectionProvider</name>
-    <description>Proxool-based implementation of the Hibernate ConnectionProvder contract</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>${groupId}</groupId>
-            <artifactId>hibernate-core</artifactId>
-            <version>${version}</version>
-        </dependency>
-        <dependency>
-            <groupId>proxool</groupId>
-            <artifactId>proxool</artifactId>
-            <version>0.8.3</version>
-        </dependency>
-    </dependencies>
-
-</project>

Copied: core/tags/hibernate-3.3.0.Alpha1/connection-proxool/pom.xml (from rev 14419, core/trunk/connection-proxool/pom.xml)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/connection-proxool/pom.xml	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/connection-proxool/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,38 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    
+    <parent>
+        <groupId>org.hibernate</groupId>
+        <artifactId>hibernate-core-parent</artifactId>
+        <version>1</version>
+    </parent>
+    
+    <groupId>org.hibernate</groupId>
+    <artifactId>hibernate-proxool</artifactId>
+    <version>3.3.0.Alpha1</version>
+    <packaging>jar</packaging>
+
+    <name>Hibernate Proxool ConnectionProvider</name>
+    <description>Proxool-based implementation of the Hibernate ConnectionProvder contract</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>${groupId}</groupId>
+            <artifactId>hibernate-core</artifactId>
+            <version>${version}</version>
+        </dependency>
+        <dependency>
+            <groupId>proxool</groupId>
+            <artifactId>proxool</artifactId>
+            <version>0.8.3</version>
+        </dependency>
+    </dependencies>
+
+
+  <scm>
+    <connection>scm:svn:http://anonsvn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1</connection>
+    <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-proxool</developerConnection>
+    <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-proxool</url>
+  </scm>
+</project>
\ No newline at end of file

Copied: core/tags/hibernate-3.3.0.Alpha1/core (from rev 14306, core/trunk/core)

Deleted: core/tags/hibernate-3.3.0.Alpha1/core/pom.xml
===================================================================
--- core/trunk/core/pom.xml	2008-02-02 07:51:59 UTC (rev 14306)
+++ core/tags/hibernate-3.3.0.Alpha1/core/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,147 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" 
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    
-    <parent>
-        <groupId>org.hibernate</groupId>
-        <artifactId>hibernate-core-parent</artifactId>
-        <version>1</version>
-    </parent>
-
-    <groupId>org.hibernate</groupId>
-    <artifactId>hibernate-core</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
-    <packaging>jar</packaging>
-
-    <name>Hibernate Core</name>
-    <description>The core functionality of Hibernate</description>
-
-    <dependencies>
-        <dependency>
-            <groupId>antlr</groupId>
-            <artifactId>antlr</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>dom4j</groupId>
-            <artifactId>dom4j</artifactId>
-        </dependency>
-
-        <dependency>
-            <!-- YUCK, YUCK, YUCK!!!! -->
-            <groupId>javax.transaction</groupId>
-            <artifactId>jta</artifactId>
-            <version>1.1</version>
-        </dependency>
-        <dependency>
-            <groupId>javax.security</groupId>
-            <artifactId>jaas</artifactId>
-            <version>1.0.01</version>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>javax.security</groupId>
-            <artifactId>jacc</artifactId>
-            <version>1.0</version>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>ant</groupId>
-            <artifactId>ant</artifactId>
-            <version>1.6.5</version>
-            <scope>provided</scope>
-        </dependency>
-
-        <!-- optional deps for bytecode providers until those are finally properly scoped -->
-        <dependency>
-            <groupId>javassist</groupId>
-            <artifactId>javassist</artifactId>
-            <version>3.4.GA</version>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>cglib</groupId>
-            <artifactId>cglib</artifactId>
-            <version>2.1_3</version>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>asm</groupId>
-            <artifactId>asm-attrs</artifactId>
-            <version>1.5.3</version>
-            <optional>true</optional>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>antlr-maven-plugin</artifactId>
-                <version>${antlrPluginVersion}</version>
-                <configuration>
-                    <grammars>hql.g,hql-sql.g,sql-gen.g</grammars>
-                </configuration>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>generate</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-
-    <reporting>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>antlr-maven-plugin</artifactId>
-                <version>${antlrPluginVersion}</version>
-                <configuration>
-                    <!-- eventually should be based on the second phase grammar -->
-                    <grammars>hql.g</grammars>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-javadoc-plugin</artifactId>
-                <configuration>
-                    <!-- 
-                    for the time being, gonna ignore the custom stylesheet (what did it do anyway???) 
-                    <stylesheetfile>xyz</stylesheetfile>
-                    -->
-                    <groups>
-                        <group>
-                            <title>Core API</title>
-                            <packages>org.hibernate:org.hibernate.classic:org.hibernate.criterion:org.hibernate.metadata:org.hibernate.cfg:org.hibernate.usertype</packages>
-                        </group>
-                        <group>
-                            <title>Extension API</title>
-                            <packages>org.hibernate.id:org.hibernate.connection:org.hibernate.transaction:org.hibernate.type:org.hibernate.dialect*:org.hibernate.cache*:org.hibernate.event*:org.hibernate.action:org.hibernate.property:org.hibernate.loader*:org.hibernate.persister*:org.hibernate.proxy:org.hibernate.tuple:org.hibernate.transform:org.hibernate.collection:org.hibernate.jdbc</packages>
-                        </group>
-                        <group>
-                            <title>Miscellaneous API</title>
-                            <packages>org.hibernate.stat:org.hibernate.tool.hbm2ddl:org.hibernate.jmx:org.hibernate.mapping:org.hibernate.tool.instrument</packages>
-                        </group>
-                        <group>
-                            <title>Internal Implementation</title>
-			    <packages>org.hibernate.engine:org.hibernate.impl:org.hibernate.sql:org.hibernate.lob:org.hibernate.util:org.hibernate.exception:org.hibernate.hql:org.hibernate.hql.ast:org.hibernate.hql.antlr:org.hibernate.hql.classic:org.hibernate.intercept:org.hibernate.secure:org.hibernate.pretty</packages>
-                        </group>
-                    </groups>
-                </configuration>
-            </plugin>
-        </plugins>
-    </reporting>
-
-    <properties>
-        <antlrPluginVersion>2.1-SNAPSHOT</antlrPluginVersion>
-    </properties>
-
-</project>

Copied: core/tags/hibernate-3.3.0.Alpha1/core/pom.xml (from rev 14419, core/trunk/core/pom.xml)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/core/pom.xml	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/core/pom.xml	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,151 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    
+    <parent>
+        <groupId>org.hibernate</groupId>
+        <artifactId>hibernate-core-parent</artifactId>
+        <version>1</version>
+    </parent>
+
+    <groupId>org.hibernate</groupId>
+    <artifactId>hibernate-core</artifactId>
+    <version>3.3.0.Alpha1</version>
+    <packaging>jar</packaging>
+
+    <name>Hibernate Core</name>
+    <description>The core functionality of Hibernate</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>antlr</groupId>
+            <artifactId>antlr</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>commons-collections</groupId>
+            <artifactId>commons-collections</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>dom4j</groupId>
+            <artifactId>dom4j</artifactId>
+        </dependency>
+
+        <dependency>
+            <!-- YUCK, YUCK, YUCK!!!! -->
+            <groupId>javax.transaction</groupId>
+            <artifactId>jta</artifactId>
+            <version>1.1</version>
+        </dependency>
+        <dependency>
+            <groupId>javax.security</groupId>
+            <artifactId>jaas</artifactId>
+            <version>1.0.01</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>javax.security</groupId>
+            <artifactId>jacc</artifactId>
+            <version>1.0</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>ant</groupId>
+            <artifactId>ant</artifactId>
+            <version>1.6.5</version>
+            <scope>provided</scope>
+        </dependency>
+
+        <!-- optional deps for bytecode providers until those are finally properly scoped -->
+        <dependency>
+            <groupId>javassist</groupId>
+            <artifactId>javassist</artifactId>
+            <version>3.4.GA</version>
+            <optional>true</optional>
+        </dependency>
+        <dependency>
+            <groupId>cglib</groupId>
+            <artifactId>cglib</artifactId>
+            <version>2.1_3</version>
+            <optional>true</optional>
+        </dependency>
+        <dependency>
+            <groupId>asm</groupId>
+            <artifactId>asm-attrs</artifactId>
+            <version>1.5.3</version>
+            <optional>true</optional>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>antlr-maven-plugin</artifactId>
+                <version>${antlrPluginVersion}</version>
+                <configuration>
+                    <grammars>hql.g,hql-sql.g,sql-gen.g</grammars>
+                </configuration>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>generate</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>antlr-maven-plugin</artifactId>
+                <version>${antlrPluginVersion}</version>
+                <configuration>
+                    <!-- eventually should be based on the second phase grammar -->
+                    <grammars>hql.g</grammars>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <!-- 
+                    for the time being, gonna ignore the custom stylesheet (what did it do anyway???) 
+                    <stylesheetfile>xyz</stylesheetfile>
+                    -->
+                    <groups>
+                        <group>
+                            <title>Core API</title>
+                            <packages>org.hibernate:org.hibernate.classic:org.hibernate.criterion:org.hibernate.metadata:org.hibernate.cfg:org.hibernate.usertype</packages>
+                        </group>
+                        <group>
+                            <title>Extension API</title>
+                            <packages>org.hibernate.id:org.hibernate.connection:org.hibernate.transaction:org.hibernate.type:org.hibernate.dialect*:org.hibernate.cache*:org.hibernate.event*:org.hibernate.action:org.hibernate.property:org.hibernate.loader*:org.hibernate.persister*:org.hibernate.proxy:org.hibernate.tuple:org.hibernate.transform:org.hibernate.collection:org.hibernate.jdbc</packages>
+                        </group>
+                        <group>
+                            <title>Miscellaneous API</title>
+                            <packages>org.hibernate.stat:org.hibernate.tool.hbm2ddl:org.hibernate.jmx:org.hibernate.mapping:org.hibernate.tool.instrument</packages>
+                        </group>
+                        <group>
+                            <title>Internal Implementation</title>
+			    <packages>org.hibernate.engine:org.hibernate.impl:org.hibernate.sql:org.hibernate.lob:org.hibernate.util:org.hibernate.exception:org.hibernate.hql:org.hibernate.hql.ast:org.hibernate.hql.antlr:org.hibernate.hql.classic:org.hibernate.intercept:org.hibernate.secure:org.hibernate.pretty</packages>
+                        </group>
+                    </groups>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <properties>
+        <antlrPluginVersion>2.1</antlrPluginVersion>
+    </properties>
+
+
+  <scm>
+    <connection>scm:svn:http://anonsvn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1</connection>
+    <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-core</developerConnection>
+    <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/hibernate/core/tags/hibernate-3.3.0.Alpha1/hibernate-core</url>
+  </scm>
+</project>
\ No newline at end of file

Deleted: core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/dialect/DialectFactory.java
===================================================================
--- core/trunk/core/src/main/java/org/hibernate/dialect/DialectFactory.java	2008-02-02 07:51:59 UTC (rev 14306)
+++ core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/dialect/DialectFactory.java	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,151 +0,0 @@
-// $Id: DialectFactory.java 9789 2006-04-25 17:06:55Z epbernard $
-package org.hibernate.dialect;
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Properties;
-
-import org.hibernate.HibernateException;
-import org.hibernate.cfg.Environment;
-import org.hibernate.util.ReflectHelper;
-
-/**
- * A factory for generating Dialect instances.
- *
- * @author Steve Ebersole
- */
-public class DialectFactory {
-
-	/**
-	 * Builds an appropriate Dialect instance.
-	 * <p/>
-	 * If a dialect is explicitly named in the incoming properties, it is used. Otherwise, the database name and version
-	 * (obtained from connection metadata) are used to make the dertemination.
-	 * <p/>
-	 * An exception is thrown if a dialect was not explicitly set and the database name is not known.
-	 *
-	 * @param props The configuration properties.
-	 * @param databaseName The name of the database product (obtained from metadata).
-	 * @param databaseMajorVersion The major version of the database product (obtained from metadata).
-	 *
-	 * @return The appropriate dialect.
-	 *
-	 * @throws HibernateException No dialect specified and database name not known.
-	 */
-	public static Dialect buildDialect(Properties props, String databaseName, int databaseMajorVersion)
-	        throws HibernateException {
-		String dialectName = props.getProperty( Environment.DIALECT );
-		if ( dialectName == null ) {
-			return determineDialect( databaseName, databaseMajorVersion );
-		}
-		else {
-			return buildDialect( dialectName );
-		}
-	}
-
-	/**
-	 * Determine the appropriate Dialect to use given the database product name
-	 * and major version.
-	 *
-	 * @param databaseName The name of the database product (obtained from metadata).
-	 * @param databaseMajorVersion The major version of the database product (obtained from metadata).
-	 *
-	 * @return An appropriate dialect instance.
-	 */
-	public static Dialect determineDialect(String databaseName, int databaseMajorVersion) {
-		if ( databaseName == null ) {
-			throw new HibernateException( "Hibernate Dialect must be explicitly set" );
-		}
-
-		DatabaseDialectMapper mapper = ( DatabaseDialectMapper ) MAPPERS.get( databaseName );
-		if ( mapper == null ) {
-			throw new HibernateException( "Hibernate Dialect must be explicitly set for database: " + databaseName );
-		}
-
-		String dialectName = mapper.getDialectClass( databaseMajorVersion );
-		return buildDialect( dialectName );
-	}
-
-	/**
-	 * Returns a dialect instance given the name of the class to use.
-	 *
-	 * @param dialectName The name of the dialect class.
-	 *
-	 * @return The dialect instance.
-	 */
-	public static Dialect buildDialect(String dialectName) {
-		try {
-			return ( Dialect ) ReflectHelper.classForName( dialectName ).newInstance();
-		}
-		catch ( ClassNotFoundException cnfe ) {
-			throw new HibernateException( "Dialect class not found: " + dialectName );
-		}
-		catch ( Exception e ) {
-			throw new HibernateException( "Could not instantiate dialect class", e );
-		}
-	}
-
-	/**
-	 * For a given database product name, instances of
-	 * DatabaseDialectMapper know which Dialect to use for different versions.
-	 */
-	public static interface DatabaseDialectMapper {
-		public String getDialectClass(int majorVersion);
-	}
-
-	/**
-	 * A simple DatabaseDialectMapper for dialects which are independent
-	 * of the underlying database product version.
-	 */
-	public static class VersionInsensitiveMapper implements DatabaseDialectMapper {
-		private String dialectClassName;
-
-		public VersionInsensitiveMapper(String dialectClassName) {
-			this.dialectClassName = dialectClassName;
-		}
-
-		public String getDialectClass(int majorVersion) {
-			return dialectClassName;
-		}
-	}
-
-	// TODO : this is the stuff it'd be nice to move to a properties file or some other easily user-editable place
-	private static final Map MAPPERS = new HashMap();
-	static {
-		MAPPERS.put( "HSQL Database Engine", new VersionInsensitiveMapper( "org.hibernate.dialect.HSQLDialect" ) );
-		MAPPERS.put( "H2", new VersionInsensitiveMapper( "org.hibernate.dialect.H2Dialect" ) );
-		MAPPERS.put( "MySQL", new VersionInsensitiveMapper( "org.hibernate.dialect.MySQLDialect" ) );
-		MAPPERS.put( "PostgreSQL", new VersionInsensitiveMapper( "org.hibernate.dialect.PostgreSQLDialect" ) );
-		MAPPERS.put( "Apache Derby", new VersionInsensitiveMapper( "org.hibernate.dialect.DerbyDialect" ) );
-
-		MAPPERS.put( "Microsoft SQL Server Database", new VersionInsensitiveMapper( "org.hibernate.dialect.SQLServerDialect" ) );
-		MAPPERS.put( "Microsoft SQL Server", new VersionInsensitiveMapper( "org.hibernate.dialect.SQLServerDialect" ) );
-		MAPPERS.put( "Sybase SQL Server", new VersionInsensitiveMapper( "org.hibernate.dialect.SybaseDialect" ) );
-		MAPPERS.put( "Adaptive Server Enterprise", new VersionInsensitiveMapper( "org.hibernate.dialect.SybaseDialect" ) );
-
-		MAPPERS.put( "Informix Dynamic Server", new VersionInsensitiveMapper( "org.hibernate.dialect.InformixDialect" ) );
-
-		// thanks goodness for "universal" databases...
-		MAPPERS.put( "DB2/NT", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
-		MAPPERS.put( "DB2/LINUX", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
-		MAPPERS.put( "DB2/6000", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
-		MAPPERS.put( "DB2/HPUX", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
-		MAPPERS.put( "DB2/SUN", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
-		MAPPERS.put( "DB2/LINUX390", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
-		MAPPERS.put( "DB2/AIX64", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
-
-		MAPPERS.put(
-		        "Oracle",
-		        new DatabaseDialectMapper() {
-			        public String getDialectClass(int majorVersion) {
-						switch ( majorVersion ) {
-							case 8: return Oracle8iDialect.class.getName();
-							case 9: return Oracle9iDialect.class.getName();
-							case 10: return Oracle10gDialect.class.getName();
-							default: throw new HibernateException( "unknown Oracle major version [" + majorVersion + "]" );
-						}
-			        }
-		        }
-		);
-	}
-}

Copied: core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/dialect/DialectFactory.java (from rev 14317, core/trunk/core/src/main/java/org/hibernate/dialect/DialectFactory.java)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/dialect/DialectFactory.java	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/dialect/DialectFactory.java	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,156 @@
+// $Id: DialectFactory.java 9789 2006-04-25 17:06:55Z epbernard $
+package org.hibernate.dialect;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Properties;
+
+import org.hibernate.HibernateException;
+import org.hibernate.cfg.Environment;
+import org.hibernate.util.ReflectHelper;
+
+/**
+ * A factory for generating Dialect instances.
+ *
+ * @author Steve Ebersole
+ */
+public class DialectFactory {
+
+	/**
+	 * Builds an appropriate Dialect instance.
+	 * <p/>
+	 * If a dialect is explicitly named in the incoming properties, it is used. Otherwise, the database name and version
+	 * (obtained from connection metadata) are used to make the dertemination.
+	 * <p/>
+	 * An exception is thrown if a dialect was not explicitly set and the database name is not known.
+	 *
+	 * @param props The configuration properties.
+	 * @param databaseName The name of the database product (obtained from metadata).
+	 * @param databaseMajorVersion The major version of the database product (obtained from metadata).
+	 *
+	 * @return The appropriate dialect.
+	 *
+	 * @throws HibernateException No dialect specified and database name not known.
+	 */
+	public static Dialect buildDialect(Properties props, String databaseName, int databaseMajorVersion)
+	        throws HibernateException {
+		String dialectName = props.getProperty( Environment.DIALECT );
+		if ( dialectName == null ) {
+			return determineDialect( databaseName, databaseMajorVersion );
+		}
+		else {
+			return buildDialect( dialectName );
+		}
+	}
+
+	/**
+	 * Determine the appropriate Dialect to use given the database product name
+	 * and major version.
+	 *
+	 * @param databaseName The name of the database product (obtained from metadata).
+	 * @param databaseMajorVersion The major version of the database product (obtained from metadata).
+	 *
+	 * @return An appropriate dialect instance.
+	 */
+	public static Dialect determineDialect(String databaseName, int databaseMajorVersion) {
+		if ( databaseName == null ) {
+			throw new HibernateException( "Hibernate Dialect must be explicitly set" );
+		}
+
+		DatabaseDialectMapper mapper = ( DatabaseDialectMapper ) MAPPERS.get( databaseName );
+		if ( mapper == null ) {
+			throw new HibernateException( "Hibernate Dialect must be explicitly set for database: " + databaseName );
+		}
+
+		String dialectName = mapper.getDialectClass( databaseMajorVersion );
+		return buildDialect( dialectName );
+	}
+
+	/**
+	 * Returns a dialect instance given the name of the class to use.
+	 *
+	 * @param dialectName The name of the dialect class.
+	 *
+	 * @return The dialect instance.
+	 */
+	public static Dialect buildDialect(String dialectName) {
+		try {
+			return ( Dialect ) ReflectHelper.classForName( dialectName ).newInstance();
+		}
+		catch ( ClassNotFoundException cnfe ) {
+			throw new HibernateException( "Dialect class not found: " + dialectName );
+		}
+		catch ( Exception e ) {
+			throw new HibernateException( "Could not instantiate dialect class", e );
+		}
+	}
+
+	/**
+	 * For a given database product name, instances of
+	 * DatabaseDialectMapper know which Dialect to use for different versions.
+	 */
+	public static interface DatabaseDialectMapper {
+		public String getDialectClass(int majorVersion);
+	}
+
+	/**
+	 * A simple DatabaseDialectMapper for dialects which are independent
+	 * of the underlying database product version.
+	 */
+	public static class VersionInsensitiveMapper implements DatabaseDialectMapper {
+		private String dialectClassName;
+
+		public VersionInsensitiveMapper(String dialectClassName) {
+			this.dialectClassName = dialectClassName;
+		}
+
+		public String getDialectClass(int majorVersion) {
+			return dialectClassName;
+		}
+	}
+
+	// TODO : this is the stuff it'd be nice to move to a properties file or some other easily user-editable place
+	private static final Map MAPPERS = new HashMap();
+	static {
+		// detectors...
+		MAPPERS.put( "HSQL Database Engine", new VersionInsensitiveMapper( "org.hibernate.dialect.HSQLDialect" ) );
+		MAPPERS.put( "H2", new VersionInsensitiveMapper( "org.hibernate.dialect.H2Dialect" ) );
+		MAPPERS.put( "MySQL", new VersionInsensitiveMapper( "org.hibernate.dialect.MySQLDialect" ) );
+		MAPPERS.put( "PostgreSQL", new VersionInsensitiveMapper( "org.hibernate.dialect.PostgreSQLDialect" ) );
+		MAPPERS.put( "Apache Derby", new VersionInsensitiveMapper( "org.hibernate.dialect.DerbyDialect" ) );
+
+		MAPPERS.put( "Ingres", new VersionInsensitiveMapper( "org.hibernate.dialect.IngresDialect" ) );
+		MAPPERS.put( "ingres", new VersionInsensitiveMapper( "org.hibernate.dialect.IngresDialect" ) );
+		MAPPERS.put( "INGRES", new VersionInsensitiveMapper( "org.hibernate.dialect.IngresDialect" ) );
+
+		MAPPERS.put( "Microsoft SQL Server Database", new VersionInsensitiveMapper( "org.hibernate.dialect.SQLServerDialect" ) );
+		MAPPERS.put( "Microsoft SQL Server", new VersionInsensitiveMapper( "org.hibernate.dialect.SQLServerDialect" ) );
+		MAPPERS.put( "Sybase SQL Server", new VersionInsensitiveMapper( "org.hibernate.dialect.SybaseDialect" ) );
+		MAPPERS.put( "Adaptive Server Enterprise", new VersionInsensitiveMapper( "org.hibernate.dialect.SybaseDialect" ) );
+
+		MAPPERS.put( "Informix Dynamic Server", new VersionInsensitiveMapper( "org.hibernate.dialect.InformixDialect" ) );
+
+		// thanks goodness for "universal" databases...
+		MAPPERS.put( "DB2/NT", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
+		MAPPERS.put( "DB2/LINUX", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
+		MAPPERS.put( "DB2/6000", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
+		MAPPERS.put( "DB2/HPUX", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
+		MAPPERS.put( "DB2/SUN", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
+		MAPPERS.put( "DB2/LINUX390", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
+		MAPPERS.put( "DB2/AIX64", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
+
+		MAPPERS.put(
+		        "Oracle",
+		        new DatabaseDialectMapper() {
+			        public String getDialectClass(int majorVersion) {
+						switch ( majorVersion ) {
+							case 8: return Oracle8iDialect.class.getName();
+							case 9: return Oracle9iDialect.class.getName();
+							case 10: return Oracle10gDialect.class.getName();
+							default: throw new HibernateException( "unknown Oracle major version [" + majorVersion + "]" );
+						}
+			        }
+		        }
+		);
+	}
+}

Deleted: core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/engine/ActionQueue.java
===================================================================
--- core/trunk/core/src/main/java/org/hibernate/engine/ActionQueue.java	2008-02-02 07:51:59 UTC (rev 14306)
+++ core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/engine/ActionQueue.java	2008-03-11 01:59:19 UTC (rev 14420)
@@ -1,531 +0,0 @@
-// $Id: ActionQueue.java 11402 2007-04-11 14:24:35Z steve.ebersole at jboss.com $
-package org.hibernate.engine;
-
-import org.hibernate.action.EntityInsertAction;
-import org.hibernate.action.EntityDeleteAction;
-import org.hibernate.action.Executable;
-import org.hibernate.action.EntityUpdateAction;
-import org.hibernate.action.CollectionRecreateAction;
-import org.hibernate.action.CollectionRemoveAction;
-import org.hibernate.action.CollectionUpdateAction;
-import org.hibernate.action.EntityIdentityInsertAction;
-import org.hibernate.action.BulkOperationCleanupAction;
-import org.hibernate.HibernateException;
-import org.hibernate.AssertionFailure;
-import org.hibernate.cache.CacheException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.io.ObjectInputStream;
-import java.io.IOException;
-import java.io.Serializable;
-import java.io.ObjectOutputStream;
-
-/**
- * Responsible for maintaining the queue of actions related to events.
- * </p>
- * The ActionQueue holds the DML operations queued as part of a session's
- * transactional-write-behind semantics.  DML operations are queued here
- * until a flush forces them to be executed against the database.
- *
- * @author Steve Ebersole
- */
-public class ActionQueue {
-
-	private static final Logger log = LoggerFactory.getLogger( ActionQueue.class );
-	private static final int INIT_QUEUE_LIST_SIZE = 5;
-
-	private SessionImplementor session;
-
-	// Object insertions, updates, and deletions have list semantics because
-	// they must happen in the right order so as to respect referential
-	// integrity
-	private ArrayList insertions;
-	private ArrayList deletions;
-	private ArrayList updates;
-	// Actually the semantics of the next three are really "Bag"
-	// Note that, unlike objects, collection insertions, updates,
-	// deletions are not really remembered between flushes. We
-	// just re-use the same Lists for convenience.
-	private ArrayList collectionCreations;
-	private ArrayList collectionUpdates;
-	private ArrayList collectionRemovals;
-
-	private ArrayList executions;
-
-	/**
-	 * Constructs an action queue bound to the given session.
-	 *
-	 * @param session The session "owning" this queue.
-	 */
-	public ActionQueue(SessionImplementor session) {
-		this.session = session;
-		init();
-	}
-
-	private void init() {
-		insertions = new ArrayList( INIT_QUEUE_LIST_SIZE );
-		deletions = new ArrayList( INIT_QUEUE_LIST_SIZE );
-		updates = new ArrayList( INIT_QUEUE_LIST_SIZE );
-
-		collectionCreations = new ArrayList( INIT_QUEUE_LIST_SIZE );
-		collectionRemovals = new ArrayList( INIT_QUEUE_LIST_SIZE );
-		collectionUpdates = new ArrayList( INIT_QUEUE_LIST_SIZE );
-
-		executions = new ArrayList( INIT_QUEUE_LIST_SIZE * 3 );
-	}
-
-	public void clear() {
-		updates.clear();
-		insertions.clear();
-		deletions.clear();
-
-		collectionCreations.clear();
-		collectionRemovals.clear();
-		collectionUpdates.clear();
-	}
-
-	public void addAction(EntityInsertAction action) {
-		insertions.add( action );
-	}
-
-	public void addAction(EntityDeleteAction action) {
-		deletions.add( action );
-	}
-
-	public void addAction(EntityUpdateAction action) {
-		updates.add( action );
-	}
-
-	public void addAction(CollectionRecreateAction action) {
-		collectionCreations.add( action );
-	}
-
-	public void addAction(CollectionRemoveAction action) {
-		collectionRemovals.add( action );
-	}
-
-	public void addAction(CollectionUpdateAction action) {
-		collectionUpdates.add( action );
-	}
-
-	public void addAction(EntityIdentityInsertAction insert) {
-		insertions.add( insert );
-	}
-
-	public void addAction(BulkOperationCleanupAction cleanupAction) {
-		// Add these directly to the executions queue
-		executions.add( cleanupAction );
-	}
-
-	/**
-	 * Perform all currently queued entity-insertion actions.
-	 *
-	 * @throws HibernateException error executing queued insertion actions.
-	 */
-	public void executeInserts() throws HibernateException {
-		executeActions( insertions );
-	}
-
-	/**
-	 * Perform all currently queued actions.
-	 *
-	 * @throws HibernateException error executing queued actions.
-	 */
-	public void executeActions() throws HibernateException {
-		executeActions( insertions );
-		executeActions( updates );
-		executeActions( collectionRemovals );
-		executeActions( collectionUpdates );
-		executeActions( collectionCreations );
-		executeActions( deletions );
-	}
-
-	/**
-	 * Prepares the internal action queues for execution.
-	 *
-	 * @throws HibernateException error preparing actions.
-	 */
-	public void prepareActions() throws HibernateException {
-		prepareActions( collectionRemovals );
-		prepareActions( collectionUpdates );
-		prepareActions( collectionCreations );
-	}
-
-	/**
-	 * Performs cleanup of any held cache softlocks.
-	 *
-	 * @param success Was the transaction successful.
-	 */
-	public void afterTransactionCompletion(boolean success) {
-		int size = executions.size();
-		final boolean invalidateQueryCache = session.getFactory().getSettings().isQueryCacheEnabled();
-		for ( int i = 0; i < size; i++ ) {
-			try {
-				Executable exec = ( Executable ) executions.get(i);
-				try {
-					exec.afterTransactionCompletion( success );
-				}
-				finally {
-					if ( invalidateQueryCache ) {
-						session.getFactory().getUpdateTimestampsCache().invalidate( exec.getPropertySpaces() );
-					}
-				}
-			}
-			catch (CacheException ce) {
-				log.error( "could not release a cache lock", ce );
-				// continue loop
-			}
-			catch (Exception e) {
-				throw new AssertionFailure( "Exception releasing cache locks", e );
-			}
-		}
-		executions.clear();
-	}
-
-	/**
-	 * Check whether the given tables/query-spaces are to be executed against
-	 * given the currently queued actions.
-	 *
-	 * @param tables The table/query-spaces to check.
-	 * @return True if we contain pending actions against any of the given
-	 * tables; false otherwise.
-	 */
-	public boolean areTablesToBeUpdated(Set tables) {
-		return areTablesToUpdated( updates, tables ) ||
-		       areTablesToUpdated( insertions, tables ) ||
-		       areTablesToUpdated( deletions, tables ) ||
-		       areTablesToUpdated( collectionUpdates, tables ) ||
-		       areTablesToUpdated( collectionCreations, tables ) ||
-		       areTablesToUpdated( collectionRemovals, tables );
-	}
-
-	/**
-	 * Check whether any insertion or deletion actions are currently queued.
-	 *
-	 * @return True if insertions or deletions are currently queued; false otherwise.
-	 */
-	public boolean areInsertionsOrDeletionsQueued() {
-		return ( insertions.size() > 0 || deletions.size() > 0 );
-	}
-
-	private static boolean areTablesToUpdated(List executables, Set tablespaces) {
-		int size = executables.size();
-		for ( int j = 0; j < size; j++ ) {
-			Serializable[] spaces = ( (Executable) executables.get(j) ).getPropertySpaces();
-			for ( int i = 0; i < spaces.length; i++ ) {
-				if ( tablespaces.contains( spaces[i] ) ) {
-					if ( log.isDebugEnabled() ) log.debug( "changes must be flushed to space: " + spaces[i] );
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	private void executeActions(List list) throws HibernateException {
-		int size = list.size();
-		for ( int i = 0; i < size; i++ ) {
-			execute( (Executable) list.get(i) );
-		}
-		list.clear();
-		session.getBatcher().executeBatch();
-	}
-
-	public void execute(Executable executable) {
-		final boolean lockQueryCache = session.getFactory().getSettings().isQueryCacheEnabled();
-		if ( executable.hasAfterTransactionCompletion() || lockQueryCache ) {
-			executions.add( executable );
-		}
-		if (lockQueryCache) {
-			session.getFactory()
-				.getUpdateTimestampsCache()
-				.preinvalidate( executable.getPropertySpaces() );
-		}
-		executable.execute();
-	}
-
-	private void prepareActions(List queue) throws HibernateException {
-		int size = queue.size();
-		for ( int i=0; i<size; i++ ) {
-			Executable executable = ( Executable ) queue.get(i);
-			executable.beforeExecutions();
-		}
-	}
-
-	/**
-	 * Returns a string representation of the object.
-	 *
-	 * @return a string representation of the object.
-	 */
-	public String toString() {
-		return new StringBuffer()
-				.append("ActionQueue[insertions=").append(insertions)
-				.append(" updates=").append(updates)
-		        .append(" deletions=").append(deletions)
-				.append(" collectionCreations=").append(collectionCreations)
-				.append(" collectionRemovals=").append(collectionRemovals)
-				.append(" collectionUpdates=").append(collectionUpdates)
-		        .append("]")
-				.toString();
-	}
-
-	public int numberOfCollectionRemovals() {
-		return collectionRemovals.size();
-	}
-
-	public int numberOfCollectionUpdates() {
-		return collectionUpdates.size();
-	}
-
-	public int numberOfCollectionCreations() {
-		return collectionCreations.size();
-	}
-
-	public int numberOfDeletions() {
-		return deletions.size();
-	}
-
-	public int numberOfUpdates() {
-		return updates.size();
-	}
-
-	public int numberOfInsertions() {
-		return insertions.size();
-	}
-
-	public void sortCollectionActions() {
-		if ( session.getFactory().getSettings().isOrderUpdatesEnabled() ) {
-			//sort the updates by fk
-			java.util.Collections.sort( collectionCreations );
-			java.util.Collections.sort( collectionUpdates );
-			java.util.Collections.sort( collectionRemovals );
-		}
-	}
-
-	public void sortActions() {
-		if ( session.getFactory().getSettings().isOrderUpdatesEnabled() ) {
-			//sort the updates by pk
-			java.util.Collections.sort( updates );
-		}
-		if ( session.getFactory().getSettings().isOrderInsertsEnabled() ) {
-			sortInsertActions();
-		}
-	}
-
-	/**
-	 * Provided the option is set ({@link org.hibernate.cfg.Environment#ORDER_INSERTS}),
-	 * then order the {@link #insertions} queue such that we group inserts
-	 * against the same entity together (without violating constraints).  The
-	 * original order is generated by cascade order, which in turn is based on
-	 * the directionality of foreign-keys.  So even though we will be changing
-	 * the ordering here, we need to make absolutely certain that we do not
-	 * circumvent this FK ordering to the extent of causing constraint
-	 * violations
-	 */
-	private void sortInsertActions() {
-		// IMPLEMENTATION NOTES:
-		//
-		// The main data structure in this ordering algorithm is the 'positionToAction'
-		// map.  Essentially this can be thought of as an put-ordered map (the problem with
-		// actually implementing it that way and doing away with the 'nameList' is that
-		// we'd end up having potential duplicate key values).  'positionToAction' maitains
-		// a mapping from a position within the 'nameList' structure to a "partial queue"
-		// of actions.
-
-		HashMap positionToAction = new HashMap();
-		List nameList = new ArrayList();
-
-		loopInsertion: while( !insertions.isEmpty() ) {
-			EntityInsertAction action = ( EntityInsertAction ) insertions.remove( 0 );
-			String thisEntityName = action.getEntityName();
-
-			// see if we have already encountered this entity-name...
-			if ( ! nameList.contains( thisEntityName ) ) {
-				// we have not, so create the proper entries in nameList and positionToAction
-				ArrayList segmentedActionQueue = new ArrayList();
-				segmentedActionQueue.add( action );
-				nameList.add( thisEntityName );
-				positionToAction.put( new Integer( nameList.indexOf( thisEntityName ) ), segmentedActionQueue );
-			}
-			else {
-				// we have seen it before, so we need to determine if this insert action is
-				// is depenedent upon a previously processed action in terms of FK
-				// relationships (this FK checking is done against the entity's property-state
-				// associated with the action...)
-				int lastPos = nameList.lastIndexOf( thisEntityName );
-				Object[] states = action.getState();
-				for ( int i = 0; i < states.length; i++ ) {
-					for ( int j = 0; j < nameList.size(); j++ ) {
-						ArrayList tmpList = ( ArrayList ) positionToAction.get( new Integer( j ) );
-						for ( int k = 0; k < tmpList.size(); k++ ) {
-							final EntityInsertAction checkAction = ( EntityInsertAction ) tmpList.get( k );
-							if ( checkAction.getInstance() == states[i] && j > lastPos ) {
-								// 'checkAction' is inserting an entity upon which 'action'
-								// depends...
-								// note: this is an assumption and may not be correct in the case of one-to-one
-								ArrayList segmentedActionQueue = new ArrayList();
-								segmentedActionQueue.add( action );
-								nameList.add( thisEntityName );
-								positionToAction.put(new Integer( nameList.lastIndexOf( thisEntityName ) ), segmentedActionQueue );
-								continue loopInsertion;
-							}
-						}
-					}
-				}
-
-				ArrayList actionQueue = ( ArrayList ) positionToAction.get( new Integer( lastPos ) );
- 				actionQueue.add( action );
- 			}
- 		}
-
- 		// now iterate back through positionToAction map and move entityInsertAction back to insertion list
-		for ( int p = 0; p < nameList.size(); p++ ) {
-			ArrayList actionQueue = ( ArrayList ) positionToAction.get( new Integer( p ) );
-			Iterator itr = actionQueue.iterator();
-			while ( itr.hasNext() ) {
-				insertions.add( itr.next() );
-			}
-		}
-	}
-
-	public ArrayList cloneDeletions() {
-		return (ArrayList) deletions.clone();
-	}
-
-	public void clearFromFlushNeededCheck(int previousCollectionRemovalSize) {
-		collectionCreations.clear();
-		collectionUpdates.clear();
-		updates.clear();
-		// collection deletions are a special case since update() can add
-		// deletions of collections not loaded by the session.
-		for ( int i = collectionRemovals.size()-1; i >= previousCollectionRemovalSize; i-- ) {
-			collectionRemovals.remove(i);
-		}
-	}
-
-	public boolean hasAnyQueuedActions() {
-		return updates.size() > 0 ||
-		       insertions.size() > 0 ||
-		       deletions.size() > 0 ||
-		       collectionUpdates.size() > 0 ||
-		       collectionRemovals.size() > 0 ||
-		       collectionCreations.size() > 0;
-	}
-
-	/**
-	 * Used by the owning session to explicitly control serialization of the
-	 * action queue
-	 *
-	 * @param oos The stream to which the action queue should get written
-	 * @throws IOException
-	 */
-	public void serialize(ObjectOutputStream oos) throws IOException {
-		log.trace( "serializing action-queue" );
-
-		int queueSize = insertions.size();
-		log.trace( "starting serialization of [" + queueSize + "] insertions entries" );
-		oos.writeInt( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			oos.writeObject( insertions.get( i ) );
-		}
-
-		queueSize = deletions.size();
-		log.trace( "starting serialization of [" + queueSize + "] deletions entries" );
-		oos.writeInt( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			oos.writeObject( deletions.get( i ) );
-		}
-
-		queueSize = updates.size();
-		log.trace( "starting serialization of [" + queueSize + "] updates entries" );
-		oos.writeInt( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			oos.writeObject( updates.get( i ) );
-		}
-
-		queueSize = collectionUpdates.size();
-		log.trace( "starting serialization of [" + queueSize + "] collectionUpdates entries" );
-		oos.writeInt( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			oos.writeObject( collectionUpdates.get( i ) );
-		}
-
-		queueSize = collectionRemovals.size();
-		log.trace( "starting serialization of [" + queueSize + "] collectionRemovals entries" );
-		oos.writeInt( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			oos.writeObject( collectionRemovals.get( i ) );
-		}
-
-		queueSize = collectionCreations.size();
-		log.trace( "starting serialization of [" + queueSize + "] collectionCreations entries" );
-		oos.writeInt( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			oos.writeObject( collectionCreations.get( i ) );
-		}
-	}
-
-	/**
-	 * Used by the owning session to explicitly control deserialization of the
-	 * action queue
-	 *
-	 * @param ois The stream from which to read the action queue
-	 * @throws IOException
-	 */
-	public static ActionQueue deserialize(
-			ObjectInputStream ois,
-	        SessionImplementor session) throws IOException, ClassNotFoundException {
-		log.trace( "deserializing action-queue" );
-		ActionQueue rtn = new ActionQueue( session );
-
-		int queueSize = ois.readInt();
-		log.trace( "starting deserialization of [" + queueSize + "] insertions entries" );
-		rtn.insertions = new ArrayList( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			rtn.insertions.add( ois.readObject() );
-		}
-
-		queueSize = ois.readInt();
-		log.trace( "starting deserialization of [" + queueSize + "] deletions entries" );
-		rtn.deletions = new ArrayList( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			rtn.deletions.add( ois.readObject() );
-		}
-
-		queueSize = ois.readInt();
-		log.trace( "starting deserialization of [" + queueSize + "] updates entries" );
-		rtn.updates = new ArrayList( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			rtn.updates.add( ois.readObject() );
-		}
-
-		queueSize = ois.readInt();
-		log.trace( "starting deserialization of [" + queueSize + "] collectionUpdates entries" );
-		rtn.collectionUpdates = new ArrayList( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			rtn.collectionUpdates.add( ois.readObject() );
-		}
-
-		queueSize = ois.readInt();
-		log.trace( "starting deserialization of [" + queueSize + "] collectionRemovals entries" );
-		rtn.collectionRemovals = new ArrayList( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			rtn.collectionRemovals.add( ois.readObject() );
-		}
-
-		queueSize = ois.readInt();
-		log.trace( "starting deserialization of [" + queueSize + "] collectionCreations entries" );
-		rtn.collectionCreations = new ArrayList( queueSize );
-		for ( int i = 0; i < queueSize; i++ ) {
-			rtn.collectionCreations.add( ois.readObject() );
-		}
-		return rtn;
-	}
-
-}

Copied: core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/engine/ActionQueue.java (from rev 14356, core/trunk/core/src/main/java/org/hibernate/engine/ActionQueue.java)
===================================================================
--- core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/engine/ActionQueue.java	                        (rev 0)
+++ core/tags/hibernate-3.3.0.Alpha1/core/src/main/java/org/hibernate/engine/ActionQueue.java	2008-03-11 01:59:19 UTC (rev 14420)
@@ -0,0 +1,619 @@
+/*
+ * Hibernate, Relational Persistence for Idiomatic Java
+ *
+ * Copyright (c) 2007, Red Hat Middleware LLC or third-party contributors as
+ * indicated by the @author tags or express copyright attribution
+ * statements applied by the authors.  All third-party contributions are
+ * distributed under license by Red Hat Middleware LLC.
+ *
+ * This copyrighted material is made available to anyone wishing to use, modify,
+ * copy, or redistribute it subject to the terms and conditions of the GNU
+ * Lesser General Public License, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this distribution; if not, write to:
+ * Free Software Foundation, Inc.
+ * 51 Franklin Street, Fifth Floor
+ * Boston, MA  02110-1301  USA
+ *
+ */
+package org.hibernate.engine;
+
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import org.hibernate.AssertionFailure;
+import org.hibernate.HibernateException;
+import org.hibernate.action.BulkOperationCleanupAction;
+import org.hibernate.action.CollectionRecreateAction;
+import org.hibernate.action.CollectionRemoveAction;
+import org.hibernate.action.CollectionUpdateAction;
+import org.hibernate.action.EntityDeleteAction;
+import org.hibernate.action.EntityIdentityInsertAction;
+import org.hibernate.action.EntityInsertAction;
+import org.hibernate.action.EntityUpdateAction;
+import org.hibernate.action.Executable;
+import org.hibernate.cache.CacheException;
+import org.hibernate.type.Type;
+
+/**
+ * Responsible for maintaining the queue of actions related to events.
+ * </p>
+ * The ActionQueue holds the DML operations queued as part of a session's
+ * transactional-write-behind semantics.  DML operations are queued here
+ * until a flush forces them to be executed against the database.
+ *
+ * @author Steve Ebersole
+ */
+public class ActionQueue {
+
+	private static final Logger log = LoggerFactory.getLogger( ActionQueue.class );
+	private static final int INIT_QUEUE_LIST_SIZE = 5;
+
+	private SessionImplementor session;
+
+	// Object insertions, updates, and deletions have list semantics because
+	// they must happen in the right order so as to respect referential
+	// integrity
+	private ArrayList insertions;
+	private ArrayList deletions;
+	private ArrayList updates;
+	// Actually the semantics of the next three are really "Bag"
+	// Note that, unlike objects, collection insertions, updates,
+	// deletions are not really remembered between flushes. We
+	// just re-use the same Lists for convenience.
+	private ArrayList collectionCreations;
+	private ArrayList collectionUpdates;
+	private ArrayList collectionRemovals;
+
+	private ArrayList executions;
+
+	/**
+	 * Constructs an action queue bound to the given session.
+	 *
+	 * @param session The session "owning" this queue.
+	 */
+	public ActionQueue(SessionImplementor session) {
+		this.session = session;
+		init();
+	}
+
+	private void init() {
+		insertions = new ArrayList( INIT_QUEUE_LIST_SIZE );
+		deletions = new ArrayList( INIT_QUEUE_LIST_SIZE );
+		updates = new ArrayList( INIT_QUEUE_LIST_SIZE );
+
+		collectionCreations = new ArrayList( INIT_QUEUE_LIST_SIZE );
+		collectionRemovals = new ArrayList( INIT_QUEUE_LIST_SIZE );
+		collectionUpdates = new ArrayList( INIT_QUEUE_LIST_SIZE );
+
+		executions = new ArrayList( INIT_QUEUE_LIST_SIZE * 3 );
+	}
+
+	public void clear() {
+		updates.clear();
+		insertions.clear();
+		deletions.clear();
+
+		collectionCreations.clear();
+		collectionRemovals.clear();
+		collectionUpdates.clear();
+	}
+
+	public void addAction(EntityInsertAction action) {
+		insertions.add( action );
+	}
+
+	public void addAction(EntityDeleteAction action) {
+		deletions.add( action );
+	}
+
+	public void addAction(EntityUpdateAction action) {
+		updates.add( action );
+	}
+
+	public void addAction(CollectionRecreateAction action) {
+		collectionCreations.add( action );
+	}
+
+	public void addAction(CollectionRemoveAction action) {
+		collectionRemovals.add( action );
+	}
+
+	public void addAction(CollectionUpdateAction action) {
+		collectionUpdates.add( action );
+	}
+
+	public void addAction(EntityIdentityInsertAction insert) {
+		insertions.add( insert );
+	}
+
+	public void addAction(BulkOperationCleanupAction cleanupAction) {
+		// Add these directly to the executions queue
+		executions.add( cleanupAction );
+	}
+
+	/**
+	 * Perform all currently queued entity-insertion actions.
+	 *
+	 * @throws HibernateException error executing queued insertion actions.
+	 */
+	public void executeInserts() throws HibernateException {
+		executeActions( insertions );
+	}
+
+	/**
+	 * Perform all currently queued actions.
+	 *
+	 * @throws HibernateException error executing queued actions.
+	 */
+	public void executeActions() throws HibernateException {
+		executeActions( insertions );
+		executeActions( updates );
+		executeActions( collectionRemovals );
+		executeActions( collectionUpdates );
+		executeActions( collectionCreations );
+		executeActions( deletions );
+	}
+
+	/**
+	 * Prepares the internal action queues for execution.
+	 *
+	 * @throws HibernateException error preparing actions.
+	 */
+	public void prepareActions() throws HibernateException {
+		prepareActions( collectionRemovals );
+		prepareActions( collectionUpdates );
+		prepareActions( collectionCreations );
+	}
+
+	/**
+	 * Performs cleanup of any held cache softlocks.
+	 *
+	 * @param success Was the transaction successful.
+	 */
+	public void afterTransactionCompletion(boolean success) {
+		int size = executions.size();
+		final boolean invalidateQueryCache = session.getFactory().getSettings().isQueryCacheEnabled();
+		for ( int i = 0; i < size; i++ ) {
+			try {
+				Executable exec = ( Executable ) executions.get( i );
+				try {
+					exec.afterTransactionCompletion( success );
+				}
+				finally {
+					if ( invalidateQueryCache ) {
+						session.getFactory().getUpdateTimestampsCache().invalidate( exec.getPropertySpaces() );
+					}
+				}
+			}
+			catch ( CacheException ce ) {
+				log.error( "could not release a cache lock", ce );
+				// continue loop
+			}
+			catch ( Exception e ) {
+				throw new AssertionFailure( "Exception releasing cache locks", e );
+			}
+		}
+		executions.clear();
+	}
+
+	/**
+	 * Check whether the given tables/query-spaces are to be executed against
+	 * given the currently queued actions.
+	 *
+	 * @param tables The table/query-spaces to check.
+	 *
+	 * @return True if we contain pending actions against any of the given
+	 *         tables; false otherwise.
+	 */
+	public boolean areTablesToBeUpdated(Set tables) {
+		return areTablesToUpdated( updates, tables ) ||
+				areTablesToUpdated( insertions, tables ) ||
+				areTablesToUpdated( deletions, tables ) ||
+				areTablesToUpdated( collectionUpdates, tables ) ||
+				areTablesToUpdated( collectionCreations, tables ) ||
+				areTablesToUpdated( collectionRemovals, tables );
+	}
+
+	/**
+	 * Check whether any insertion or deletion actions are currently queued.
+	 *
+	 * @return True if insertions or deletions are currently queued; false otherwise.
+	 */
+	public boolean areInsertionsOrDeletionsQueued() {
+		return ( insertions.size() > 0 || deletions.size() > 0 );
+	}
+
+	private static boolean areTablesToUpdated(List executables, Set tablespaces) {
+		int size = executables.size();
+		for ( int j = 0; j < size; j++ ) {
+			Serializable[] spaces = ( ( Executable ) executables.get( j ) ).getPropertySpaces();
+			for ( int i = 0; i < spaces.length; i++ ) {
+				if ( tablespaces.contains( spaces[i] ) ) {
+					if ( log.isDebugEnabled() ) {
+						log.debug( "changes must be flushed to space: " + spaces[i] );
+					}
+					return true;
+				}
+			}
+		}
+		return false;
+	}
+
+	private void executeActions(List list) throws HibernateException {
+		int size = list.size();
+		for ( int i = 0; i < size; i++ ) {
+			execute( ( Executable ) list.get( i ) );
+		}
+		list.clear();
+		session.getBatcher().executeBatch();
+	}
+
+	public void execute(Executable executable) {
+		final boolean lockQueryCache = session.getFactory().getSettings().isQueryCacheEnabled();
+		if ( executable.hasAfterTransactionCompletion() || lockQueryCache ) {
+			executions.add( executable );
+		}
+		if ( lockQueryCache ) {
+			session.getFactory()
+					.getUpdateTimestampsCache()
+					.preinvalidate( executable.getPropertySpaces() );
+		}
+		executable.execute();
+	}
+
+	private void prepareActions(List queue) throws HibernateException {
+		int size = queue.size();
+		for ( int i = 0; i < size; i++ ) {
+			Executable executable = ( Executable ) queue.get( i );
+			executable.beforeExecutions();
+		}
+	}
+
+	/**
+	 * Returns a string representation of the object.
+	 *
+	 * @return a string representation of the object.
+	 */
+	public String toString() {
+		return new StringBuffer()
+				.append( "ActionQueue[insertions=" ).append( insertions )
+				.append( " updates=" ).append( updates )
+				.append( " deletions=" ).append( deletions )
+				.append( " collectionCreations=" ).append( collectionCreations )
+				.append( " collectionRemovals=" ).append( collectionRemovals )
+				.append( " collectionUpdates=" ).append( collectionUpdates )
+				.append( "]" )
+				.toString();
+	}
+
+	public int numberOfCollectionRemovals() {
+		return collectionRemovals.size();
+	}
+
+	public int numberOfCollectionUpdates() {
+		return collectionUpdates.size();
+	}
+
+	public int numberOfCollectionCreations() {
+		return collectionCreations.size();
+	}
+
+	public int numberOfDeletions() {
+		return deletions.size();
+	}
+
+	public int numberOfUpdates() {
+		return updates.size();
+	}
+
+	public int numberOfInsertions() {
+		return insertions.size();
+	}
+
+	public void sortCollectionActions() {
+		if ( session.getFactory().getSettings().isOrderUpdatesEnabled() ) {
+			//sort the updates by fk
+			java.util.Collections.sort( collectionCreations );
+			java.util.Collections.sort( collectionUpdates );
+			java.util.Collections.sort( collectionRemovals );
+		}
+	}
+
+	public void sortActions() {
+		if ( session.getFactory().getSettings().isOrderUpdatesEnabled() ) {
+			//sort the updates by pk
+			java.util.Collections.sort( updates );
+		}
+		if ( session.getFactory().getSettings().isOrderInsertsEnabled() ) {
+			sortInsertActions();
+		}
+	}
+
+	/**
+	 * Order the {@link #insertions} queue such that we group inserts
+	 * against the same entity together (without violating constraints).  The
+	 * original order is generated by cascade order, which in turn is based on
+	 * the directionality of foreign-keys.  So even though we will be changing
+	 * the ordering here, we need to make absolutely certain that we do not
+	 * circumvent this FK ordering to the extent of causing constraint
+	 * violations
+	 */
+	private void sortInsertActions() {
+		new InsertActionSorter().sort();
+	}
+
+	public ArrayList cloneDelet