Urgent problem: Database and large clock skew
Hi, In trying to fix a problem with Zope httpd server sockets getting wedged in TIME_WAIT state, I set my system clock ahead by a year, then set it back. Unfortunately, connections to the Zope httpd server occurred while the clock was set in the future, and now when I try to start Zope, it dies with: DatabaseError: The database contains records, starting at position 189587919, that have time stamps 2540023.19965 seconds in the future. This could lead to database corruption. Please double check your system clock! I'm using a pre-2.0 version of Zope (Though I can't determin exacly which version...) Is there any way to correct insane timestamp values? I'm pretty much dead in the water. Alternatively, I have found the section in BoboPOS.py where this exception is generated. Is it really a problem to have future timestamps? What if I just snipped this portion of the code out? Please respond to jimfl@tensegrity.net. TIA -- Jim Flanagan jimfl@tensegrity.net http://jimfl.tensegrity.net
In article <116492527.962189166@[172.20.20.1]>, Jim Flanagan <jimfl@colltech.com> wrote:
In trying to fix a problem with Zope httpd server sockets getting wedged in TIME_WAIT state, I set my system clock ahead by a year, then set it back.
Can't help you with the database problem, but thought I'd point out that changing the system real time clock won't help you to time out connections. Network statcks use monotonic clocks or timers that are immune to "time warps".
On Wed, 28 Jun 2000 10:46:06 -0700, Jim Flanagan <jimfl@colltech.com> wrote:
Hi,
In trying to fix a problem with Zope httpd server sockets getting wedged in TIME_WAIT state, I set my system clock ahead by a year, then set it back. Unfortunately, connections to the Zope httpd server occurred while the clock was set in the future, and now when I try to start Zope, it dies with:
DatabaseError: The database contains records, starting at position 189587919, that have time stamps 2540023.19965 seconds in the future. This could lead to database corruption. Please double check your system clock!
I'm using a pre-2.0 version of Zope (Though I can't determin exacly which version...)
That probably means you are using ZODB2, yes? (please say yes; ZODB3 should be immune to this problem). If so, there used to be a tool to correct the timestamps... you should be able to find it in the utils directory in the Zope 1 CVS
Is there any way to correct insane timestamp values? I'm pretty much dead in the water.
Alternatively, I have found the section in BoboPOS.py where this exception is generated. Is it really a problem to have future timestamps? What if I just snipped this portion of the code out?
Toby Dickenson tdickenson@geminidataloggers.com
--Also Sprache Toby Dickenson <mbel44@dial.pipex.net> On Thursday, June 29, 2000 10:19 AM +0100: > That probably means you are using ZODB2, yes? (please say yes; ZODB3 > should be immune to this problem). If so, there used to be a tool to > correct the timestamps... you should be able to find it in the utils > directory in the Zope 1 CVS Ding ding ding. Found it. Just what I was looking for! I'll give it a try. I am indeed using ZODB2. I worked around the problem temporarily by snipping all the code out of SimpleDB.py that checks the sanity of the timestamps (After making a copy of my database first :) http://classic.zope.org/cgi-bin/cvsweb.cgi/ZUtil/fixbbbts.py Thanks very much. -- Jim Flanagan jimfl@tensegrity.net http://jimfl.tensegrity.net
participants (4)
-
Jim Flanagan -
Jim Flanagan -
Toby Dickenson -
tsarnaļ¼ endicor.com