Hi,
I’ve been discussing this on gitter in some detai todayl but to summarise:
If I create a new theme based on Responsive or Bare, it works fine. On 5.4.3 and 5.4.4.
But after I install Themeware Modern theme from the store - even if I don’t activate it - if I try to create a new theme based on Responsive it creates an error.
I noticed it at first creating a theme based on Modern but then worked backwards - using several different servers, setup in different ways - and the problem happens each time.
If I made a copy of Themeware Modern, it then took 30 seconds to load the Theme Manager (or to get to the customisation).
So far the team behind the theme haven’t been able to help except offer to look at the server setup for a fee, but this is happening across different servers so I don’t think it’s a server issue.
The error is like this:
Oops! An error has occurred! The following notes should help you. An exception occurred while executing ‘INSERT INTO s_core_templates_config_elements (type, name, position, default_value, selection, field_label, support_text, allow_blank, less_compatible, attributes, container_id, template_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)’ with params [“theme-media-selection”, “mobileLogo”, 0, “s:47:“frontend/_public/src/img/logos/logo–mobile.png”;”, “N;”, “__smartphone__”, null, 1, 0, “a:1:{s:14:“lessCompatible”;b:0;}”, 727, 39]: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‘39-mobileLogo’ for key ‘template_id_name’ in vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php on line 131 Stack trace: #0 vendor/doctrine/dbal/lib/Doctrine/DBAL/Statement.php(177): Doctrine\DBAL\DBALException::driverExceptionDuringQuery(Object(Doctrine\DBAL\Driver\PDOMySql\Driver), Object(PDOException), ‘INSERT INTO s_c…’, Array) #1 engine/Library/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php(281): Doctrine\DBAL\Statement->execute() #2 vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php(1014): Doctrine\ORM\Persisters\Entity\BasicEntityPersister->executeInserts() #3 vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php(378): Doctrine\ORM\UnitOfWork->executeInserts(Object(Doctrine\ORM\Mapping\ClassMetadata)) #4 vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php(356): Doctrine\ORM\UnitOfWork->commit(NULL) #5 engine/Shopware/Components/Form/Persister/Theme.php(61): Doctrine\ORM\EntityManager->flush() #6 engine/Shopware/Components/Theme/Configurator.php(133): Shopware\Components\Form\Persister\Theme->save(Object(Shopware\Components\Form\Container\TabContainer), Object(Shopware\Models\Shop\Template)) #7 engine/Shopware/Components/Theme/Installer.php(169): Shopware\Components\Theme\Configurator->synchronize(Object(Shopware\Themes\MyResC\Theme)) #8 engine/Shopware/Components/Theme/Installer.php(130): Shopware\Components\Theme\Installer->synchronizeThemes() #9 engine/Shopware/Controllers/Backend/Theme.php(195): Shopware\Components\Theme\Installer->synchronize() #10 engine/Library/Enlight/Controller/Action.php(193): Shopware_Controllers_Backend_Theme->listAction() #11 engine/Library/Enlight/Controller/Dispatcher/Default.php(549): Enlight_Controller_Action->dispatch(‘listAction’) #12 engine/Library/Enlight/Controller/Front.php(222): Enlight_Controller_Dispatcher_Default->dispatch(Object(Enlight_Controller_Request_RequestHttp), Object(Enlight_Controller_Response_ResponseHttp)) #13 engine/Shopware/Kernel.php(215): Enlight_Controller_Front->dispatch() #14 vendor/symfony/http-kernel/HttpCache/HttpCache.php(486): Shopware\Kernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #15 engine/Shopware/Components/HttpCache/AppCache.php(268): Symfony\Component\HttpKernel\HttpCache\HttpCache->forward(Object(Symfony\Component\HttpFoundation\Request), true, NULL) #16 vendor/symfony/http-kernel/HttpCache/HttpCache.php(253): Shopware\Components\HttpCache\AppCache->forward(Object(Symfony\Component\HttpFoundation\Request), true) #17 engine/Shopware/Components/HttpCache/AppCache.php(105): Symfony\Component\HttpKernel\HttpCache\HttpCache->pass(Object(Symfony\Component\HttpFoundation\Request), true) #18 shopware.php(122): Shopware\Components\HttpCache\AppCache->handle(Object(Symfony\Component\HttpFoundation\Request)) #19 {main}
That is from creating a theme based on Responsive, under 5.4.4.
The template_id it complains about is always the theme that is being created. The new theme is created, but after this error, if I go into theme manager, not only does it take 30 seconds (or more) to load, and if PHP’s memory limit is less than 1024M, then it runs out of memory trying to allocate memory for doctrine.
Has anyone else had this? Is it a Shopware issue? An issue with the Modern theme? Or am I doing something stupid (across multiple servers and different setups)?
Thanks
John