Issue #2416111 by quietone, ultimike, chx: Migrate Dump export needs to have a consistent order

8.0.x
Alex Pott 2015-02-17 16:12:50 +00:00
parent e26375e83f
commit e975bb18d4
8 changed files with 148 additions and 134 deletions

View File

@ -65,11 +65,6 @@ class ContentFieldTestTwo extends DrupalDumpBase {
'nid' => '1',
'delta' => '0',
'field_test_two_value' => '10',
))->values(array(
'vid' => '1',
'nid' => '1',
'delta' => '1',
'field_test_two_value' => '20',
))->values(array(
'vid' => '2',
'nid' => '1',
@ -85,6 +80,11 @@ class ContentFieldTestTwo extends DrupalDumpBase {
'nid' => '2',
'delta' => '0',
'field_test_two_value' => NULL,
))->values(array(
'vid' => '1',
'nid' => '1',
'delta' => '1',
'field_test_two_value' => '20',
))->execute();
}

View File

@ -56,138 +56,138 @@ class ProfileValues extends DrupalDumpBase {
'fid' => '8',
'uid' => '2',
'value' => 'red',
))->values(array(
'fid' => '9',
'uid' => '2',
'value' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam nulla sapien, congue nec risus ut, adipiscing aliquet felis. Maecenas quis justo vel nulla varius euismod. Quisque metus metus, cursus sit amet sem non, bibendum vehicula elit. Cras dui nisl, eleifend at iaculis vitae, lacinia ut felis. Nullam aliquam ligula volutpat nulla consectetur accumsan. Maecenas tincidunt molestie diam, a accumsan enim fringilla sit amet. Morbi a tincidunt tellus. Donec imperdiet scelerisque porta. Sed quis sem bibendum eros congue sodales. Vivamus vel fermentum est, at rutrum orci. Nunc consectetur purus ut dolor pulvinar, ut volutpat felis congue. Cras tincidunt odio sed neque sollicitudin, vehicula tempor metus scelerisque.',
))->values(array(
'fid' => '10',
'uid' => '2',
'value' => '1',
))->values(array(
'fid' => '11',
'uid' => '2',
'value' => 'Back\slash',
))->values(array(
'fid' => '12',
'uid' => '2',
'value' => "AC/DC\n,,Eagles\r\nElton John,Lemonheads\r\n\r\nRolling Stones\rQueen\nThe White Stripes",
))->values(array(
'fid' => '13',
'uid' => '2',
'value' => 'http://example.com/blog',
))->values(array(
'fid' => '14',
'uid' => '2',
'value' => 'a:3:{s:5:"month";s:1:"6";s:3:"day";s:1:"2";s:4:"year";s:4:"1974";}',
))->values(array(
'fid' => '8',
'uid' => '8',
'value' => 'brown',
))->values(array(
'fid' => '9',
'uid' => '8',
'value' => 'Nunc condimentum ligula felis, eget lacinia purus accumsan at. Pellentesque eu lobortis felis. Duis at accumsan nisl, vel pulvinar risus. Nullam venenatis, tellus non eleifend hendrerit, augue nulla rhoncus leo, eget convallis enim sem ut velit. Mauris tincidunt enim ut eros volutpat dapibus. Curabitur augue libero, imperdiet eget orci sed, malesuada dapibus tellus. Nam lacus sapien, convallis vitae quam vel, bibendum commodo odio.',
))->values(array(
'fid' => '10',
'uid' => '8',
'value' => '0',
))->values(array(
'fid' => '11',
'uid' => '8',
'value' => 'Forward/slash',
))->values(array(
'fid' => '12',
'uid' => '8',
'value' => "Deep Purple\nWho\nThe Beatles",
))->values(array(
'fid' => '13',
'uid' => '8',
'value' => 'http://blog.example.com',
))->values(array(
'fid' => '14',
'uid' => '8',
'value' => 'a:3:{s:5:"month";s:1:"9";s:3:"day";s:1:"9";s:4:"year";s:4:"1980";}',
))->values(array(
'fid' => '8',
'uid' => '15',
'value' => 'orange',
))->values(array(
'fid' => '9',
'uid' => '15',
'value' => 'Donec a diam volutpat augue fringilla fringilla. Mauris ultricies turpis ut lacus tempus, vitae pharetra lacus mattis. Nulla semper dui euismod sem bibendum, in eleifend nisi malesuada. Vivamus orci mauris, volutpat vitae enim ac, aliquam tempus lectus.',
))->values(array(
'fid' => '10',
'uid' => '15',
'value' => '1',
))->values(array(
'fid' => '11',
'uid' => '15',
'value' => 'Dot.in.the.middle',
))->values(array(
'fid' => '12',
'uid' => '15',
'value' => "ABBA\nBoney M",
))->values(array(
'fid' => '13',
'uid' => '15',
'value' => 'http://example.com/journal',
))->values(array(
'fid' => '14',
'uid' => '15',
'value' => 'a:3:{s:5:"month";s:2:"11";s:3:"day";s:2:"25";s:4:"year";s:4:"1982";}',
))->values(array(
'fid' => '8',
'uid' => '16',
'value' => 'blue',
))->values(array(
'fid' => '9',
'uid' => '16',
'value' => 'Pellentesque sit amet sem et purus pretium consectetuer.',
))->values(array(
'fid' => '10',
'uid' => '16',
'value' => '0',
))->values(array(
'fid' => '11',
'uid' => '16',
'value' => 'Faithful servant',
))->values(array(
'fid' => '12',
'uid' => '16',
'value' => "Van Halen\nDave M",
))->values(array(
'fid' => '13',
'uid' => '16',
'value' => 'http://example.com/monkeys',
))->values(array(
'fid' => '14',
'uid' => '16',
'value' => 'a:3:{s:5:"month";s:1:"9";s:3:"day";s:2:"23";s:4:"year";s:4:"1939";}',
))->values(array(
'fid' => '8',
'uid' => '17',
'value' => 'yellow',
))->values(array(
'fid' => '9',
'uid' => '2',
'value' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam nulla sapien, congue nec risus ut, adipiscing aliquet felis. Maecenas quis justo vel nulla varius euismod. Quisque metus metus, cursus sit amet sem non, bibendum vehicula elit. Cras dui nisl, eleifend at iaculis vitae, lacinia ut felis. Nullam aliquam ligula volutpat nulla consectetur accumsan. Maecenas tincidunt molestie diam, a accumsan enim fringilla sit amet. Morbi a tincidunt tellus. Donec imperdiet scelerisque porta. Sed quis sem bibendum eros congue sodales. Vivamus vel fermentum est, at rutrum orci. Nunc consectetur purus ut dolor pulvinar, ut volutpat felis congue. Cras tincidunt odio sed neque sollicitudin, vehicula tempor metus scelerisque.',
))->values(array(
'fid' => '9',
'uid' => '8',
'value' => 'Nunc condimentum ligula felis, eget lacinia purus accumsan at. Pellentesque eu lobortis felis. Duis at accumsan nisl, vel pulvinar risus. Nullam venenatis, tellus non eleifend hendrerit, augue nulla rhoncus leo, eget convallis enim sem ut velit. Mauris tincidunt enim ut eros volutpat dapibus. Curabitur augue libero, imperdiet eget orci sed, malesuada dapibus tellus. Nam lacus sapien, convallis vitae quam vel, bibendum commodo odio.',
))->values(array(
'fid' => '9',
'uid' => '15',
'value' => 'Donec a diam volutpat augue fringilla fringilla. Mauris ultricies turpis ut lacus tempus, vitae pharetra lacus mattis. Nulla semper dui euismod sem bibendum, in eleifend nisi malesuada. Vivamus orci mauris, volutpat vitae enim ac, aliquam tempus lectus.',
))->values(array(
'fid' => '9',
'uid' => '16',
'value' => 'Pellentesque sit amet sem et purus pretium consectetuer.',
))->values(array(
'fid' => '9',
'uid' => '17',
'value' => 'The quick brown fox jumped over the lazy dog.',
))->values(array(
'fid' => '10',
'uid' => '2',
'value' => '1',
))->values(array(
'fid' => '10',
'uid' => '8',
'value' => '0',
))->values(array(
'fid' => '10',
'uid' => '15',
'value' => '1',
))->values(array(
'fid' => '10',
'uid' => '16',
'value' => '0',
))->values(array(
'fid' => '10',
'uid' => '17',
'value' => '0',
))->values(array(
'fid' => '11',
'uid' => '2',
'value' => 'Back\slash',
))->values(array(
'fid' => '11',
'uid' => '8',
'value' => 'Forward/slash',
))->values(array(
'fid' => '11',
'uid' => '15',
'value' => 'Dot.in.the.middle',
))->values(array(
'fid' => '11',
'uid' => '16',
'value' => 'Faithful servant',
))->values(array(
'fid' => '11',
'uid' => '17',
'value' => 'Anonymous donor',
))->values(array(
'fid' => '12',
'uid' => '2',
'value' => "AC/DC\n,,Eagles\r\nElton John,Lemonheads\r\n\r\nRolling Stones\rQueen\nThe White Stripes",
))->values(array(
'fid' => '12',
'uid' => '8',
'value' => "Deep Purple\nWho\nThe Beatles",
))->values(array(
'fid' => '12',
'uid' => '15',
'value' => "ABBA\nBoney M",
))->values(array(
'fid' => '12',
'uid' => '16',
'value' => "Van Halen\nDave M",
))->values(array(
'fid' => '12',
'uid' => '17',
'value' => "Toto\nJohn Denver",
))->values(array(
'fid' => '13',
'uid' => '2',
'value' => 'http://example.com/blog',
))->values(array(
'fid' => '13',
'uid' => '8',
'value' => 'http://blog.example.com',
))->values(array(
'fid' => '13',
'uid' => '15',
'value' => 'http://example.com/journal',
))->values(array(
'fid' => '13',
'uid' => '16',
'value' => 'http://example.com/monkeys',
))->values(array(
'fid' => '13',
'uid' => '17',
'value' => 'http://example.com/penguins',
))->values(array(
'fid' => '14',
'uid' => '2',
'value' => 'a:3:{s:5:"month";s:1:"6";s:3:"day";s:1:"2";s:4:"year";s:4:"1974";}',
))->values(array(
'fid' => '14',
'uid' => '8',
'value' => 'a:3:{s:5:"month";s:1:"9";s:3:"day";s:1:"9";s:4:"year";s:4:"1980";}',
))->values(array(
'fid' => '14',
'uid' => '15',
'value' => 'a:3:{s:5:"month";s:2:"11";s:3:"day";s:2:"25";s:4:"year";s:4:"1982";}',
))->values(array(
'fid' => '14',
'uid' => '16',
'value' => 'a:3:{s:5:"month";s:1:"9";s:3:"day";s:2:"23";s:4:"year";s:4:"1939";}',
))->values(array(
'fid' => '14',
'uid' => '17',

View File

@ -52,12 +52,12 @@ class TermHierarchy extends DrupalDumpBase {
))->values(array(
'tid' => '2',
'parent' => '0',
))->values(array(
'tid' => '3',
'parent' => '2',
))->values(array(
'tid' => '4',
'parent' => '0',
))->values(array(
'tid' => '3',
'parent' => '2',
))->values(array(
'tid' => '5',
'parent' => '4',

View File

@ -58,14 +58,6 @@ class TermNode extends DrupalDumpBase {
'nid' => '1',
'vid' => '1',
'tid' => '1',
))->values(array(
'nid' => '1',
'vid' => '2',
'tid' => '4',
))->values(array(
'nid' => '1',
'vid' => '2',
'tid' => '5',
))->values(array(
'nid' => '2',
'vid' => '3',
@ -74,6 +66,14 @@ class TermNode extends DrupalDumpBase {
'nid' => '2',
'vid' => '3',
'tid' => '3',
))->values(array(
'nid' => '1',
'vid' => '2',
'tid' => '4',
))->values(array(
'nid' => '1',
'vid' => '2',
'tid' => '5',
))->execute();
}

View File

@ -90,13 +90,6 @@ class Upload extends DrupalDumpBase {
'description' => 'file 1-2-2',
'list' => '1',
'weight' => '4',
))->values(array(
'fid' => '3',
'nid' => '1',
'vid' => '2',
'description' => 'file 1-2-3',
'list' => '0',
'weight' => '3',
))->values(array(
'fid' => '2',
'nid' => '2',
@ -104,6 +97,13 @@ class Upload extends DrupalDumpBase {
'description' => 'file 2-3-2',
'list' => '1',
'weight' => '2',
))->values(array(
'fid' => '3',
'nid' => '1',
'vid' => '2',
'description' => 'file 1-2-3',
'list' => '0',
'weight' => '3',
))->values(array(
'fid' => '3',
'nid' => '2',

View File

@ -49,30 +49,30 @@ class UsersRoles extends DrupalDumpBase {
->values(array(
'uid' => '2',
'rid' => '3',
))->values(array(
'uid' => '8',
'rid' => '4',
))->values(array(
'uid' => '8',
'rid' => '5',
))->values(array(
'uid' => '15',
'rid' => '3',
))->values(array(
'uid' => '15',
'rid' => '4',
))->values(array(
'uid' => '15',
'rid' => '5',
))->values(array(
'uid' => '16',
'rid' => '3',
))->values(array(
'uid' => '16',
'rid' => '5',
'uid' => '8',
'rid' => '4',
))->values(array(
'uid' => '15',
'rid' => '4',
))->values(array(
'uid' => '17',
'rid' => '4',
))->values(array(
'uid' => '8',
'rid' => '5',
))->values(array(
'uid' => '15',
'rid' => '5',
))->values(array(
'uid' => '16',
'rid' => '5',
))->execute();
}

View File

@ -78,8 +78,22 @@ foreach ($tables as $table) {
// Generate the class name.
$class = Inflector::classify($table);
// Order by primary keys
$order = '';
$query = "SELECT `COLUMN_NAME` FROM `information_schema`.`COLUMNS`
WHERE (`TABLE_SCHEMA` = 'd6_migrate') AND (`TABLE_NAME` = '{$table}') AND (`COLUMN_KEY` = 'PRI')
ORDER BY COLUMN_NAME";
$results = $connection->query($query);
while(($row = $results->fetchAssoc()) !== FALSE) {
$order .= '{' . $row['COLUMN_NAME'] . '}, ';
}
if (!(empty($order))) {
$order = rtrim ($order, ", ");
$order = ' ORDER BY ' . $order;
}
// Generate the field values.
$query = $connection->query(_db_get_query($table));
$query = $connection->query(_db_get_query($table) . $order);
$values = '';
while(($row = $query->fetchAssoc()) !== FALSE) {
$values .= '->values(' . Variable::export($row, ' ') . ')';