User:TerryE/phpBB3.0.7 Upgrade/Issues and Actions

From Apache OpenOffice Wiki
< User:TerryE
Revision as of 21:39, 15 July 2010 by TerryE (Talk | contribs)

Jump to: navigation, search

I have included the list of open issues and activities that I intend to carried out as part of the phpBB V3.0.7 upgrade below.

The Core Build

This work is now complete and all ten live NL databases migrated to 3.0.7. See Closed Issues and Actions for details on the process.

Round-off and archive

See Closed Issues and Actions for details on the following completed activities:

  • Automated administrator email responder
  • Automated unactivated users prune
  • Oracle branding
  • Retiring custom fields

I need still need to clean out any temporary archive files, and archive the core set of sh and patch files so that I can pick this up as a basis of a future 3.0.7 -> 3.x upgrade.

Automated Backup

I had a set of scripts that ran as a cron job for the old server with the PostgresSQL D/B, but I turned these off when I moved to MySQL and we decommissioned using the OUCV server as a second site. I have a script which I use manually about once per week (on top of standard Solaris backups), but I would prefer to have a nightly incremental dump.

There are still some open issues that I want to bottom:

  • mysqlhotcopy vs mysqldump. The former is a binary snapshot which has about the lowest lock impact on the database -- 15secs in the case of the biggest forum (EN). This can be dropped to a few secs by separating out the posts table (~85% of the D/B volumes), as we don't need the transactional integrity here. The latter generates a SQL load file but hangs the EN forum for a couple of minutes. Again splitting the four largest tables (post, topics, users, logs) into separate select to outfiles and dumping the rest helps a bit, but as long as we do the backup in the early hours CET, the big loads (ER / FR) are minimal.
  • Incremental vs full
  • Off-site copy or not
  • Binary logs

Enabling Atom Feeds

A number of the power users on the FR forum used the previous RSS feed. This functionality has been dropped and an equivalent needs reinstituted. The previous mod implementation adopted the Simple RSS mod for phpBB3. However, this mod has significant limitations that I can't ignore; most importantly it bypasses the phpBB access control system, allowing unregistered users to browse closed forums. I didn't get this working properly but this functionality is now superseded by a standard php V306 feature to provide ATOM feeds.

  • We need to investigate its implementation for those forums that want it, as it requires enabling / configuring through ACP.
  • I need to discuss this further with the FR proponents of this mod.
  • Note that for some reason, the ATOM feed link isn't being displayed if the Feed is enable. I need to investigate this.

Forum watchdog

For some reason Mysql stalls and the number of open threads explodes. When this happens the Apache2 threads which are all invoking phpBB transactions run out of cursor connects. This seems to be a latching state. The simplest remedy is to stop apache2, stop and restart mysql then restart apache. I have written a simple php script which probes the database and returns an "OK" if it can connect to the Mysql engine and run a simple query against the EN forum. Note that this only responds to fetches from localhost. This can then be invoked by the watchdog script to return this status:

  phpBB_status=$(wget -O - -o /dev/null -T 10  http://localhost/db_check_loopback.php)

The watchdog is kicked off daily at midnight and polls phpBB through Apache every 15 mins. If OK is not returned then one retry is done 5 mins later and at this point apache/mysql is bounced; Email warnings are sent to TerryE / CCornell. Note that this clearly only addresses apache/mysql stalls.

A preliminary version is deployed but I am waiting review comment from the Oracle sysadmin.

Logfile Retention Policy

At the moment I've configured Logfile rotation on the Apache access and error logs on a weekly basis. At the moment I periodically compress old logs and delete access logs older the 3 months. Rotation on the MySQL logs is also done on an adhoc basis. I need to implement a simple weekly cron task which:

  • Rotates the Mysql log (I have turned off user logging -- no point on our prod system)
  • BZ2 compresses Apache logs older than one week (remember to use nice)
  • Deletes the compressed Apache access logs files older than 3 months and error logs older than 6 months

I have binary logs enabled on Mysql but these are flushed and purged after the nightly backup (see above).

Basic Management Reporting

Some of the NL forums are clearly active and healthy. Some clearly less so. However, we have no objective measures in place to identify any issues that are arising and any trends that need to trigger additional support for any individual forum that might be having problems. One option here might be to introduce some basic health measures so that we can maintain a simple forum dashboard.

Standardising Forum Configurations

With 10 forums any degree of divergence can cause problems on upgrade and through-life maintenance, so we need to standardise where possible. I am not talking about language packs or basic forum structure but things like the extra BBcodes, permissible file extensions for upload, etc.. If they make sense in one OOo forum then they should be in all.

Write up phpBB 3.0.7 configuration

I have decided to do this in the phpBB wiki because this will be of more interest to phpBB admins rather than OOo Volunteers and NL Admins. I will post the link here when I've done it.

Personal tools