Bug: Revision Date set to Jan 1970
Editing within lock timout period sets revision date to 01 Jan 1970 - 00:02 GMT while file system date is correct.
I'm using
RcsLite. If I switch to
RcsWrap the problem goes away.
This wiki was moved from another machine where
RcsLite was necessary.
Initially on this new server I was using
RcsWrap but I got errors from
RCS when saving topics which had last been saved under
RcsLite on the
old machine (something about missing or malformed "desc") so moved
back to
RcsLite.
Test case
http://yukongis.ca/bin/view/Sandbox/RevDateTest
- problem demonstrated
http://twiki.org/cgi-bin/view/Sandbox/RevDateTest
- twiki.org appears to be okay.
After one edit, the revision date is correct:
RevDateTest.txt:
%META:TOPICINFO{author="guest" date="1077753834" format="1.0" version="1.1"}%
RevDateTest.txt,v:
date 2004.02.26.00.03.54;
However if you edit again before the lock time out period set in TWiki.cfg (currently 15 minutes) the rev date goes to
01 Jan 1970 - 00:02 GMT:
%META:TOPICINFO{author="guest" date="2064.02" format="1.0" version="1.1"}%
date 70.01.01.00.34.24;
Further edits change the meta time, but
not the RCS time. I should read more carefully, the last four digits are not always the same. However they are always one of
34.24 or
02.10. With the latter showing up more often. At least a ten to one ratio.
%META:TOPICINFO{author="guest" date="130.01" format="1.0" version="1.1"}%
date 70.01.01.00.02.10;
Checking 'release edit' on save does not make any difference
(and the lock file is removed from the filesystem, so the check box works).
The file system dates are all correct.
okay, how about if
$doKeepRevIfEditLock is false?
This fixes the time problem, however it results in a new one:
even if the edit lock is released the revision number is still incremented.
Environment
| TWiki version: |
08 Feb 2004 |
| TWiki plugins: |
DefaultPlugin, EmptyPlugin, InterwikiPlugin |
| Server OS: |
Linux [host] 2.4.21 #1 SMP Fri Jul 11 14:00:33 PDT 2003 i686 i686 i386 GNU/Linux |
| Web server: |
Apache 2.0.48 |
| Perl version: |
5.8.0 |
| Client OS: |
|
| Web Browser: |
|
--
MattWilkie - 26 Feb 2004
Follow up
It looks like this is related to
GmTimeVariableReturnsUnwantedGMT. Could you upgrade to the latest
TWikiAlphaRelease and try again? Or simply remove the
." GMT" from sub formatDisplayTime in TWiki.pm.
--
PeterThoeny - 26 Feb 2004
." GMT removed but it didn't fix it.
--
MattWilkie - 26 Feb 2004
I'm getting this too when i switch to
RcsLite - I'm investigating
--
SvenDowideit - 26 Feb 2004
I'm happy to help with this.
--
JohnTalintyre - 26 Feb 2004
looks like i found the remaining problem.
you can't do
$date =~ /([0-9]+)\s+([A-Za-z]+)\s+([0-9]+)[\s\-]+([0-9]+)\:([0-9]+)/;
if( $5 ) {
because $5 could still be set from the last regex that matched successfully
instead it should be
if ($date =~ /([0-9]+)\s+([A-Za-z]+)\s+([0-9]+)[\s\-]+([0-9]+)\:([0-9]+)/) {
I have commited this too (and the partial fix on friday )
Matt & John - you'll be pleased to know, I use
RcsLite on my ISP hosted test twiki
--
SvenDowideit - 29 Feb 2004
Good work. I'll make sure there's a test in
RcsLiteUnitTest to cover this.
--
JohnTalintyre - 01 Mar 2004
Fix record
- rcslite was not changed correctly to return epochSecs (Store used to return a rendered dateTime string).
- revDate2EpSecs contained bad matching logic
the change is commited into pre-CairoRelease cvs
confirmed fixed on my site. Thanks so much for fixing this, and quickly to boot! -- MattWilkie - 01 Mar 2004
Note: there is a follow-on bug:
WebChangesSortedWrongly