Last modified: 2014-09-07 19:49:09 UTC
Ubuntu 14.04 Postgresql 9.3 Followed guide at: http://www.mediawiki.org/wiki/Manual:Installing_MediaWiki When the installation is started, it halts with error: Tables creation failed. Make sure that the user "wikiuser" can write to the schema "". Postgresql verbose log shows: 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ client_encoding='UTF8' 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ datestyle = 'ISO, YMD' 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ timezone = 'GMT' 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ standard_conforming_strings = on 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ bytea_output = 'escape' 2014-09-03 15:06:36 CEST LOG: statement: BEGIN /* DatabasePostgres::determineCoreSchema 192.168.30.115 */ 2014-09-03 15:06:36 CEST LOG: statement: SELECT /* DatabasePostgres::schemaExists 192.168.30.115 */ 1 FROM "pg_catalog"."pg_namespace" WHERE nspname = '' LIMIT 1 2014-09-03 15:06:36 CEST LOG: statement: SELECT /* DatabasePostgres::getCurrentSchema 192.168.30.115 */ current_schema() 2014-09-03 15:06:36 CEST LOG: statement: COMMIT /* DatabasePostgres::determineCoreSchema 192.168.30.115 */ 2014-09-03 15:06:36 CEST LOG: statement: SELECT /* PostgresInstaller::setupDatabase 192.168.30.115 */ 1 FROM "pg_catalog"."pg_database" WHERE datname = 'wikidb' LIMIT 1 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ client_encoding='UTF8' 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ datestyle = 'ISO, YMD' 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ timezone = 'GMT' 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ standard_conforming_strings = on 2014-09-03 15:06:36 CEST LOG: statement: SET /* DatabasePostgres::open 192.168.30.115 */ bytea_output = 'escape' 2014-09-03 15:06:36 CEST LOG: statement: BEGIN /* DatabasePostgres::determineCoreSchema 192.168.30.115 */ 2014-09-03 15:06:36 CEST LOG: statement: SELECT /* DatabasePostgres::schemaExists 192.168.30.115 */ 1 FROM "pg_catalog"."pg_namespace" WHERE nspname = '' LIMIT 1 2014-09-03 15:06:36 CEST LOG: statement: SELECT /* DatabasePostgres::getCurrentSchema 192.168.30.115 */ current_schema() 2014-09-03 15:06:36 CEST LOG: statement: COMMIT /* DatabasePostgres::determineCoreSchema 192.168.30.115 */ 2014-09-03 15:06:36 CEST LOG: statement: SELECT /* PostgresInstaller::setupPLpgSQL 192.168.30.115 */ 1 FROM "pg_catalog"."pg_language" WHERE lanname = 'plpgsql' LIMIT 1 2014-09-03 15:06:36 CEST LOG: statement: SELECT /* DatabasePostgres::schemaExists 192.168.30.115 */ 1 FROM "pg_catalog"."pg_namespace" WHERE nspname = '' LIMIT 1 2014-09-03 15:06:36 CEST ERROR: zero-length delimited identifier at or near """" at character 56 2014-09-03 15:06:36 CEST STATEMENT: CREATE /* DatabaseBase::query 192.168.30.115 */ SCHEMA "" AUTHORIZATION "wikiuser"
The error was caused by "Schema for mediawiki" was empty. It was empty by default, the guide did not mention anything about it and the help text suggested it only be changed if needed. Anyways empty is not an option, consider some default value, I choose "mediawiki" and/or implement a value = "" not allowed.
Thanks for taking the time to report this! (In reply to Jesper Brovang from comment #1) > The error was caused by "Schema for mediawiki" was empty. Sorry but I don't get that part. If I get it right, this is basically a request to improve the documentation? If so, you are very welcome to edit http://www.mediawiki.org/wiki/Manual:Installing_MediaWiki
This is a manifestation of bug 64043. In 1.22 it used to provide a reasonable default value for this field.