User:TerryE/phpBB3.0.4 Migration/Closed Issues and Actions

From Apache OpenOffice Wiki
Jump to: navigation, search

Closed Issues and Actions

Activities on this page are now closed

I have included the list of issue in alphabetic order below.

Attachment Quotas

I set the attachment quotas on the EN and FR boards as 300Mb and 500Mb respectively, with the other boards are set at 100Mb for now. Unfortunately I used the values 300Mb where this should have been a number which resulted in attachments being disabled. The first time I fixed it, I had finger trouble on the update (accidentally typing a ";" before the where clause in a update has a disastrous result :lol:).

"Oups, seems there is a problem in the counts bottom of page: all are set to 314,872,800 topics/posts/users!"

Another hour extracting and restoring phpbb_XX_config tables from the last backup and rolling forward the changes that I made.

Automated Mailbox Robot

Main Article: Automated Mailbox Robot

I now have this working for each forum, subject to limitation that the Admin Mailbox Configuration post must be correctly configured. There seems to be something wrong with the forum permissions propagations. I have used the workaround of using my administrator powers to adopt a moderators permissions so I have now (as at UTC 02:08, 18 May 2009) set up all of the forum mailboxes and tested each by sending a test message to each. The NL admins mostly have some more playing/tweaking of the configs but the robot is broadly working.

ACP Actions Hangs

This was raised by Acknak:

I've noticed a consistent glitch with banning users. Once I fill out the form and click "Submit" I never get a response back. The browser just sits, with status "Waiting for". I've let it sit that way for several minutes, but never see the "success" page come back. However, if I cancel the page load at that point, go back and re-load the banning form, te ban list has been updated with the user ID that I submitted, so I think the ban is actually successful.

I have also noticed with the delete Inactive accounts function.

This turned out to be an artefact of the caching problems that I've discussed separately. I've fixed the cache issues and in doing so fixed this.

Caching Setup and Policy

I have enabled the APC (Another Php Cache) cache for the site.


APC seems to be working well apart (from one gremlin). You can see how effective this is by executing a temporary APC query usOOO — APC Cache Summary. I just ran this report and on a 47hr window since last refresh we are running at around 170K cache reference/hr and of these we have a 99.4% cache hit rate. The figure is even bigger when weighted by code size.

The gremlin is that apc.stat=1 doesn't seem to work in CSK 1.3.1, though it did work fine in 1.2. (See APC change of behaviour on CSK upgrade for more details). The phpBB cache functionality is impacted by this because opening an existing file for write does not update the inode timestamp works, because it deletes old files and the writes new ones, so the ctime is updated as well as the mtime. This has triggered me to look at more detail at the whole caching design in phpBB. I am believe that some of the funnies we are seeing which cache persitence are an artefact of this.

Main Article: Cache Tuning

I've reported on this separately. Patches deployed and I consider this one closed.

Mail subscriptions aren't working

You are supposed to be able to subscribe to a forum or post and this will trigger automatic mail notifications. This wasn't working. I set up a test harness using the test NL forum on the server to try this out. After a lot of tedious debugging, I discovered two issue, both of which I really regard as bugs in phpBB:

  • I had set up the forums so that the ACP->Email Settings->E-mail package size to 50. OK, the comment says "This is the number of maximum e-mails sent out in one package. This setting is applied to the internal message queue; set this value to 0 if you have problems with non-delivered notification e-mails." (My italics) However, when I drill through all the code the queuing and dequeuing functionality is implemented, but the dequeue is triggered by a cron.php hook which was never called.
  • The reason for this is that the common.php includes the following conditional which causes the cron.php task to fail in our shared code implementation, since this causes it to attempt to resolve the cache directory in /var/www/phpBB-common/cache which doesn't exist. What the logic for doing this, heaven knows, but my work-around is to reset $phpbb_root_path back after including this in the cron.php routine.
if (defined('IN_CRON'))
    $phpbb_root_path = dirname(__FILE__) . DIRECTORY_SEPARATOR;

The way the cron hook is executed is that the footer template includes the hook:

 <!-- IF not S_IS_BOT -->{RUN_CRON_TASK}<!-- ENDIF -->

The page_footer setup function has an optional parameter $run_cron which defaults to true, and in fact is always called page_footer(), so this cron path is executed on every page generation. The cron.php is a pseudo-cron task. This executes a logic cascade including the triggering of the processing email queue every 'queue_interval'. If it needed, it includes a image link to a dummy image which is one blank pixel, but in reality this triggers a callback from the browser to initiate the cleanup function. As most browsers implement a lazy image load during the page load, this doesn't impair the user experience.

I have put in this fix, but also set the email_package_size parameter to zero for now. I will review this for tuning and optimisation later, but for now this works.

More Information: Cron Tasks

Review of Apache Logs

I went through the Apache error logs to see what avoidable errors could be addressed:

  • The robots.txt file needed updating [Done]
  • The favicon.ico needs an explicit meta tag in the standard header [Deferred to 3.0.5 Release]
  • The fr rss.php is generating a lot of misses [Deferred to 3.0.6 Releasae]
  • The fr ci-joint database is generating a lot of hits to files of the format fichier/YYYY/MM/0000NNNNN_KKKKK.tempMMMM.htm which don't exist. (The directories fichier/YYYY/MM exist and contain files like 07-105956.ods but no tempMMMM.htm files) [legacy. These have now been excluded in the robots.txt]
  • Entering the adm links to the wrong path relative style instead of styles. A symlink from adm/styles to styles will fix this. [Done]
  • There were a couple of usernames as forum icons which I removed (an artifact of Ff field defaults.) [Done]
  • One of the bg.gifs was missing. [Done]

I will look at the error logs again in a week to see what more needs to be done.

In terms of the access logs, I was using the lines

<IfModule logio_module>
  # You need to enable mod_logio.c to use %I and %O
  LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio

to define a combinedio alias, but I had forgot to enable mod_logio and thus the alias wasn't defined, so for the last week, we've had "combinedio" logged for every access. I've fixed this. I will look at this again in a few days time.

Site Home Page

I hadn't migrated this one so for a day, the home page as It works!. Oops. A few people raised this so I hacked quick-and-dirty home page based on the main OOo homepage and style. Since I didn't change the CSS, we've got a couple of wobbly columns. See for this example.

Drew is going to reimplement a proper home page.

I also had to add redirectors from /en to /en/forum, etc. Again symlink to a shared redirector the /var/www/phpBB-common folder.

View New Post Count

This count is no longer being updated during the session.

Fixed with the cache fixes.

Warning user flag on viewtopics and viewforum (Closed)

This was previously implemented on the fr forum. This functionality was been temporarily dropped and has now been reinstituted.

Personal tools