[hibernate-dev] Timestamper

Steve Ebersole steve at hibernate.org
Fri Apr 27 10:11:08 EDT 2012


Well but we still have the issue of the hibernate-ehcache integration 
using net.sf.ehcache.util.Timestamper.  And we cannot use your 
SlewClock there because it is package-protected.


On Fri 27 Apr 2012 09:05:56 AM CDT, Alex Snaps wrote:
> Right! I see these are all in the hibernate-testing code. I misread
> that sorry! ... and w/o caching, NoCachingRegionFactory is used.
> Well, I guess the fact that it might loop for "longer" would be less
> of an issue then. I'd maybe just evaluate moving that class into the
> hibernate-testing as well maybe, avoiding someone actually uses for
> "production" code.
>
> On Fri, Apr 27, 2012 at 9:52 AM, Steve Ebersole<steve at hibernate.org>  wrote:
>> No, that is not how we "timestamp every Session".
>>
>> Ok, its there but...
>>
>> final class SlewClock  {...
>>
>> package-protected
>>
>>
>>
>> On Fri 27 Apr 2012 08:49:07 AM CDT, Alex Snaps wrote:
>>>
>>> Steve,
>>> I do see it in the repo on the 2.4.3 tagline :
>>>
>>> http://svn.terracotta.org/svn/ehcache/tags/ehcache-core-2.4.3/src/main/java/net/sf/ehcache/util/SlewClock.java
>>> Also, correct me if I'm wrong, but I think the Timestamper code is
>>> used to timestamp every Session, isn't it ? If so, it does impact more
>>> than just hibernate-ehcache...
>>> I can wire it in and do a pull request. I just wasn't sure that's what
>>> you guys wanted ?
>>> Alex
>>>
>>> On Fri, Apr 27, 2012 at 9:40 AM, Steve Ebersole<steve at hibernate.org>
>>>   wrote:
>>>>
>>>> Well, to be specific I am not seeing it in 2.4.3 version of ehcache-core
>>>> jar
>>>> (which is jar where Timestamper was found)...
>>>>
>>>>
>>>> On Fri 27 Apr 2012 08:37:53 AM CDT, Steve Ebersole wrote:
>>>>>
>>>>>
>>>>>
>>>>> Alex, the issue you mentioned says it was fixed for 2.4.3, but I am
>>>>> not seeing SlewClock in 2.4.3 jar.
>>>>>
>>>>> What version was SlewClock added in?
>>>>>
>>>>> On Fri 27 Apr 2012 08:36:33 AM CDT, Steve Ebersole wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Alex, the issue you mentioned says it was fixed for 2.4.3, but I am
>>>>>> not seeing SlewClock in 2.4.3 jar.
>>>>>>
>>>>>> What version was SlewClock added in?
>>>>>>
>>>>>> On Thu 26 Apr 2012 12:48:31 PM CDT, Steve Ebersole wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Thanks for the heads up Alex.
>>>>>>>
>>>>>>> https://hibernate.onjira.com/browse/HHH-7282
>>>>>>>
>>>>>>>
>>>>>>> On Thu 26 Apr 2012 11:11:36 AM CDT, Alex Snaps wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Hey,
>>>>>>>> I wanted to draw your attention to "an issue" we've hit with the
>>>>>>>> nonblocking implementation of Timestamper, that you guys use as well.
>>>>>>>> Basically, if time goes backwards, calling next() would loop until
>>>>>>>> time is passed the last seen value (see
>>>>>>>> http://jira.terracotta.org/jira/browse/EHC-853)
>>>>>>>> Technically, time shouldn't go back. Especially the DST issue is none
>>>>>>>> in my opinion. But NTP daemons that do set clock back might be more
>>>>>>>> common.
>>>>>>>> As every session is timestamped, if I read
>>>>>>>> SessionFactoryImpl.SessionBuilderImpl.openSession correctly, this
>>>>>>>> would be larger issue to you guys now as well. There are obviously
>>>>>>>> more people using Hibernate w/o Ehcache than with it.
>>>>>>>> Anyways, as a solution to that, Chris and I came up with a
>>>>>>>> non-blocking SlewClock implementation that would simply, in case
>>>>>>>> System.currentTimeMillis() returns a value "in the past, slow time
>>>>>>>> down until the wall clock has caught up:
>>>>>>>>
>>>>>>>>
>>>>>>>> http://www.massapi.com/source/ehcache-2.4.3/src/net/sf/ehcache/util/SlewClock.java.html
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Since Timestamper is again core to 2nd level cache usage in
>>>>>>>> Hibernate,
>>>>>>>> it would make sense to this out of our code base and have it in yours
>>>>>>>> (as well, as we'd still use it in for the 3.x).
>>>>>>>> Should I go ahead and create a jira, pull request, ... ? Cause, based
>>>>>>>> on my experience, blaming it on crappy env. hasn't really worked out
>>>>>>>> for me ;-)
>>>>>>>> Alex
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> steve at hibernate.org
>>>>>>> http://hibernate.org
>>>>>>> --
>>>>>>> steve at hibernate.org
>>>>>>> http://hibernate.org
>>>>>>> --
>>>>>>> steve at hibernate.org
>>>>>>> http://hibernate.org
>>>
>>>
>>>
>>>
>>
>> --
>> steve at hibernate.org
>> http://hibernate.org
>
>
>

--
steve at hibernate.org
http://hibernate.org


More information about the hibernate-dev mailing list