I upgraded from 5.2 to 5.3 the most conservative way, by installing a clean 5.3 and then copying the /files and /sites and /themes over from my working 5.2 site. The modules under /sites/all/modules were also copied, of course.

I have the most recent release version of Audio (5.x.1.3) from the Drupal site.

I ran the update.php script as user 1 on my trial site.

I immediately started to see things like

* user warning: Table 'drup51-scifi.audio_file' doesn't exist query: SELECT
origname, filename, filepath, filemime, filesize FROM audio_file f WHERE f.vid = 62 in
/var/www/html/drupal-5.3/includes/ database.mysql.inc on line 172.
* user warning: Table 'drup51-scifi.audio_file' doesn't exist query: SELECT
origname, filename, filepath, filemime, filesize FROM audio_file f WHERE f.vid = 62 in
/var/www/html/drupal-5.3/includes/ database.mysql.inc on line 172.

I went into the actual MySQL database and confirmed that there was no such table! Then I looked at the audio.install file in the /sites/all/modules/audio area, and read this:

<?php
// $Id: audio.install,v 1.13 2007/02/15 16:37:47 drewish Exp $

/**
 * Install the initial schema.
 */
function audio_install() {
  switch ($GLOBALS['db_type']) {
    case 'mysql':
    case 'mysqli':
      db_query("
        CREATE TABLE {audio} (
          `vid` int(10) unsigned NOT NULL default '0',
          `nid` int(10) unsigned NOT NULL default '0',
          `title_format` varchar(128) default '',
          `play_count` int(10) unsigned NOT NULL default '0',
          `download_count` int(10) unsigned NOT NULL default '0',
          `downloadable` tinyint(1) NOT NULL default '1',
          `fileformat` varchar(10) NOT NULL default '',
          `sample_rate` int(10) unsigned NOT NULL default '0',
          `channel_mode` varchar(10) NOT NULL default '',
          `bitrate` float unsigned NOT NULL default '0',
          `bitrate_mode` varchar(4) NOT NULL default '',
          `playtime` varchar(10) NOT NULL default '',
          PRIMARY KEY  (`vid`)
        ) /*!40100 DEFAULT CHARACTER SET utf8 */;
      ");
      db_query("
        CREATE TABLE  {audio_file} (
          `vid` int(10) unsigned NOT NULL default '0',
          `origname` varchar(255) NOT NULL default '',
          `filename` varchar(255) NOT NULL default '',
          `filepath` varchar(255) NOT NULL default '',
          `filemime` varchar(255) NOT NULL default '',
          `filesize` int(10) unsigned NOT NULL default '0',
          PRIMARY KEY  (`vid`)
        ) /*!40100 DEFAULT CHARACTER SET utf8 */;

etc etc..

I then deactivated the audio module (and confirmed, which showed me a warning that the audio data tables would be removed), and then re-installed it.

I continued to get the error; no table audio_file.

I finally fixed this by manually creating the table.

Another problem: the field name in the audio table 'file_format' is not correct; I kept getting messages indicating that the proper name was 'fileformat' (which went away when I manually modified the fieldname.

This probably ought to be fixed. Thanks!