Bug tracker

This ticket has been moved to our new tracker. Open Ticket PHPBB3-1847 now.

Restore error on mysql (fix completed in vcs)

Fresh CVS install.
PHP5
Mysql 4.0.24

Install. Choose Backup, full, gzip, store local.

Stay on the ACP, choose restore and select the fresh backup file.

Error:
Code: Select all
SQL ERROR [ mysql ]

BLOB column 'ban_email' used in key specification without a key length [1170]

SQL

CREATE TABLE area51_banlist( ban_id mediumint(8) unsigned NOT NULL auto_increment, ban_userid mediumint(8) unsigned DEFAULT '0' NOT NULL, ban_ip varchar(40) DEFAULT '' NOT NULL, ban_email text DEFAULT '' NOT NULL, ban_start int(11) unsigned DEFAULT '0' NOT NULL, ban_end int(11) unsigned DEFAULT '0' NOT NULL, ban_exclude tinyint(1) unsigned DEFAULT '0' NOT NULL, ban_reason text DEFAULT '' NOT NULL, ban_give_reason text DEFAULT '' NOT NULL, PRIMARY KEY (ban_id), KEY ban_end (ban_end), KEY ban_user (ban_userid, ban_exclude), KEY ban_email (ban_email, ban_exclude), KEY ban_ip (ban_ip, ban_exclude) )

BACKTRACE


FILE: includes/db/mysql.php
LINE: 130
CALL: dbal->sql_error()

FILE: includes/acp/acp_database.php
LINE: 1272
CALL: dbal_mysql->sql_query()

FILE: includes/functions_module.php
LINE: 361
CALL: acp_database->main()

FILE: adm/index.php
LINE: 83
CALL: p_master->load_active()

Comments / History

Posted by Dr.Death (QA Team) on Oct 14th 2006, 19:49

In the stored sql backup is this :

Code: Select all
DROP TABLE IF EXISTS area51_banlist;
CREATE TABLE area51_banlist(
   ban_id mediumint(8) unsigned NOT NULL auto_increment,
   ban_userid mediumint(8) unsigned DEFAULT '0' NOT NULL,
   ban_ip varchar(40) DEFAULT '' NOT NULL,
   ban_email text DEFAULT '' NOT NULL,
   ban_start int(11) unsigned DEFAULT '0' NOT NULL,
   ban_end int(11) unsigned DEFAULT '0' NOT NULL,
   ban_exclude tinyint(1) unsigned DEFAULT '0' NOT NULL,
   ban_reason text DEFAULT '' NOT NULL,
   ban_give_reason text DEFAULT '' NOT NULL,
   PRIMARY KEY (ban_id),
   KEY ban_end (ban_end),
   KEY ban_user (ban_userid, ban_exclude),
   KEY ban_email (ban_email, ban_exclude),
   KEY ban_ip (ban_ip, ban_exclude)
);


But in your installer schema mysql40 you found this:
Code: Select all
CREATE TABLE phpbb_banlist (
   ban_id mediumint(8) UNSIGNED NOT NULL auto_increment,
   ban_userid mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,
   ban_ip varchar(40) DEFAULT '' NOT NULL,
   ban_email text NOT NULL,
   ban_start int(11) UNSIGNED DEFAULT '0' NOT NULL,
   ban_end int(11) UNSIGNED DEFAULT '0' NOT NULL,
   ban_exclude tinyint(1) UNSIGNED DEFAULT '0' NOT NULL,
   ban_reason text NOT NULL,
   ban_give_reason text NOT NULL,
   PRIMARY KEY (ban_id),
   KEY ban_end (ban_end),
   KEY ban_user (ban_userid, ban_exclude),
   KEY ban_email (ban_email(255), ban_exclude),
   KEY ban_ip (ban_ip, ban_exclude)
);

Linked ticket with changeset: r6507

Action performed by DavidMJ (Former Team Member) on Oct 16th 2006, 22:12

Ticket details

Related SVN changesets