amateescu / revision_tree

Sandbox for Drupal's revision tree and related work
GNU General Public License v2.0
0 stars 0 forks source link

Revision negotiation #2

Closed pmelab closed 5 years ago

plach79 commented 5 years ago

While running tests and I got the following error (on MySql 5.5):

Drupal\Core\Database\DatabaseExceptionWrapper : SQLSTATE[42000]: Syntax error or access violation: 1055 'drupal_8x_dev.base_table.revision_id' isn't in GROUP BY: SELECT base_table.revision_id AS revision_id, base_table.id AS id, 0 + IF(entity_test_rev_revision.a = :a__value, 1, 0) * :a__weight AS revision_context_match, CONCAT('[', GROUP_CONCAT(CONCAT('["', REPLACE(base_table.revision_id, '"', '\"'), '",', 0 + IF(entity_test_rev_revision.a = :a__value, 1, 0) * :a__weight, ']')), ']') AS revision_id
FROM
{entity_test_rev_revision} base_table
LEFT JOIN {entity_test_rev_revision} entity_test_rev_revision ON entity_test_rev_revision.revision_id = base_table.revision_id
INNER JOIN {entity_test_rev} entity_test_rev ON entity_test_rev.id = base_table.id
WHERE entity_test_rev.id = :db_condition_placeholder_0
GROUP BY base_table.id
ORDER BY revision_context_match DESC; Array
(
    [:db_condition_placeholder_0] => 1
    [:a__value] => x
    [:a__weight] => 1
)

See https://dev.mysql.com/doc/refman/5.5/en/sql-mode.html#sqlmode_only_full_group_by. The ONLY_FULL_GROUP_BY is enabled by default by the MySql driver.

amateescu commented 5 years ago

Thanks @pmelab for this effort :)