From: <aye...@us...> - 2009-05-22 23:35:54
|
Revision: 4366 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=4366&view=rev Author: ayenderahien Date: 2009-05-22 23:35:49 +0000 (Fri, 22 May 2009) Log Message: ----------- Fixing NH-1788 - version column updatability is not taken into account when updating using dynamic-update Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Persister/Entity/AbstractEntityPersister.cs trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj Added Paths: ----------- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Fixture.cs trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Mappings.hbm.xml trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Person.cs Modified: trunk/nhibernate/src/NHibernate/Persister/Entity/AbstractEntityPersister.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Persister/Entity/AbstractEntityPersister.cs 2009-05-22 23:32:10 UTC (rev 4365) +++ trunk/nhibernate/src/NHibernate/Persister/Entity/AbstractEntityPersister.cs 2009-05-22 23:35:49 UTC (rev 4366) @@ -3416,6 +3416,7 @@ if (IsVersioned) { propsToUpdate[VersionProperty] = + PropertyUpdateability[VersionProperty] && Versioning.IsVersionIncrementRequired(dirtyProperties, hasDirtyCollection, PropertyVersionability); } Property changes on: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788 ___________________________________________________________________ Added: bugtraq:url + http://jira.nhibernate.org/browse/%BUGID% Added: bugtraq:logregex + NH-\d+ Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Fixture.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Fixture.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Fixture.cs 2009-05-22 23:35:49 UTC (rev 4366) @@ -0,0 +1,48 @@ +using System.Collections.Generic; +using NHibernate.Criterion; +using NHibernate.Dialect; +using NUnit.Framework; + +namespace NHibernate.Test.NHSpecificTest.NH1788 +{ + [TestFixture] + public class Fixture : BugTestCase + { + protected override bool AppliesTo(NHibernate.Dialect.Dialect dialect) + { + return dialect is MsSql2000Dialect; + } + + [Test] + public void CanUseSqlTimestampWithDynamicInsert() + { + using (var session = OpenSession()) + using (var tx = session.BeginTransaction()) + { + session.Save(new Person + { + Name = "hi" + }); + tx.Commit(); + } + + + using (var session = OpenSession()) + using (var tx = session.BeginTransaction()) + { + var person = session.Get<Person>(1); + person.Name = "other"; + tx.Commit(); + } + + + using (ISession session = OpenSession()) + using (var tx = session.BeginTransaction()) + { + session.Delete(session.Get<Person>(1)); + tx.Commit(); + } + + } + } +} \ No newline at end of file Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Mappings.hbm.xml =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Mappings.hbm.xml (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Mappings.hbm.xml 2009-05-22 23:35:49 UTC (rev 4366) @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8" ?> +<hibernate-mapping + xmlns="urn:nhibernate-mapping-2.2" + namespace="NHibernate.Test.NHSpecificTest.NH1788" + assembly="NHibernate.Test"> + + <class name="Person" table="People" dynamic-update="true"> + <id name="Id"> + <generator class="identity"/> + </id> + <version name="Version" generated="always" unsaved-value="null" type="BinaryBlob"> + <column name="Version" sql-type="timestamp" /> + </version> + <property name="Name" /> + </class> +</hibernate-mapping> \ No newline at end of file Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Person.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Person.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1788/Person.cs 2009-05-22 23:35:49 UTC (rev 4366) @@ -0,0 +1,9 @@ +namespace NHibernate.Test.NHSpecificTest.NH1788 +{ + public class Person + { + public virtual int Id { get; set; } + public virtual string Name { get; set; } + public virtual byte[] Version { get; set; } + } +} \ No newline at end of file Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-05-22 23:32:10 UTC (rev 4365) +++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-05-22 23:35:49 UTC (rev 4366) @@ -432,6 +432,8 @@ <Compile Include="NHSpecificTest\NH1776\FilterQueryTwiceFixture.cs" /> <Compile Include="NHSpecificTest\NH1783\DomainClass.cs" /> <Compile Include="NHSpecificTest\NH1783\SampleTest.cs" /> + <Compile Include="NHSpecificTest\NH1788\Fixture.cs" /> + <Compile Include="NHSpecificTest\NH1788\Person.cs" /> <Compile Include="NHSpecificTest\NH1792\Fixture.cs" /> <Compile Include="NHSpecificTest\NH1792\Product.cs" /> <Compile Include="NHSpecificTest\NH1794\Fixture.cs" /> @@ -1829,6 +1831,7 @@ <EmbeddedResource Include="Ado\VerySimple.hbm.xml" /> <EmbeddedResource Include="Ado\AlmostSimple.hbm.xml" /> <Content Include="DynamicEntity\package.html" /> + <EmbeddedResource Include="NHSpecificTest\NH1788\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1794\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1792\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1756\Mappings.hbm.xml" /> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |