tradefurniturecompany / site Goto Github PK
View Code? Open in Web Editor NEWtradefurniturecompany.co.uk (Magento 2)
Home Page: https://upwork.com/fl/mage2pro
tradefurniturecompany.co.uk (Magento 2)
Home Page: https://upwork.com/fl/mage2pro
It could be related to #32
************************************
Caller: PDO::beginTransaction
Callee: Magento\Framework\App\ErrorHandler::handler
*****************1******************
File: vendor/magento/zendframework1/library/Zend/Db/Adapter/Pdo/Abstract.php
Line: 305
Caller: Zend_Db_Adapter_Pdo_Abstract::_beginTransaction
Callee: PDO::beginTransaction
Context:
protected function _beginTransaction()
{
$this->_connect();
$this->_connection->beginTransaction();
}
*****************2******************
File: vendor/magento/zendframework1/library/Zend/Db/Adapter/Abstract.php
Line: 496
Caller: Zend_Db_Adapter_Abstract::beginTransaction
Callee: Zend_Db_Adapter_Pdo_Abstract::_beginTransaction
Context:
public function beginTransaction()
{
$this->_connect();
$q = $this->_profiler->queryStart('begin', Zend_Db_Profiler::TRANSACTION);
$this->_beginTransaction();
$this->_profiler->queryEnd($q);
return $this;
}
*****************3******************
File: vendor/magento/framework/DB/Adapter/Pdo/Mysql.php
Line: 282
Caller: Magento\Framework\DB\Adapter\Pdo\Mysql::beginTransaction
Callee: Zend_Db_Adapter_Abstract::beginTransaction
Context:
public function beginTransaction()
{
if ($this->_isRolledBack) {
throw new \Exception(AdapterInterface::ERROR_ROLLBACK_INCOMPLETE_MESSAGE);
}
if ($this->_transactionLevel === 0) {
$this->logger->startTimer();
parent::beginTransaction();
$this->logger->logStats(LoggerInterface::TYPE_TRANSACTION, 'BEGIN');
}
++$this->_transactionLevel;
return $this;
}
*****************4******************
File: vendor/magento/framework/Model/ResourceModel/AbstractResource.php
Line: 66
Caller: Magento\Framework\Model\ResourceModel\AbstractResource::beginTransaction
Callee: Magento\Framework\DB\Adapter\Pdo\Mysql::beginTransaction
Context:
public function beginTransaction()
{
$this->getConnection()->beginTransaction();
return $this;
}
*****************5******************
File: vendor/magento/framework/Model/ResourceModel/Db/AbstractDb.php
Line: 398
Caller: Magento\Framework\Model\ResourceModel\Db\AbstractDb::save
Callee: Magento\Framework\Model\ResourceModel\AbstractResource::beginTransaction
Context:
public function save(\Magento\Framework\Model\AbstractModel $object)
{
if ($object->isDeleted()) {
return $this->delete($object);
}
$this->beginTransaction();
try {
if (!$this->isModified($object)) {
$this->processNotModifiedSave($object);
$this->commit();
$object->setHasDataChanges(false);
return $this;
}
*****************6******************
File: vendor/magento/framework/Model/AbstractModel.php
Line: 655
Caller: Magento\Framework\Model\AbstractModel::save
Callee: Magento\Framework\Model\ResourceModel\Db\AbstractDb::save
Context:
public function save()
{
$this->_getResource()->save($this);
return $this;
}
*****************7******************
File: vendor/magento/module-cron/Observer/ProcessCronQueueObserver.php
Line: 745
Caller: Magento\Cron\Observer\ProcessCronQueueObserver::processPendingJobs
Callee: Magento\Framework\Model\AbstractModel::save
Context:
}
} catch (\Exception $e) {
$this->processError($schedule, $e);
}
if ($schedule->getStatus() === Schedule::STATUS_SUCCESS) {
$procesedJobs[$schedule->getJobCode()] = true;
}
$schedule->save();
}
}
*****************8******************
File: vendor/magento/module-cron/Observer/ProcessCronQueueObserver.php
Line: 243
Caller: Magento\Cron\Observer\ProcessCronQueueObserver::Magento\Cron\Observer\{closure}
Callee: Magento\Cron\Observer\ProcessCronQueueObserver::processPendingJobs
Context:
}
$this->lockGroup(
$groupId,
function ($groupId) use ($currentTime, $jobsRoot) {
$this->cleanupJobs($groupId, $currentTime);
$this->generateSchedules($groupId);
$this->processPendingJobs($groupId, $jobsRoot, $currentTime);
}
);
}
}
/**
* Lock group
*
*****************9******************
File: vendor/magento/module-cron/Observer/ProcessCronQueueObserver.php
Line: 272
Caller: Magento\Cron\Observer\ProcessCronQueueObserver::lockGroup
Callee: Magento\Cron\Observer\ProcessCronQueueObserver::Magento\Cron\Observer\{closure}
Context:
"Could not acquire lock for cron group: %s, skipping run",
$groupId
)
);
return;
}
try {
$callback($groupId);
} finally {
$this->lockManager->unlock(self::LOCK_PREFIX . $groupId);
}
}
*****************10*****************
File: vendor/magento/module-cron/Observer/ProcessCronQueueObserver.php
Line: 244
Caller: Magento\Cron\Observer\ProcessCronQueueObserver::execute
Callee: Magento\Cron\Observer\ProcessCronQueueObserver::lockGroup
Context:
$this->lockGroup(
$groupId,
function ($groupId) use ($currentTime, $jobsRoot) {
$this->cleanupJobs($groupId, $currentTime);
$this->generateSchedules($groupId);
$this->processPendingJobs($groupId, $jobsRoot, $currentTime);
}
);
}
}
*****************11*****************
File: vendor/magento/framework/Event/Invoker/InvokerDefault.php
Line: 88
Caller: Magento\Framework\Event\Invoker\InvokerDefault::_callObserverMethod
Callee: Magento\Cron\Observer\ProcessCronQueueObserver::execute
Context:
protected function _callObserverMethod($object, $observer)
{
if ($object instanceof \Magento\Framework\Event\ObserverInterface) {
$object->execute($observer);
} elseif ($this->_appState->getMode() == State::MODE_DEVELOPER) {
throw new \LogicException(
sprintf(
'Observer "%s" must implement interface "%s"',
get_class($object),
\Magento\Framework\Event\ObserverInterface::class
)
);
*****************12*****************
File: vendor/magento/framework/Event/Invoker/InvokerDefault.php
Line: 74
Caller: Magento\Framework\Event\Invoker\InvokerDefault::dispatch
Callee: Magento\Framework\Event\Invoker\InvokerDefault::_callObserverMethod
Context:
}
if (isset($configuration['shared']) && false === $configuration['shared']) {
$object = $this->_observerFactory->create($configuration['instance']);
} else {
$object = $this->_observerFactory->get($configuration['instance']);
}
$this->_callObserverMethod($object, $observer);
}
*****************13*****************
File: vendor/magento/framework/Event/Manager.php
Line: 66
Caller: Magento\Framework\Event\Manager::dispatch
Callee: Magento\Framework\Event\Invoker\InvokerDefault::dispatch
Context:
$event = new \Magento\Framework\Event($data);
$event->setName($eventName);
$wrapper = new Observer();
$wrapper->setData(array_merge(['event' => $event], $data));
\Magento\Framework\Profiler::start('OBSERVER:' . $observerConfig['name']);
$this->_invoker->dispatch($observerConfig, $wrapper);
\Magento\Framework\Profiler::stop('OBSERVER:' . $observerConfig['name']);
}
\Magento\Framework\Profiler::stop('EVENT:' . $eventName);
}
*****************14*****************
File: generated/code/Magento/Framework/Event/Manager/Proxy.php
Line: 95
Caller: Magento\Framework\Event\Manager\Proxy::dispatch
Callee: Magento\Framework\Event\Manager::dispatch
Context:
public function dispatch($eventName, array $data = [])
{
return $this->_getSubject()->dispatch($eventName, $data);
}
*****************15*****************
File: vendor/magento/framework/App/Cron.php
Line: 86
Caller: Magento\Framework\App\Cron::launch
Callee: Magento\Framework\Event\Manager\Proxy::dispatch
Context:
$configLoader = $this->objectManager->get(\Magento\Framework\ObjectManager\ConfigLoaderInterface::class);
$this->objectManager->configure($configLoader->load(Area::AREA_CRONTAB));
$this->areaList->getArea(Area::AREA_CRONTAB)->load(Area::PART_TRANSLATE);
/** @var \Magento\Framework\Event\ManagerInterface $eventManager */
$eventManager = $this->objectManager->get(\Magento\Framework\Event\ManagerInterface::class);
$eventManager->dispatch('default');
$this->_response->setCode(0);
return $this->_response;
}
*****************16*****************
File: vendor/magento/module-cron/Console/Command/CronCommand.php
Line: 117
Caller: Magento\Cron\Console\Command\CronCommand::execute
Callee: Magento\Framework\App\Cron::launch
Context:
$bootstrapOptionValue = $bootstrapOptionValues[ProcessCronQueueObserver::STANDALONE_PROCESS_STARTED];
if ($bootstrapOptionValue) {
$params[ProcessCronQueueObserver::STANDALONE_PROCESS_STARTED] = $bootstrapOptionValue;
}
}
/** @var \Magento\Framework\App\Cron $cronObserver */
$cronObserver = $objectManager->create(\Magento\Framework\App\Cron::class, ['parameters' => $params]);
$cronObserver->launch();
$output->writeln('<info>' . 'Ran jobs by schedule.' . '</info>');
}
*****************17*****************
File: vendor/symfony/console/Command/Command.php
Line: 255
Caller: Symfony\Component\Console\Command\Command::run
Callee: Magento\Cron\Console\Command\CronCommand::execute
Context:
}
$input->validate();
if ($this->code) {
$statusCode = ($this->code)($input, $output);
} else {
$statusCode = $this->execute($input, $output);
}
return is_numeric($statusCode) ? (int) $statusCode : 0;
}
*****************18*****************
File: vendor/magento/framework/Interception/Interceptor.php
Line: 58
Caller: Magento\Cron\Console\Command\CronCommand::___callParent
Callee: Symfony\Component\Console\Command\Command::run
Context:
public function ___callParent($method, array $arguments)
{
return parent::$method(...array_values($arguments));
}
*****************19*****************
File: vendor/magento/framework/Interception/Interceptor.php
Line: 138
Caller: Magento\Cron\Console\Command\CronCommand::Magento\Framework\Interception\{closure}
Callee: Magento\Cron\Console\Command\CronCommand::___callParent
Context:
$code = $currentPluginInfo[DefinitionInterface::LISTENER_AROUND];
$pluginInfo = $pluginList->getNext($type, $method, $code);
$pluginInstance = $pluginList->getPlugin($type, $code);
$pluginMethod = 'around' . $capMethod;
$result = $pluginInstance->$pluginMethod($subject, $next, ...array_values($arguments));
} else {
// Call original method
$result = $subject->___callParent($method, $arguments);
}
if (isset($currentPluginInfo[DefinitionInterface::LISTENER_AFTER])) {
// Call 'after' listeners
foreach ($currentPluginInfo[DefinitionInterface::LISTENER_AFTER] as $code) {
$pluginInstance = $pluginList->getPlugin($type, $code);
$pluginMethod = 'after' . $capMethod;
$result = $pluginInstance->$pluginMethod($subject, $result, ...array_values($arguments));
*****************20*****************
File: vendor/mage2pro/core/Cron/Plugin/Console/Command/CronCommand.php
Line: 24
Caller: Df\Cron\Plugin\Console\Command\CronCommand::aroundRun
Callee: Magento\Cron\Console\Command\CronCommand::Magento\Framework\Interception\{closure}
Context:
function aroundRun(Sb $sb, \Closure $f, II $i, IO $o) {
try {return $f($i, $o);}
catch (\Exception $e) {
df_log_e($e, $this);
throw $e;
}
}
*****************21*****************
File: vendor/magento/framework/Interception/Interceptor.php
Line: 135
Caller: Magento\Cron\Console\Command\CronCommand::Magento\Framework\Interception\{closure}
Callee: Df\Cron\Plugin\Console\Command\CronCommand::aroundRun
Context:
if (isset($currentPluginInfo[DefinitionInterface::LISTENER_AROUND])) {
// Call 'around' listener
$code = $currentPluginInfo[DefinitionInterface::LISTENER_AROUND];
$pluginInfo = $pluginList->getNext($type, $method, $code);
$pluginInstance = $pluginList->getPlugin($type, $code);
$pluginMethod = 'around' . $capMethod;
$result = $pluginInstance->$pluginMethod($subject, $next, ...array_values($arguments));
} else {
// Call original method
$result = $subject->___callParent($method, $arguments);
}
if (isset($currentPluginInfo[DefinitionInterface::LISTENER_AFTER])) {
// Call 'after' listeners
foreach ($currentPluginInfo[DefinitionInterface::LISTENER_AFTER] as $code) {
*****************22*****************
File: vendor/magento/framework/Interception/Interceptor.php
Line: 153
Caller: Magento\Cron\Console\Command\CronCommand::___callPlugins
Callee: Magento\Cron\Console\Command\CronCommand::Magento\Framework\Interception\{closure}
Context:
$result = $pluginInstance->$pluginMethod($subject, $result, ...array_values($arguments));
}
}
return $result;
};
$result = $next(...array_values($arguments));
$next = null;
return $result;
}
*****************23*****************
File: generated/code/Magento/Cron/Console/Command/CronCommand/Interceptor.php
Line: 26
Caller: Magento\Cron\Console\Command\CronCommand::run
Callee: Magento\Cron\Console\Command\CronCommand::___callPlugins
Context:
public function run(\Symfony\Component\Console\Input\InputInterface $input, \Symfony\Component\Console\Output\OutputInterface $output)
{
$pluginInfo = $this->pluginList->getNext($this->subjectType, 'run');
if (!$pluginInfo) {
return parent::run($input, $output);
} else {
return $this->___callPlugins('run', func_get_args(), $pluginInfo);
}
}
*****************24*****************
File: vendor/symfony/console/Application.php
Line: 893
Caller: Symfony\Component\Console\Application::doRunCommand
Callee: Magento\Cron\Console\Command\CronCommand::run
Context:
foreach ($command->getHelperSet() as $helper) {
if ($helper instanceof InputAwareInterface) {
$helper->setInput($input);
}
}
if (null === $this->dispatcher) {
return $command->run($input, $output);
}
// bind before the console.command event, so the listeners have access to input options/arguments
try {
$command->mergeApplicationDefinition();
$input->bind($command->getDefinition());
} catch (ExceptionInterface $e) {
// ignore invalid options/arguments for now, to allow the event listeners to customize the InputDefinition
*****************25*****************
File: vendor/symfony/console/Application.php
Line: 262
Caller: Symfony\Component\Console\Application::doRun
Callee: Symfony\Component\Console\Application::doRunCommand
Context:
return 1;
}
$command = $this->find($alternative);
}
$this->runningCommand = $command;
$exitCode = $this->doRunCommand($command, $input, $output);
$this->runningCommand = null;
return $exitCode;
}
*****************26*****************
File: vendor/magento/framework/Console/Cli.php
Line: 105
Caller: Magento\Framework\Console\Cli::doRun
Callee: Symfony\Component\Console\Application::doRun
Context:
public function doRun(Console\Input\InputInterface $input, Console\Output\OutputInterface $output)
{
$exitCode = parent::doRun($input, $output);
if ($this->initException) {
throw $this->initException;
}
return $exitCode;
}
*****************27*****************
File: vendor/symfony/console/Application.php
Line: 145
Caller: Symfony\Component\Console\Application::run
Callee: Magento\Framework\Console\Cli::doRun
Context:
$phpHandler[0]->setExceptionHandler($debugHandler);
}
}
$this->configureIO($input, $output);
try {
$exitCode = $this->doRun($input, $output);
} catch (\Exception $e) {
if (!$this->catchExceptions) {
throw $e;
}
$renderException($e);
$exitCode = $e->getCode();
*****************28*****************
File: bin/magento
Line: 23
Callee: Symfony\Component\Console\Application::run
Context:
echo 'Autoload error: ' . $e->getMessage();
exit(1);
}
try {
$handler = new \Magento\Framework\App\ErrorHandler();
set_error_handler([$handler, 'handler']);
$application = new Magento\Framework\Console\Cli('Magento CLI');
$application->run();
} catch (\Exception $e) {
while ($e) {
echo $e->getMessage();
echo $e->getTraceAsString();
echo "\n\n";
$e = $e->getPrevious();
}
exit(Magento\Framework\Console\Cli::RETURN_FAILURE);
Related to #13
Can you have a look at an issue I have please with the 'shop by type' no longer working on our website, this is a section at the end of the site and is just going to the homepage and previously opened up to reveal categories.
Our IT team are listing some new products and are finding issues with the items they are listing not showing due to the reindex required issue, can you advise?
See example below for a new product they are listing;
Related to #45
E.g.:
No such entity with customerId = 46059
Related to #22 (comment)
Now I see in logs of the production website:
/var/www/vhosts/tradefurniturecompany.co.uk/htdocs/app/code/Apptrian/ImageOptimizer/bin/elf64/jpegtran -copy none -optimize -progressive -outfile /var/www/vhosts/staging.tradefurniturecompany.co.uk/htdocs/pub/media/catalog/category/P28&4A4DR-RS.jpg /var/www/vhosts/staging.tradefurniturecompany.co.uk/htdocs/pub/media/catalog/category/P28&4A4DR-RS.jpg
Related to #15
{"exception":"[object] (Elasticsearch\\Common\\Exceptions\\NoNodesAvailableException(code: 0): No alive nodes found in your cluster at vendor/elasticsearch/elasticsearch/src/Elasticsearch/ConnectionPool/StaticNoPingConnectionPool.php:53)"} []
E.g.:
[2020-02-08 08:04:13] MailChimpLogger.INFO: Resource Not Found for Api Call: https://us6.api.mailchimp.com/3.0/lists//members/28a84103f72e90d325173e526cc342d3 - Invalid path
E.g.:
[2020-02-08 06:55:25] main.DEBUG: cache_invalidate: {"method":"GET","url":"https://www.tradefurniturecompany.co.uk/catalog/product/view/id/387/s/jali-cd-step-chest-right/","invalidateInfo":{"identifier":"interception"}} []
E.g.:
sh: 6T2.jpg: command not found
Empty input file
sh: -c: line 0: syntax error near unexpected token `('
sh: -c: line 0: `/var/www/vhosts/tradefurniturecompany.co.uk/htdocs/app/code/Apptrian/ImageOptimizer/bin/elf64/jpegtran -copy none -optimize -progressive -outfile /var/www/vhosts/tradefurniturecompany.co.uk/htdocs/pub/media/catalog/product/m/e/meja-besar-1-(2).jpg /var/www/vhosts/tradefurniturecompany.co.uk/htdocs/pub/media/catalog/product/m/e/meja-besar-1-(2).jpg 2>&1'
Related to kingpalm-com/core#36
[2020-02-14 10:14:15] main.CRITICAL: URL key for specified store already exists. {"exception":"[object] (Magento\UrlRewrite\Model\Exception\UrlAlreadyExistsException(code: 0): URL key for specified store already exists. at vendor/magento/module-url-rewrite/Model/Storage/DbStorage.php:292, Magento\Framework\Exception\AlreadyExistsException(code: 0): URL key for specified store already exists. at vendor/magento/module-url-rewrite/Model/Storage/DbStorage.php:322, Magento\Framework\DB\Adapter\DuplicateException(code: 1062): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'light-retro-chic-sideboard-1' for key 'URL_REWRITE_REQUEST_PATH_STORE_ID', query was: INSERT INTO
url_rewrite
(redirect_type
,is_autogenerated
,metadata
,description
,entity_type
,entity_id
,request_path
,target_path
,store_id
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?) at vendor/magento/framework/DB/Adapter/Pdo/Mysql.php:589, Zend_Db_Statement_Exception(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'light-retro-chic-sideboard-1' for key 'URL_REWRITE_REQUEST_PATH_STORE_ID', query was: INSERT INTOurl_rewrite
(redirect_type
,is_autogenerated
,metadata
,description
,entity_type
,entity_id
,request_path
,target_path
,store_id
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?) at vendor/magento/framework/DB/Statement/Pdo/Mysql.php:110, PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'light-retro-chic-sideboard-1' for key 'URL_REWRITE_REQUEST_PATH_STORE_ID' at vendor/magento/framework/DB/Statement/Pdo/Mysql.php:91)"} []
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.