diff options
| -rw-r--r-- | build/build.xml | 6 | ||||
| -rw-r--r-- | phpBB/develop/create_schema_files.php | 2 | ||||
| -rw-r--r-- | phpBB/docs/CHANGELOG.html | 2 | ||||
| -rw-r--r-- | phpBB/install/database_update.php | 27 | ||||
| -rw-r--r-- | phpBB/install/schemas/firebird_schema.sql | 14 | ||||
| -rw-r--r-- | phpBB/install/schemas/mssql_schema.sql | 8 | ||||
| -rw-r--r-- | phpBB/install/schemas/mysql_40_schema.sql | 2 | ||||
| -rw-r--r-- | phpBB/install/schemas/mysql_41_schema.sql | 2 | ||||
| -rw-r--r-- | phpBB/install/schemas/oracle_schema.sql | 20 | ||||
| -rw-r--r-- | phpBB/install/schemas/postgres_schema.sql | 6 | ||||
| -rw-r--r-- | phpBB/install/schemas/sqlite_schema.sql | 1 | ||||
| -rw-r--r-- | tests/dbal/db_tools_test.php | 10 | 
12 files changed, 42 insertions, 58 deletions
diff --git a/build/build.xml b/build/build.xml index ed9643c12f..42642dcefa 100644 --- a/build/build.xml +++ b/build/build.xml @@ -2,9 +2,9 @@  <project name="phpBB" description="The phpBB forum software" default="all" basedir="../">  	<!-- a few settings for the build --> -	<property name="newversion" value="3.0.9-RC3" /> -	<property name="prevversion" value="3.0.9-RC2" /> -	<property name="olderversions" value="3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.6, 3.0.7, 3.0.7-PL1, 3.0.8, 3.0.9-RC1" /> +	<property name="newversion" value="3.0.9" /> +	<property name="prevversion" value="3.0.8" /> +	<property name="olderversions" value="3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.6, 3.0.7, 3.0.7-PL1, 3.0.9-RC1, 3.0.9-RC2, 3.0.9-RC3" />  	<!-- no configuration should be needed beyond this point -->  	<property name="oldversions" value="${olderversions}, ${prevversion}" /> diff --git a/phpBB/develop/create_schema_files.php b/phpBB/develop/create_schema_files.php index c0803f0f5c..213354fcb9 100644 --- a/phpBB/develop/create_schema_files.php +++ b/phpBB/develop/create_schema_files.php @@ -1225,7 +1225,6 @@ function get_schema_struct()  	$schema_data['phpbb_login_attempts'] = array(  		'COLUMNS'		=> array( -			'attempt_id'			=> array('UINT', NULL, 'auto_increment'),  			'attempt_ip'			=> array('VCHAR:40', ''),  			'attempt_browser'		=> array('VCHAR:150', ''),  			'attempt_forwarded_for'	=> array('VCHAR:255', ''), @@ -1234,7 +1233,6 @@ function get_schema_struct()  			'username'				=> array('VCHAR_UNI:255', 0),  			'username_clean'		=> array('VCHAR_CI', 0),  		), -		'PRIMARY_KEY'	=> 'attempt_id',  		'KEYS'			=> array(  			'att_ip'				=> array('INDEX', array('attempt_ip', 'attempt_time')),  			'att_for'		=> array('INDEX', array('attempt_forwarded_for', 'attempt_time')), diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index 6b12cb81bf..c0ec93cafb 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -333,6 +333,8 @@  </li>  <li>[<a href='http://tracker.phpbb.com/browse/PHPBB3-10234'>PHPBB3-10234</a>] -         msg_handler() reports E_WARNING as "PHP Notice: "  </li> +<li>[<a href='http://tracker.phpbb.com/browse/PHPBB3-10247'>PHPBB3-10247</a>] -         mediumint(8) too small for phpbb_login_attempts.attempt_id +</li>  </ul>  <h4>        Improvement diff --git a/phpBB/install/database_update.php b/phpBB/install/database_update.php index 21defd0a80..f0fd640ebd 100644 --- a/phpBB/install/database_update.php +++ b/phpBB/install/database_update.php @@ -1013,7 +1013,12 @@ function database_update_info()  			'add_tables'		=> array(  				LOGIN_ATTEMPT_TABLE	=> array(  					'COLUMNS'			=> array( -						'attempt_id'			=> array('UINT', NULL, 'auto_increment'), +						// this column was removed from the database updater +						// after 3.0.9-RC3 was released. It might still exist +						// in 3.0.9-RCX installations and has to be dropped in +						// 3.0.10 after the db_tools class is capable of properly +						// removing a primary key. +						// 'attempt_id'			=> array('UINT', NULL, 'auto_increment'),  						'attempt_ip'			=> array('VCHAR:40', ''),  						'attempt_browser'		=> array('VCHAR:150', ''),  						'attempt_forwarded_for'	=> array('VCHAR:255', ''), @@ -1037,6 +1042,14 @@ function database_update_info()  				),  			),  		), +		// No changes from 3.0.9-RC1 to 3.0.9-RC2 +		'3.0.9-RC1'		=> array(), +		// No changes from 3.0.9-RC2 to 3.0.9-RC3 +		'3.0.9-RC2'		=> array(), +		// No changes from 3.0.9-RC3 to 3.0.9 +		'3.0.9-RC3'     => array(), + +		/** @todo DROP LOGIN_ATTEMPT_TABLE.attempt_id in 3.0.10-RC1 */  		// Changes from 3.1.0-dev to 3.1.0-A1  		'3.1.0-dev'		=> array( @@ -2046,6 +2059,18 @@ function change_database_data(&$no_updates, $version)  			$no_updates = false;  		break; +		// No changes from 3.0.9-RC1 to 3.0.9-RC2 +		case '3.0.9-RC1': +		break; + +		// No changes from 3.0.9-RC2 to 3.0.9-RC3 +		case '3.0.9-RC2': +		break; + +		// No changes from 3.0.9-RC3 to 3.0.9 +		case '3.0.9-RC3': +		break; +  		// Changes from 3.1.0-dev to 3.1.0-A1  		case '3.1.0-dev':  			set_config('use_system_cron', 0); diff --git a/phpBB/install/schemas/firebird_schema.sql b/phpBB/install/schemas/firebird_schema.sql index 9e18ed3dc3..b19ece2b7c 100644 --- a/phpBB/install/schemas/firebird_schema.sql +++ b/phpBB/install/schemas/firebird_schema.sql @@ -549,7 +549,6 @@ END;;  # Table: 'phpbb_login_attempts'  CREATE TABLE phpbb_login_attempts ( -	attempt_id INTEGER NOT NULL,  	attempt_ip VARCHAR(40) CHARACTER SET NONE DEFAULT '' NOT NULL,  	attempt_browser VARCHAR(150) CHARACTER SET NONE DEFAULT '' NOT NULL,  	attempt_forwarded_for VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL, @@ -559,24 +558,11 @@ CREATE TABLE phpbb_login_attempts (  	username_clean VARCHAR(255) CHARACTER SET UTF8 DEFAULT 0 NOT NULL COLLATE UNICODE  );; -ALTER TABLE phpbb_login_attempts ADD PRIMARY KEY (attempt_id);; -  CREATE INDEX phpbb_login_attempts_att_ip ON phpbb_login_attempts(attempt_ip, attempt_time);;  CREATE INDEX phpbb_login_attempts_att_for ON phpbb_login_attempts(attempt_forwarded_for, attempt_time);;  CREATE INDEX phpbb_login_attempts_att_time ON phpbb_login_attempts(attempt_time);;  CREATE INDEX phpbb_login_attempts_user_id ON phpbb_login_attempts(user_id);; -CREATE GENERATOR phpbb_login_attempts_gen;; -SET GENERATOR phpbb_login_attempts_gen TO 0;; - -CREATE TRIGGER t_phpbb_login_attempts FOR phpbb_login_attempts -BEFORE INSERT -AS -BEGIN -	NEW.attempt_id = GEN_ID(phpbb_login_attempts_gen, 1); -END;; - -  # Table: 'phpbb_moderator_cache'  CREATE TABLE phpbb_moderator_cache (  	forum_id INTEGER DEFAULT 0 NOT NULL, diff --git a/phpBB/install/schemas/mssql_schema.sql b/phpBB/install/schemas/mssql_schema.sql index 76ce740507..f823667252 100644 --- a/phpBB/install/schemas/mssql_schema.sql +++ b/phpBB/install/schemas/mssql_schema.sql @@ -657,7 +657,6 @@ GO  	Table: 'phpbb_login_attempts'  */  CREATE TABLE [phpbb_login_attempts] ( -	[attempt_id] [int] IDENTITY (1, 1) NOT NULL ,  	[attempt_ip] [varchar] (40) DEFAULT ('') NOT NULL ,  	[attempt_browser] [varchar] (150) DEFAULT ('') NOT NULL ,  	[attempt_forwarded_for] [varchar] (255) DEFAULT ('') NOT NULL , @@ -668,13 +667,6 @@ CREATE TABLE [phpbb_login_attempts] (  ) ON [PRIMARY]  GO -ALTER TABLE [phpbb_login_attempts] WITH NOCHECK ADD  -	CONSTRAINT [PK_phpbb_login_attempts] PRIMARY KEY  CLUSTERED  -	( -		[attempt_id] -	)  ON [PRIMARY]  -GO -  CREATE  INDEX [att_ip] ON [phpbb_login_attempts]([attempt_ip], [attempt_time]) ON [PRIMARY]  GO diff --git a/phpBB/install/schemas/mysql_40_schema.sql b/phpBB/install/schemas/mysql_40_schema.sql index 24fa69ac73..8b603f9572 100644 --- a/phpBB/install/schemas/mysql_40_schema.sql +++ b/phpBB/install/schemas/mysql_40_schema.sql @@ -373,7 +373,6 @@ CREATE TABLE phpbb_log (  # Table: 'phpbb_login_attempts'  CREATE TABLE phpbb_login_attempts ( -	attempt_id mediumint(8) UNSIGNED NOT NULL auto_increment,  	attempt_ip varbinary(40) DEFAULT '' NOT NULL,  	attempt_browser varbinary(150) DEFAULT '' NOT NULL,  	attempt_forwarded_for varbinary(255) DEFAULT '' NOT NULL, @@ -381,7 +380,6 @@ CREATE TABLE phpbb_login_attempts (  	user_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,  	username blob NOT NULL,  	username_clean blob NOT NULL, -	PRIMARY KEY (attempt_id),  	KEY att_ip (attempt_ip, attempt_time),  	KEY att_for (attempt_forwarded_for, attempt_time),  	KEY att_time (attempt_time), diff --git a/phpBB/install/schemas/mysql_41_schema.sql b/phpBB/install/schemas/mysql_41_schema.sql index cf08bb61c6..f418e1d2a5 100644 --- a/phpBB/install/schemas/mysql_41_schema.sql +++ b/phpBB/install/schemas/mysql_41_schema.sql @@ -373,7 +373,6 @@ CREATE TABLE phpbb_log (  # Table: 'phpbb_login_attempts'  CREATE TABLE phpbb_login_attempts ( -	attempt_id mediumint(8) UNSIGNED NOT NULL auto_increment,  	attempt_ip varchar(40) DEFAULT '' NOT NULL,  	attempt_browser varchar(150) DEFAULT '' NOT NULL,  	attempt_forwarded_for varchar(255) DEFAULT '' NOT NULL, @@ -381,7 +380,6 @@ CREATE TABLE phpbb_login_attempts (  	user_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL,  	username varchar(255) DEFAULT '0' NOT NULL,  	username_clean varchar(255) DEFAULT '0' NOT NULL, -	PRIMARY KEY (attempt_id),  	KEY att_ip (attempt_ip, attempt_time),  	KEY att_for (attempt_forwarded_for, attempt_time),  	KEY att_time (attempt_time), diff --git a/phpBB/install/schemas/oracle_schema.sql b/phpBB/install/schemas/oracle_schema.sql index 84d59a956d..fcd7f9e5d0 100644 --- a/phpBB/install/schemas/oracle_schema.sql +++ b/phpBB/install/schemas/oracle_schema.sql @@ -747,15 +747,13 @@ END;  	Table: 'phpbb_login_attempts'  */  CREATE TABLE phpbb_login_attempts ( -	attempt_id number(8) NOT NULL,  	attempt_ip varchar2(40) DEFAULT '' ,  	attempt_browser varchar2(150) DEFAULT '' ,  	attempt_forwarded_for varchar2(255) DEFAULT '' ,  	attempt_time number(11) DEFAULT '0' NOT NULL,  	user_id number(8) DEFAULT '0' NOT NULL,  	username varchar2(765) DEFAULT '0' NOT NULL, -	username_clean varchar2(255) DEFAULT '0' NOT NULL, -	CONSTRAINT pk_phpbb_login_attempts PRIMARY KEY (attempt_id) +	username_clean varchar2(255) DEFAULT '0' NOT NULL  )  / @@ -768,22 +766,6 @@ CREATE INDEX phpbb_login_attempts_att_time ON phpbb_login_attempts (attempt_time  CREATE INDEX phpbb_login_attempts_user_id ON phpbb_login_attempts (user_id)  / -CREATE SEQUENCE phpbb_login_attempts_seq -/ - -CREATE OR REPLACE TRIGGER t_phpbb_login_attempts -BEFORE INSERT ON phpbb_login_attempts -FOR EACH ROW WHEN ( -	new.attempt_id IS NULL OR new.attempt_id = 0 -) -BEGIN -	SELECT phpbb_login_attempts_seq.nextval -	INTO :new.attempt_id -	FROM dual; -END; -/ - -  /*  	Table: 'phpbb_moderator_cache'  */ diff --git a/phpBB/install/schemas/postgres_schema.sql b/phpBB/install/schemas/postgres_schema.sql index 6fff09a5a2..1aa47b4d61 100644 --- a/phpBB/install/schemas/postgres_schema.sql +++ b/phpBB/install/schemas/postgres_schema.sql @@ -529,18 +529,14 @@ CREATE INDEX phpbb_log_user_id ON phpbb_log (user_id);  /*  	Table: 'phpbb_login_attempts'  */ -CREATE SEQUENCE phpbb_login_attempts_seq; -  CREATE TABLE phpbb_login_attempts ( -	attempt_id INT4 DEFAULT nextval('phpbb_login_attempts_seq'),  	attempt_ip varchar(40) DEFAULT '' NOT NULL,  	attempt_browser varchar(150) DEFAULT '' NOT NULL,  	attempt_forwarded_for varchar(255) DEFAULT '' NOT NULL,  	attempt_time INT4 DEFAULT '0' NOT NULL CHECK (attempt_time >= 0),  	user_id INT4 DEFAULT '0' NOT NULL CHECK (user_id >= 0),  	username varchar(255) DEFAULT '0' NOT NULL, -	username_clean varchar_ci DEFAULT '0' NOT NULL, -	PRIMARY KEY (attempt_id) +	username_clean varchar_ci DEFAULT '0' NOT NULL  );  CREATE INDEX phpbb_login_attempts_att_ip ON phpbb_login_attempts (attempt_ip, attempt_time); diff --git a/phpBB/install/schemas/sqlite_schema.sql b/phpBB/install/schemas/sqlite_schema.sql index 38333503e1..382e835767 100644 --- a/phpBB/install/schemas/sqlite_schema.sql +++ b/phpBB/install/schemas/sqlite_schema.sql @@ -361,7 +361,6 @@ CREATE INDEX phpbb_log_user_id ON phpbb_log (user_id);  # Table: 'phpbb_login_attempts'  CREATE TABLE phpbb_login_attempts ( -	attempt_id INTEGER PRIMARY KEY NOT NULL ,  	attempt_ip varchar(40) NOT NULL DEFAULT '',  	attempt_browser varchar(150) NOT NULL DEFAULT '',  	attempt_forwarded_for varchar(255) NOT NULL DEFAULT '', diff --git a/tests/dbal/db_tools_test.php b/tests/dbal/db_tools_test.php index eb2af4c4cc..ddea500f83 100644 --- a/tests/dbal/db_tools_test.php +++ b/tests/dbal/db_tools_test.php @@ -242,6 +242,15 @@ class phpbb_dbal_db_tools_test extends phpbb_database_test_case  	public function test_column_remove()  	{ +		$this->assertTrue($this->tools->sql_column_exists('prefix_table_name', 'c_int_size')); + +		$this->assertTrue($this->tools->sql_column_remove('prefix_table_name', 'c_int_size')); + +		$this->assertFalse($this->tools->sql_column_exists('prefix_table_name', 'c_int_size')); +	} + +	public function test_column_remove_primary() +	{  		$this->assertTrue($this->tools->sql_column_exists('prefix_table_name', 'c_id'));  		$this->assertTrue($this->tools->sql_column_remove('prefix_table_name', 'c_id')); @@ -264,5 +273,4 @@ class phpbb_dbal_db_tools_test extends phpbb_database_test_case  		$this->tools->sql_table_drop('prefix_test_table');  	} -  }  | 
