Hi all,<div><br></div><div>First post to the list. I&#39;ve got a bunch of questions, and I hope this is the right place to ask them.</div><div><br></div><div>I&#39;m interested in the idea of wiki &#39;mirroring&#39;: updating a second wiki (&#39;B&#39;) periodically with content from wiki A. (There&#39;s of course some discussion of this on the web, so I&#39;m aware that there&#39;s been quite a bit of  thinking on this already, but I couldn&#39;t quite find the solution I was looking for.)</div>
<div><br></div><div>A first stab at mirroring would be to do a Special:Export on the whole of A, and then do a Special:Import on B. But this becomes impractical for larger wikis: Ideally, I just want to update what needs updating.</div>
<div><br></div><div>The best way to do this would probably be something like list=recentchanges (going back to the date of last transfer). Of course this doesn&#39;t work, because recentchanges are are periodically purged, so cannot be used between arbitrary dates. The log doesn&#39;t seem to record edits (is this correct?), so this can&#39;t be used to get a list of changes between two arbitrary dates.</div>
<div><div><br></div><div>So, question 1: Is it possible to get a list of all changes (including edits) between two dates (in a single query)? </div><div><br></div><div>If one wanted the complete version history, then another way to do this would be to get all revisions since the last transfer made, i.e. something like:</div>
</div><div><div>action=query&amp;prop=revisions&amp;revids=1450|1451|1452|...&amp;rvprop=content</div>
<div>(then transform xml to Special:Import format, and upload). Together with a query of the log, this would give you all changes.</div><div><br></div><div>But suppose the wiki is very active or you don&#39;t have much bandwidth or you simply don&#39;t want the whole version history, but just the latest versions (since the last transfer). The only way I can see is to do something like this:</div>
<div><span class="Apple-style-span" style="font-family: -webkit-sans-serif; line-height: 19px; "><ul style="line-height: 1.5em; list-style-type: square; margin-top: 0.3em; margin-right: 0px; margin-bottom: 0px; margin-left: 1.5em; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; list-style-image: url(http://www.sciencemedianetwork.org/wiki_source/skins/monobook/bullet.gif); ">
<li style="margin-bottom: 0.1em; "><span class="Apple-style-span" style="font-family: arial; line-height: normal;">1. </span>Fetch the list of namespaces<br></li><li style="margin-bottom: 0.1em; ">2. Get the list of revisions in each namespace (action=query&amp;prop=revisions&amp;generator=allpages for each namespace)</li>
<li style="margin-bottom: 0.1em; ">3. See what needs updating, and then fetch all the changed pages.</li></ul></span></div><div><br></div><div>Question 2: Can you see a better way of doing this? Also, why won&#39;t generator=allpages work across namespaces? (I guess there my be a reason why that isn&#39;t possible to do easily.)</div>
<div><br></div><div>One way would be to try something like:</div></div><div><p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Georgia"></p><p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Georgia">action=query&amp;prop=revisions&amp;generator=allpages&amp;rvstart=20090521000000</p>
<div>but this doesn&#39;t work.</div><div><br></div><div>So, my question 3: Do you know why this doesn&#39;t work? I assume there isn&#39;t an efficient mysql query to accomplish this, or are there other reasons?</div><div>
<br></div><div>Finally, I guess I am wondering whether there are people actively interested in discussing issues around wiki mirroring/synchronisation more. If so, what&#39;s the best mailing list for this?</div><div><br>
</div><div>Sorry, the post got a bit longer than I expected - thanks for considering this!</div><div><br></div><div>All the best,</div><div>Bjoern</div></div>