[dokuwiki] Re: DokuFS issue

Hi Michael,

thanks a lot for the quick response!

Michael Hamann schrieb:
> Hi,
> 
> Stefan Waidele schrieb:
>> I installed the developer-version (Sept 10th, 2008, 20:00) using the
>> instructions from http://www.dokuwiki.org/devel:darcs
>>
>> "darcs get --partial http://dev.splitbrain.org/darcs/dokuwiki";
>>
>> I enabled XMLRPC in the configuration.
> 
> Okay, and that's part of your problem. During DokuWiki Hackdays some
> functions of the XMLRPC-interface were changed and DokuFS is not yet
> compatible with these changes.

I tried with your new version of the script - works!

At least it does not crash. Changes from the Browser still don't make it
into DokuFS. But that is most probably because my server's clock is not
running correctly.

Maybe dokufs.rb should not rely on the timestamps in "recent changes"
but should remember the time of the most recent change and start from there.

> [...]
> This is because I do cache in all pages in DokuFS. Every five minutes I
> pull the recent changes from DokuWiki and update all files that changed.
> That means after a maximum of 5 minutes you should see the changes in
> the DokuFS.
> 
> I might add another option for specifying this update interval or also a
> cache timeout, that means that the page is deleted from the cache when
> it's older than e.g. 2 minutes, but I don't know if that's a good
> option. If you have any ideas for this, please let me know.

As much as I see the speed improvement over the public internet, I don't
think caching the pages is a good idea.

For me, a consistent set of pages is more important than speed. There
are enough problems with concurrent edits - no need to introduce more
trouble by thinking page.dw is current, but really, the page changes
4:59 minutes ago. (Or even losing the change altogether due to
misconfigured clocks on webservers)

Some ideas:

  * Caching could be optional (and refresh time configurable, as you
suggested) -> Everybody pick his own poison

  * When a page is requested, the FS checks when it was last modified in
order to determine if we have a cache-hit or not. (Might be just as
expensive as simply reading the page, saves bandwidth on big pages but
wastes XMLRPC-calls and thus time on small/unchanged pages, 2 calls
instead of one, ...)

> [...mounts failed from that point on...]
> And now that's the incompatibility I talked about. The data the server
> sends has changed. Don't know why you haven't got it in the first place,
> perhaps because your wiki was empty.

Most probably, since wiping the data-directory let me connect again -
for 5 minutes :)

>> I will reboot my workstation after sending this message to see if I can
>> mount the wiki again after reboot and if I can reproduce the error.

Unix rule: "Rebooting will NOT fix any problem" :)

> [...]
> So the bugs you found shouldn't happen again in this version (hopefully ;)).

The crash disappeared for sure. And that the change does not get through
is most probably caused by the missing ntp-client on my webserver - so I
will not complain but fix that myself :)

I will be out of town for the weekend, but I would really love to be in
touch with DokuFS-development. So if you have new versions of dokufs.rb,
just send them over :)

Thanks again,

Stefan

Other related posts: