<html><body bgcolor="#FFFFFF"><div>All that should be required is to define a version or timestamp property for the entity in question. Hbn will constrain against that field when it performs the update. If the db returns 0 updated rows, then Hbn will throw the stale exception. </div><div><br></div><div>I recall there's a way to pessimistically lock using db locks (select for update, etc.), but I assume that's only valid for the duration of your transaction. I never had call to use it.</div><div><br></div><div>If you use timestamps, make sure your db columns have millisecond resolution.</div><div><br>On Nov 12, 2009, at 10:18 PM, Mark Proctor <<a href="mailto:mproctor@codehaus.org">mproctor@codehaus.org</a>> wrote:<br><br></div><div></div><blockquote type="cite"><div>
Michael Neale wrote:
<blockquote cite="mid:50F08D8B-BF74-473E-98A5-FF24DB084FFA@gmail.com" type="cite">
<pre wrap="">I am not aware of peasimistic locking use being very common. When
people want it, it's generally cause the GUI suggests it (eg bob wants
to view a file, but Alice has it locked)
</pre>
</blockquote>
With optimistic locking we can just submit our update and it fails if
something else updted the recorded in the mean time - doing a counter
comparison. With pessemistic we have to download the record first,
compare them, and then upload. As what we are comparing in a binary
blob, we want to avoid pulling that from the db.<br>
<br>
Mark<br>
<blockquote cite="mid:50F08D8B-BF74-473E-98A5-FF24DB084FFA@gmail.com" type="cite">
<pre wrap="">Sent from my phone.
On 13/11/2009, at 10:27 AM, Salaboy <a class="moz-txt-link-rfc2396E" href="mailto:salaboy@gmail.com"><<a href="mailto:salaboy@gmail.com">salaboy@gmail.com</a>></a> wrote:
</pre>
<blockquote type="cite">
<pre wrap="">I suppose that the versión field its being used. So, the default must
be optimistic
- Ing. Mauricio Salatino -
On Nov 12, 2009, at 9:43 PM, Michael Neale <a class="moz-txt-link-rfc2396E" href="mailto:michael.neale@gmail.com"><<a href="mailto:michael.neale@gmail.com">michael.neale@gmail.com</a>></a>
wrote:
</pre>
<blockquote type="cite">
<pre wrap="">I thought optimistic locking was the default ? Or do you mean you
know
how to switch, just that it doesn't work?
Sent from my phone.
On 13/11/2009, at 8:16 AM, Salaboy <a class="moz-txt-link-rfc2396E" href="mailto:salaboy@gmail.com"><<a href="mailto:salaboy@gmail.com">salaboy@gmail.com</a>></a> wrote:
</pre>
<blockquote type="cite">
<pre wrap="">I Will take a look on that
Sent from my iPhone
On Nov 12, 2009, at 7:33 PM, Mark Proctor <a class="moz-txt-link-rfc2396E" href="mailto:mproctor@codehaus.org"><<a href="mailto:mproctor@codehaus.org">mproctor@codehaus.org</a>></a>
wrote:
</pre>
<blockquote type="cite">
<pre wrap="">Any hibernate guru's out there? Currently the persistence stuff
uses
pessematic locking, which is slow, in theory we should be using
optimistic locking, but I couldn't get it to work. Anyone want to
give
that a go?
Mark
_______________________________________________
rules-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-dev@lists.jboss.org"><a href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a></a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-dev"><a href="https://lists.jboss.org/mailman/listinfo/rules-dev">https://lists.jboss.org/mailman/listinfo/rules-dev</a></a>
</pre>
</blockquote>
<pre wrap="">_______________________________________________
rules-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-dev@lists.jboss.org"><a href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a></a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-dev"><a href="https://lists.jboss.org/mailman/listinfo/rules-dev">https://lists.jboss.org/mailman/listinfo/rules-dev</a></a>
</pre>
</blockquote>
<pre wrap="">_______________________________________________
rules-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-dev@lists.jboss.org"><a href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a></a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-dev"><a href="https://lists.jboss.org/mailman/listinfo/rules-dev">https://lists.jboss.org/mailman/listinfo/rules-dev</a></a>
</pre>
</blockquote>
<pre wrap="">_______________________________________________
rules-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-dev@lists.jboss.org"><a href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a></a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-dev"><a href="https://lists.jboss.org/mailman/listinfo/rules-dev">https://lists.jboss.org/mailman/listinfo/rules-dev</a></a>
</pre>
</blockquote>
<pre wrap=""><!---->_______________________________________________
rules-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-dev@lists.jboss.org"><a href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a></a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-dev"><a href="https://lists.jboss.org/mailman/listinfo/rules-dev">https://lists.jboss.org/mailman/listinfo/rules-dev</a></a>
</pre>
</blockquote>
<br>
</div></blockquote><blockquote type="cite"><div><span>_______________________________________________</span><br><span>rules-dev mailing list</span><br><span><a href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a></span><br><span><a href="https://lists.jboss.org/mailman/listinfo/rules-dev">https://lists.jboss.org/mailman/listinfo/rules-dev</a></span><br></div></blockquote></body></html>