Uploaded image for project: 'eZ Publish / Platform'
  1. eZ Publish / Platform
  2. EZP-22359

Legacy storage engine doesn't work with Doctrine's MySQLi driver

    XMLWordPrintable

Details

    • Ventoux Sprint 6

    Description

      Legacy storage engine only seems to work with PDO.
      That's too bad since MySQLi is known to have better performance and better integration with MySQL / MariaDB.

      Here's the exception (on a simple ContentService::load()):

      MysqliException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':placeholder1 AND `ezcontentobject_version`.`version` = :placeholder2 )' at line 1
      

      It doesn't seem to like the placeholders.

      Whole built SQL query:

      'SELECT `ezcontentobject`.`id` `ezcontentobject_id`, `ezcontentobject`.`contentclass_id` `ezcontentobject_contentclass_id`, `ezcontentobject`.`section_id` `ezcontentobject_section_id`, `ezcontentobject`.`owner_id` `ezcontentobject_owner_id`, `ezcontentobject`.`remote_id` `ezcontentobject_remote_id`, `ezcontentobject`.`current_version` `ezcontentobject_current_version`, `ezcontentobject`.`initial_language_id` `ezcontentobject_initial_language_id`, `ezcontentobject`.`modified` `ezcontentobject_modified`, `ezcontentobject`.`published` `ezcontentobject_published`, `ezcontentobject`.`status` `ezcontentobject_status`, `ezcontentobject`.`name` `ezcontentobject_name`, `ezcontentobject`.`language_mask` `ezcontentobject_language_mask`, `ezcontentobject_version`.`id` `ezcontentobject_version_id`, `ezcontentobject_version`.`version` `ezcontentobject_version_version`, `ezcontentobject_version`.`modified` `ezcontentobject_version_modified`, `ezcontentobject_version`.`creator_id` `ezcontentobject_version_creator_id`, `ezcontentobject_version`.`created` `ezcontentobject_version_created`, `ezcontentobject_version`.`status` `ezcontentobject_version_status`, `ezcontentobject_version`.`contentobject_id` `ezcontentobject_version_contentobject_id`, `ezcontentobject_version`.`language_mask` `ezcontentobject_version_language_mask`, `ezcontentobject_version`.`initial_language_id` `ezcontentobject_version_initial_language_id`, `ezcontentobject_attribute`.`id` `ezcontentobject_attribute_id`, `ezcontentobject_attribute`.`contentclassattribute_id` `ezcontentobject_attribute_contentclassattribute_id`, `ezcontentobject_attribute`.`data_type_string` `ezcontentobject_attribute_data_type_string`, `ezcontentobject_attribute`.`language_code` `ezcontentobject_attribute_language_code`, `ezcontentobject_attribute`.`language_id` `ezcontentobject_attribute_language_id`, `ezcontentobject_attribute`.`version` `ezcontentobject_attribute_version`, `ezcontentobject_attribute`.`data_float` `ezcontentobject_attribute_data_float`, `ezcontentobject_attribute`.`data_int` `ezcontentobject_attribute_data_int`, `ezcontentobject_attribute`.`data_text` `ezcontentobject_attribute_data_text`, `ezcontentobject_attribute`.`sort_key_int` `ezcontentobject_attribute_sort_key_int`, `ezcontentobject_attribute`.`sort_key_string` `ezcontentobject_attribute_sort_key_string`, `ezcontentobject_name`.`name` `ezcontentobject_name_name`, `ezcontentobject_name`.`content_translation` `ezcontentobject_name_content_translation`, `ezcontentobject_tree`.`main_node_id` `ezcontentobject_tree_main_node_id` FROM `ezcontentobject` LEFT JOIN `ezcontentobject_version` ON `ezcontentobject_version`.`contentobject_id` = `ezcontentobject`.`id` LEFT JOIN `ezcontentobject_attribute` ON ( `ezcontentobject_attribute`.`contentobject_id` = `ezcontentobject_version`.`contentobject_id` AND `ezcontentobject_attribute`.`version` = `ezcontentobject_version`.`version` ) LEFT JOIN `ezcontentobject_tree` ON ( `ezcontentobject_tree`.`contentobject_id` = `ezcontentobject_version`.`contentobject_id` AND `ezcontentobject_tree`.`contentobject_version` = `ezcontentobject_version`.`version` ) LEFT JOIN `ezcontentobject_name` ON ( `ezcontentobject_name`.`contentobject_id` = `ezcontentobject_version`.`contentobject_id` AND `ezcontentobject_name`.`content_version` = `ezcontentobject_version`.`version` ) WHERE `ezcontentobject_attribute`.`language_code` IN ( 'fre-FR', 'eng-GB' ) AND ( `ezcontentobject`.`id` = :placeholder1 AND `ezcontentobject_version`.`version` = :placeholder2 )'
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            jerome.vieilledent-obsolete@ez.no Jérôme Vieilledent (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 1 day
                1d
                Remaining:
                Time Spent - 5 hours Remaining Estimate - 3 hours
                3h
                Logged:
                Time Spent - 5 hours Remaining Estimate - 3 hours
                5h