geekitude / dokuwiki-plugin-userhomepage

Dokuwiki plugin to automatically create user's homepage and/or namespace
https://www.dokuwiki.org/plugin:userhomepage
5 stars 9 forks source link

Plugin clears acl.auth.php, breaking all ACL rules #7

Closed csieber closed 9 years ago

csieber commented 9 years ago

Hello,

since we installed the plugin we oberserved a strange behavior of the Wiki which we were unable to reproduce. On average all 2 weeks, the acl.auth.php is suddenly cleared and only the userhomepage ACL rules are set. This causes the Wiki to complain ("no valid ACL setup") and denying everyone the access to the Wiki.

Our Wiki is set-up on a virtual Ubuntu 14.04 server running on a XenServer. The data and configuration is located on a cifs share on a different Host (a NAS). The Wiki is used on average once a minute.

Dokuwiki Version: Hrun Plugin Version: 2014-10-26 (not current)

Maybe there is some race condition problem with the code you use to remove duplicate ACL lines and the Wiki storing the ACL requests in combination with a delay on the cifs share connection.

We will deactive the ACL setup as we don't need it. But maybe this description could be helpful in fixing the bug should it occur more often to someone else.

Best regards and thanks for the great plugin, Christian

geekitude commented 9 years ago

Hi

I met that bug in the past and thought it was totally fixed. In my experience, the acl.auth.php file wasn't correctly cleaned up, kept growing and got corrupted at some point then wiped by DokuWiki.

If you make a new attempt with latest version, let me know if you see such a behavior after a few days of use.

geekitude commented 9 years ago

Closing this issue as I met it myself in the past and corrected the problem in the past.

@Christian: I added an option since 2014-12-18 to disable ACL without any code modification so you can now update to new version(s) and won't have to change the code again (just backup your ACL file and restore it once the option is enabled).

geekitude commented 9 years ago

Bug was still there. I hope changing writing ACL with file_put_contents() for io_saveFile() will fix it for good. Will keep issue opened for at least a few months before closing.

geekitude commented 9 years ago

Bug occured again a few days ago. Next guess is that there was way too many operations on acl.auth.php file on each page load (rewrite all rules then delete duplicated lines). Hopefully fixed by today's version.

geekitude commented 9 years ago

It seems that this bug has been fixed by the modification of the ACL process. Closing the issue