diff options
author | Tom Needham <needham.thomas@gmail.com> | 2012-04-01 00:25:47 +0000 |
---|---|---|
committer | Tom Needham <needham.thomas@gmail.com> | 2012-04-01 00:25:47 +0000 |
commit | eba6a65908ab848741a29467a2c054818e3c740c (patch) | |
tree | debe939209c4cf030c722ace3036f7cfabdb1e30 /lib | |
parent | ffbd72bbcf775ac31a43b958ec1e8eaddf0f8356 (diff) | |
download | nextcloud-server-eba6a65908ab848741a29467a2c054818e3c740c.tar.gz nextcloud-server-eba6a65908ab848741a29467a2c054818e3c740c.zip |
try to use transactions to replace db
Diffstat (limited to 'lib')
-rw-r--r-- | lib/db.php | 9 | ||||
-rw-r--r-- | lib/migrate.php | 10 |
2 files changed, 9 insertions, 10 deletions
diff --git a/lib/db.php b/lib/db.php index a7b7ae75da0..9c46a40addb 100644 --- a/lib/db.php +++ b/lib/db.php @@ -489,7 +489,7 @@ class OC_DB { public static function replaceDB( $file ){ $apps = OC_App::getAllApps(); - + self::beginTransaction(); // Delete the old tables self::removeDBStructure( OC::$SERVERROOT . '/db_structure.xml' ); @@ -501,11 +501,8 @@ class OC_DB { } // Create new tables - if( self::createDBFromStructure( $file ) ){ - return true; - } else { - return false; - } + self::createDBFromStructure( $file ); + self::commit(); } diff --git a/lib/migrate.php b/lib/migrate.php index db3852fb832..815333b4d89 100644 --- a/lib/migrate.php +++ b/lib/migrate.php @@ -257,28 +257,30 @@ class OC_Migrate{ return $appsimported; break; case 'instance': + /* // Check for new data dir and dbexport before doing anything // TODO - /* + // Delete current data folder. OC_Log::write( 'migration', "Deleting current data dir", OC_Log::INFO ); - if( self::unlink_r( $datadir, false ) ){ + if( !self::unlink_r( $datadir, false ) ){ OC_Log::write( 'migration', 'Failed to delete the current data dir', OC_Log::ERROR ); return false; } // Copy over data - if( !self::copy_r( $extractname . 'data', $datadir ) ){ + if( !self::copy_r( $extractpath . 'userdata', $datadir ) ){ OC_Log::write( 'migration', 'Failed to copy over data directory', OC_Log::ERROR ); return false; } - */ + // Import the db if( !OC_DB::replaceDB( $extractpath . 'dbexport.xml' ) ){ return false; } // Done return true; + */ break; } |