Question
We just upgraded from Cairo to 4.1.2.
The "Changes" link works as expected as long as changes are concerned which happened after the upgrade. But many older changes do not show up in the list anymore.
The full Diff on certain topics also omits some changes before the upgrade date.
However, explicit diff between revisions omitted in the full diff works.
One assumption:
I had to do some search-and-replace operations on OS-level on .txt files during the upgrade to adapt the pages to new
PlugIn version requirements.
Do the timestamp changes of these files confuse the rcs/diff?
Config via email on request.
Thanks!
Environment
--
DetlefMarxsen - 13 Jul 2007
Answer
If you answer a question - or someone answered one of your questions - please remember to edit the page and set the status to answered. The status selector is below the edit box.
Changes is driven from the
.changes file, which only records the 500 most recent revisions in each web. I don't
think the upgrade should have any issues with
.changes but it might be worth reviewing that file in a text editor, and seeing if it contains your interesting changes. I'm rather more concerned that the full Diff should also omit those changes, though.
The timestamps in the cache files shouldn't affect the history. TWiki gets the topic history from
RCS; basically it does an
rlog on the .txt,v and then parses the result to determine the revision list. Try running
rlog on the command line, on one of the suspect files. The problem might shout at you.
Another possibility is that you are using
RcsLite. I discovered a problem with
RcsLite a while ago that made it appear to work, but in fact it was corrupting the histories. It's remotely possible that my fix has occluded some already-damaged revisions.
--
CrawfordCurrie - 13 Jul 2007
The Changes link points to
WebChanges, which does a SEARCH sorted by time, e.g. it does
not use .changes. SAERCH sorted by time does some optimization for speed. It first does a search on the file system based on time stamp, cuts the result by the limit parameter plus some slack, then sorts the resulting list based on the timestamp in topic info meta data (which is based on
RCS.) This algorithm is fast, also if you have 10K topics or more in a web. However, it fails if you manipulate the files with external tools, as you did. To fix that you'd need to touch all files in the proper last update order.
--
PeterThoeny - 13 Jul 2007
Uh-oh, so it was no good idea to modify topic content using external tools. Now I have to invent a strategy to get the old timestamps back.
Okay, thanks for your help!
--
DetlefMarxsen - 16 Jul 2007
I had no time to deal with the problems until now. But now you get some more facts and symptoms:
Installed
RCS:
apt reports the following
RCS-like packages:
rcs
cssc
darcs
prcs
The rcs program lies in /usr/bin and is no link to another file but an executable.
rcs -V reports "RCS version 5.7"
More about symptoms:
Changes:
The Changes function seems to produce erratic results only with topics created before we changed to TWiki 4.1.2. This may be due to the manual editing as discussed above.
However, I just got a rediculously small Changes result. Asked colleagues to hit "Changes". They got a fine result. I terminated my Firefox session and logged in again: Changes worked like a charm. Very strange. Could there be something like a timeout problem in the Changes function? TWiki is installed on a virtual machine.
Diffs/History:
My manual fumbling with the txt files during our TWiki upgrade can't cause what we experience here ... as it happens with entirely new topics also - topics which did not yet exist in the old TWiki version.
The problem: Clicking on "History" (classic skin) omits every second revision, i.e. revs 5, 4, 3, 2, and 1 exist but the report lists only 5, 3, and 1. The changes which happened at 3->4 are listed below the 3 header together with the 2->3 changes.
Interestingly, this doen't happen at all topics. The History works fine at few topics.
--
DetlefMarxsen - 08 Aug 2007
Status changed ...
--
DetlefMarxsen - 08 Aug 2007
Sorry, closing this after more than 30 days of inactivity. Please feel free to reopen.
--
PeterThoeny - 02 Oct 2007
The diff problem is obviously even more severe than I thought until now.
This is, what just happened:
- I created a page (therefore r1.1).
- Another user added some content (therefore r1.2).
- I wanted to see what he did and used the delta symbol link between "r2" and "r1" (classic skin):
- The resulting screen is named "ItUserRemove (1 vs. 2)", which is expected ...
- ... the whole page is shown as it was valid in r1.1. No coloured
added or removed bars are shown. There is no hint for the changes which took place.
- Then, I read a hint in RCSDiffNotWorkingBetweenRevisions and tried a manual diff:
# rcsdiff -q -w -B -r1.1 -r1.2 ItUserRemove.txt
1c1
< %META:TOPICINFO{author="ItsMe" date="1191565136" format="1.1" reprev="1.1" version="1.1"}%
---
> %META:TOPICINFO{author="OtherUser" date="1191833513" format="1.1" version="1.2"}%
21a22
> 1 Sell his chair.
So, rcsdiff works as expected but TWiki doesn't display what I expect. Somewhere between TWiki and rcsdiff must be a problem.
Any hints welcome!
--
DetlefMarxsen - 09 Oct 2007
We are still in trouble. I checked our data on two other different TWiki installations and they show the same symptoms. Please try the attached topic (attachment StumblingDiff.zip) on your system. Does the TWiki Diff display show erratic results also? Where's the problem!?
--
DetlefMarxsen - 27 Nov 2007
Closing this support question after more than 30 days of inactivity. Please feel free to re-open if needed.
--
PeterThoeny - 01 Jan 2008