Index: trunk/phase3/includes/installer/DatabaseInstaller.php |
— | — | @@ -130,10 +130,15 @@ |
131 | 131 | } |
132 | 132 | |
133 | 133 | $this->db->setFlag( DBO_DDLMODE ); // For Oracle's handling of schema files |
| 134 | + $this->db->begin( __METHOD__ ); |
| 135 | + |
134 | 136 | $error = $this->db->sourceFile( $this->db->getSchema() ); |
135 | 137 | if( $error !== true ) { |
136 | 138 | $this->db->reportQueryError( $error, 0, '', __METHOD__ ); |
| 139 | + $this->db->rollback( __METHOD__ ); |
137 | 140 | $status->fatal( 'config-install-tables-failed', $error ); |
| 141 | + } else { |
| 142 | + $this->db->commit( __METHOD__ ); |
138 | 143 | } |
139 | 144 | return $status; |
140 | 145 | } |
Index: trunk/phase3/RELEASE-NOTES |
— | — | @@ -79,6 +79,7 @@ |
80 | 80 | tab on the mainpage of a wiki. |
81 | 81 | * (bug 10158) Do not mention allowing others to contact you when the feature |
82 | 82 | is disabled ($wgEnableUserEmail=false) |
| 83 | +* (bug 26733) Wrap initial table creation in transaction |
83 | 84 | |
84 | 85 | === API changes in 1.18 === |
85 | 86 | * (bug 26339) Throw warning when truncating an overlarge API result |