{"action":"created","issue":{"url":"https://api.github.com/repos/joomla/joomla-cms/issues/9423","repository_url":"https://api.github.com/repos/joomla/joomla-cms","labels_url":"https://api.github.com/repos/joomla/joomla-cms/issues/9423/labels{/name}","comments_url":"https://api.github.com/repos/joomla/joomla-cms/issues/9423/comments","events_url":"https://api.github.com/repos/joomla/joomla-cms/issues/9423/events","html_url":"https://github.com/joomla/joomla-cms/issues/9423","id":140772033,"number":9423,"title":"B/C break for all third party extensions due to MySQL collation change!!!","user":{"login":"joomlajoe","id":17835460,"avatar_url":"https://avatars.githubusercontent.com/u/17835460?v=3","gravatar_id":"","url":"https://api.github.com/users/joomlajoe","html_url":"https://github.com/joomlajoe","followers_url":"https://api.github.com/users/joomlajoe/followers","following_url":"https://api.github.com/users/joomlajoe/following{/other_user}","gists_url":"https://api.github.com/users/joomlajoe/gists{/gist_id}","starred_url":"https://api.github.com/users/joomlajoe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joomlajoe/subscriptions","organizations_url":"https://api.github.com/users/joomlajoe/orgs","repos_url":"https://api.github.com/users/joomlajoe/repos","events_url":"https://api.github.com/users/joomlajoe/events{/privacy}","received_events_url":"https://api.github.com/users/joomlajoe/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2016-03-14T19:16:53Z","updated_at":"2016-03-14T23:10:11Z","closed_at":null,"body":"#### Steps to reproduce the issue\r\nAll third party extensions using MySQL JOIN with core tables such as #__sessions, #__menu, etc on primary key fields won't work anymore because the collation change from utf8_general_ci to utf8_unicode_ci\r\n\r\nUse a query like this one:\r\n\r\nSELECT * FROM #__mycustomtable AS s LEFT JOIN #__menu AS m ON s.menutype= m.menutype\r\n\r\nSELECT * FROM #__mycustomtable AS s LEFT JOIN #__session AS m ON s.session_id= m.session_id\r\n\r\n#### Expected result\r\nInstead of having a successful query based on the JOINED 'menutype' field it will fail because the table used by the third party extension '#__mycustomtable' is still based on utf8_general_ci\r\n\r\n\r\n#### Actual result\r\nIllegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operation '=' SQL=SELECT ....\r\n\r\n\r\n#### System information (as much as possible)\r\n\r\n\r\n\r\n#### Additional comments\r\nDevelopers should be at least warned that all their extensions based on such queries will be broken and have time to update all tables of their extensions accordingly. At this point March 16 as the release date of Joomla 3.5 is not acceptable, you are going to break a lot of third party extensions in a subtle way. 3 of my extensions were broke because of this issue.\r\n@spignataro @dunglas @beat "},"comment":{"url":"https://api.github.com/repos/joomla/joomla-cms/issues/comments/196558853","html_url":"https://github.com/joomla/joomla-cms/issues/9423#issuecomment-196558853","issue_url":"https://api.github.com/repos/joomla/joomla-cms/issues/9423","id":196558853,"user":{"login":"mbabker","id":368545,"avatar_url":"https://avatars.githubusercontent.com/u/368545?v=3","gravatar_id":"","url":"https://api.github.com/users/mbabker","html_url":"https://github.com/mbabker","followers_url":"https://api.github.com/users/mbabker/followers","following_url":"https://api.github.com/users/mbabker/following{/other_user}","gists_url":"https://api.github.com/users/mbabker/gists{/gist_id}","starred_url":"https://api.github.com/users/mbabker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbabker/subscriptions","organizations_url":"https://api.github.com/users/mbabker/orgs","repos_url":"https://api.github.com/users/mbabker/repos","events_url":"https://api.github.com/users/mbabker/events{/privacy}","received_events_url":"https://api.github.com/users/mbabker/received_events","type":"User","site_admin":false},"created_at":"2016-03-14T23:10:11Z","updated_at":"2016-03-14T23:10:11Z","body":"The way I see it the options are to basically press on with things as they are or roll back every database layer change made for 3.5.  Because frankly something in that conversion is going to screw someone.  Be it the fact that the architecture changes have caused the Extension Manager to not be an upgrade path any longer, this collation change (which frankly I've been getting reports of on my own extensions for years, mixed collations in the database is nothing new and nothing that can be addressed in core unless the tables never change or core takes on the responsibility of managing third party schemas, that'll go over well with developers), or causing someone to no longer be able to move from a MySQL 5.5.3+ to 5.5.2- environment.\r\n\r\nJust call it 4.0 and be done with it, then at least users expect everything's gonna break hard.  `</sarcasm>`"}}