"Reedy" changed the status of MediaWiki.r113487 to "fixme" and commented it.
URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/113487#c32028

Old Status: new
New Status: fixme

Commit summary for MediaWiki.r113487:

Handle PostgreSQL transaction errors and improve schema detection

* Introduce $wgDebugDBTransactions facility to help
  figure out what's going on with transactions.
  Currently PostgreSQL only.

  PostgresTransactionState can be easily be made more general
  to trace all sorts of state machinery.

* Improve r113408: we don't need to full reconnect on error,
  rollback is enough.

  Rolling back breaks search_path, as PostgreSQL
  can manage sessions settings under transaction therefore
  we need to improve schema sniffing introduced in r82674

* Introduce few schema handling functions. This could
  probably be generalized for other databases like DB2 and Oracle.

* Fix bug 15816 - Add a switch for SETting the search_path

  We try to avoid touching search_path at all unless
  really necessary. Even in this case we append MediaWiki
  core schema to the front of the list.

* No longer add $wgDBmwschema to PostgreSQL role search_path
  in the installer. This is no longer necessary as
  setting schema on connect should ReallyWorkNow(tm).

* Get rid as much as possible of $wgDBmwschema and
  bring us one step closer to fix bug 16794 (wgSharedDB
  support).

  All references to core MediaWiki schema in PostgreSQL
  specific code should now use Database::getCoreSchema()
  unless we know what we are doing.

Followup-To: r113408 r82674

Reedy's comment:

pg_array_parse:
*You're missing a few extra braces
**On the if( '{}' != $text )
**On if ( '},' == $match[3] )
**On the else

<pre>
$offset = $this->pg_array_parse( $text, $output[], $limit, $offset+1 );
</pre>

That isn't valid syntax, you either want to just use $output, or 
$output[$foobar]


You'd also broken UnitTests, but fixed that in r113498
<pre>
[exec] PHP Fatal error:  Call to a member function getCoreSchema() on a 
non-object in 
/var/lib/jenkins/jobs/MediaWiki-postgres-phpunit/workspace/mw-core/includes/db/DatabasePostgres.php
 on line 216
</pre>

_______________________________________________
MediaWiki-CodeReview mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview

Reply via email to