Why is the job failing in Beanstalkd queue - Laravel 4.2 - php

I have "randomly" some jobs failing in my beanstalked queue.
Two questions:
1/ By looking at the failed job table in the DB how can I interprate what is logged inside? The Data closure means "nothing" when reading it raw. Is there something to do to have more info?
2/ I went through the console logs of Laravel and this is what fails:
[2015-04-29 15:40:51] production.ERROR: exception 'ErrorException' with message 'Trying to get property of non-object' in /home/forge/api.hello.me/vendor/jeremeamia/SuperClosure/src/Jeremeamia/SuperClosure/SerializableClosure.php(99) : eval()'d code:6
Stack trace:...
However I have no clue what exactly is failing... the stacktrace doesn't help and just starts at
[internal function]: Jeremeamia\SuperClosure\SerializableClosure::{closure}(Object(Illuminate\Queue\Jobs\BeanstalkdJob))
#2 /home/forge/api.hello.me/vendor/jeremeamia/SuperClosure/src/Jeremeamia/SuperClosure/SerializableClosure.php(64): ReflectionFunction->invokeArgs(Array)
and finished a few lines later at
#15 /home/forge/api.hello.me/vendor/symfony/console/Symfony/Component/Console/Application.php(124): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#16 /home/forge/api.hello.me/artisan(59): Symfony\Component\Console\Application->run()
#17 {main} [] []
Any idea on how I could understand / find out what is happening? The queue is not even failing all the time...
ps: full stack trace:
#0 /home/forge/api.hello.me/vendor/jeremeamia/SuperClosure/src/Jeremeamia/SuperClosure/SerializableClosure.php(99) : eval()'d code(6): Illuminate\Exception\Handler->handleError(8, 'Trying to get p...', '/home/forge/api...', 6, Array)
#1 [internal function]: Jeremeamia\SuperClosure\SerializableClosure::{closure}(Object(Illuminate\Queue\Jobs\BeanstalkdJob))
#2 /home/forge/api.hello.me/vendor/jeremeamia/SuperClosure/src/Jeremeamia/SuperClosure/SerializableClosure.php(64): ReflectionFunction->invokeArgs(Array)
#3 /home/forge/api.hello.me/vendor/laravel/framework/src/Illuminate/Queue/IlluminateQueueClosure.php(36): Jeremeamia\SuperClosure\SerializableClosure->__invoke(Object(Illuminate\Queue\Jobs\BeanstalkdJob))
#4 /home/forge/api.hello.me/vendor/laravel/framework/src/Illuminate/Queue/Jobs/Job.php(96): IlluminateQueueClosure->fire(Object(Illuminate\Queue\Jobs\BeanstalkdJob), Array)
#5 /home/forge/api.hello.me/vendor/laravel/framework/src/Illuminate/Queue/Jobs/BeanstalkdJob.php(50): Illuminate\Queue\Jobs\Job->resolveAndFire(Array)
#6 /home/forge/api.hello.me/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(205): Illuminate\Queue\Jobs\BeanstalkdJob->fire()
#7 /home/forge/api.hello.me/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(157): Illuminate\Queue\Worker->process('beanstalkd', Object(Illuminate\Queue\Jobs\BeanstalkdJob), '3', '0')
#8 /home/forge/api.hello.me/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(105): Illuminate\Queue\Worker->pop('beanstalkd', 'default', '0', '10', '3')
#9 /home/forge/api.hello.me/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(67): Illuminate\Queue\Console\WorkCommand->runWorker('beanstalkd', 'default', '0', '128', false)
#10 /home/forge/api.hello.me/vendor/laravel/framework/src/Illuminate/Console/Command.php(112): Illuminate\Queue\Console\WorkCommand->fire()
#11 /home/forge/api.hello.me/vendor/symfony/console/Symfony/Component/Console/Command/Command.php(253): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#12 /home/forge/api.hello.me/vendor/laravel/framework/src/Illuminate/Console/Command.php(100): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#13 /home/forge/api.hello.me/vendor/symfony/console/Symfony/Component/Console/Application.php(889): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#14 /home/forge/api.hello.me/vendor/symfony/console/Symfony/Component/Console/Application.php(193): Symfony\Component\Console\Application->doRunCommand(Object(Illuminate\Queue\Console\WorkCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#15 /home/forge/api.hello.me/vendor/symfony/console/Symfony/Component/Console/Application.php(124): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#16 /home/forge/api.hello.me/artisan(59): Symfony\Component\Console\Application->run()
#17 {main} [] []

The way Laravel queues work is to serialize all the data you provide as the payload, and it sticks that in your database. When you process the queue, it will magically unserialize all this data so that you have basically the same object in memory as you did when you popped it into the queue.
The problem comes in when you change the class definition of a serialized object, or your object does not quite serialize correct (which seems to be the case here)...
I would suggest that you try not serializing anonymous functions, because Laravel uses SuperClosure to do this, and it's pretty hacky.
[internal function]: Jeremeamia\SuperClosure\SerializableClosure::{closure}(Object(Illuminate\Queue\Jobs\BeanstalkdJob))
Try pushing simpler objects into your Beanstalk queue (i.e. don't send objects to the queue) and you won't have this issue.

Related

Blank emails Can't retrieve entity config: admin/permission_block

I am getting blank shipment emails. If I remove the call to the track.phtml file from the email template the emails are otherwise okay. The track.phtml file and the email templates are default. I am getting an error in the exception log as below. Can anyone help please?
I am getting this error in the exception log
exception 'Mage_Core_Exception' with message 'Can't retrieve entity config: admin/permission_block' in /home/woods/public_html/app/Mage.php:595
Stack trace:
#0 /home/woods/public_html/includes/src/__default.php(30680): Mage::throwException('Can't retrieve ...')
#1 /home/woods/public_html/includes/src/__default.php(12396): Mage_Core_Model_Resource->getTableName('admin/permissio...')
#2 /home/woods/public_html/includes/src/__default.php(12359): Mage_Core_Model_Resource_Db_Abstract->getTable('permission_bloc...')
#3 /home/woods/public_html/includes/src/__default.php(32634): Mage_Core_Model_Resource_Db_Abstract->getMainTable()
#4 /home/woods/public_html/includes/src/__default.php(32671): Mage_Core_Model_Resource_Db_Collection_Abstract->getMainTable()
#5 /home/woods/public_html/includes/src/__default.php(32614): Mage_Core_Model_Resource_Db_Collection_Abstract->_initSelect()
#6 /home/woods/public_html/includes/src/__default.php(24498): Mage_Core_Model_Resource_Db_Collection_Abstract->__construct(Array)
#7 /home/woods/public_html/includes/src/__default.php(24530): Mage_Core_Model_Config->getModelInstance('admin_resource/...', Array)
#8 /home/woods/public_html/app/Mage.php(491): Mage_Core_Model_Config->getResourceModelInstance('admin/block_col...', Array)
#9 /home/woods/public_html/includes/src/Mage_Admin_Model_Block.php(79): Mage::getResourceModel('admin/block_col...')
#10 /home/woods/public_html/includes/src/__default.php(27659): Mage_Admin_Model_Block->isTypeAllowed('core/template')
#11 [internal function]: Mage_Core_Model_Email_Template_Filter->blockDirective(Array)
#12 /home/woods/public_html/includes/src/__default.php(27322): call_user_func(Array, Array)
#13 /home/woods/public_html/includes/src/__default.php(28041): Varien_Filter_Template->filter('{{template conf...')
#14 /home/woods/public_html/includes/src/Mage_Core_Model_Email_Template.php(311): Mage_Core_Model_Email_Template_Filter->filter('{{template conf...')
#15 /home/woods/public_html/includes/src/Mage_Core_Model_Email_Template.php(391): Mage_Core_Model_Email_Template->getProcessedTemplate(Array, true)
#16 /home/woods/public_html/includes/src/Mage_Core_Model_Email_Template.php(508): Mage_Core_Model_Email_Template->send(Array, Array, Array)
#17 /home/woods/public_html/includes/src/Mage_Core_Model_Email_Template_Mailer.php(84): Mage_Core_Model_Email_Template->sendTransactional('40', 'general', Array, Array, Array, '1')
#18 /home/woods/public_html/includes/src/Mage_Sales_Model_Order_Shipment.php(462): Mage_Core_Model_Email_Template_Mailer->send()
#19 /home/woods/public_html/app/code/core/Mage/Adminhtml/controllers/Sales/Order/ShipmentController.php(222): Mage_Sales_Model_Order_Shipment->sendEmail(true, '')
#20 /home/woods/public_html/includes/src/__default.php(14272): Mage_Adminhtml_Sales_Order_ShipmentController->saveAction()
#21 /home/woods/public_html/includes/src/__default.php(18736): Mage_Core_Controller_Varien_Action->dispatch('save')
#22 /home/woods/public_html/includes/src/__default.php(18266): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#23 /home/woods/public_html/includes/src/__default.php(21117): Mage_Core_Controller_Varien_Front->dispatch()
#24 /home/woods/public_html/app/Mage.php(684): Mage_Core_Model_App->run(Array)
#25 /home/woods/public_html/index.php(83): Mage::run('', 'store')
#26 {main}
Error may be related to Block Permission issue. You need to allowed core/template block from backend.
For this follow the below steps:
Login in backend.
From Top Navigation got to System >> Permissions >> Blocks
here you need to add core/template block and set Is Allowed to Yes
I've answered a similar question here
I had this same problem, these steps solved it:
1- Make sure your tmp folder is writable, I had a custom tmp folder set on lib/Zend/Cache/Backend/File.php
'cache_dir' => 'tmp',
2- Remove var/cache and reload the admin page

Laravel exception from 3rd party library not showing stack trace

I am using the Bigcommerce PHP SDK within my Laravel 4 application. The Bigcommerce SDK is configured to throw exceptions when errors occur. These exceptions are usually of the class Bigcommerce\Api\ClientError. When these exceptions are thrown, instead of seeing a detailed output in my error logs like I normally do for Laravel exceptions (with stack traces, line numbers, file locations, etc), I only see a single line in the error log, something like this:
[2015-05-05 21:19:00] production.ERROR: Client Error (404): The requested resource was not found. [] []
Is there something I need to do within my app to ensure that these Bigcommerce exceptions are logged using the same detail as other Laravel exceptions?
Here's an example of the error output I'm used to seeing from Laravel. This output was the result of a Bigcommerce\Api\NetworkError. I do not understand why the output for this type of exception is what I'm looking for, but a Bigcommerce\Api\ClientError is not:
[2015-05-05 13:22:22] production.ERROR: exception 'Bigcommerce\Api\NetworkError' with message 'Empty reply from server' in /var/www/html/dev.example/vendor/bigcommerce/api/src/Bigcommerce/Api/Connection.php:213
Stack trace:
#0 /var/www/html/dev.example/vendor/bigcommerce/api/src/Bigcommerce/Api/Connection.php(326): Bigcommerce\Api\Connection->handleResponse()
#1 /var/www/html/dev.example/vendor/bigcommerce/api/src/Bigcommerce/Api/Client.php(225): Bigcommerce\Api\Connection->post('https://api.big...', Object(stdClass))
#2 /var/www/html/dev.example/vendor/bigcommerce/api/src/Bigcommerce/Api/Client.php(436): Bigcommerce\Api\Client::createResource('/products', Array)
#3 /var/www/html/dev.example/app/spire_models/Product.php(873): Bigcommerce\Api\Client::createProduct(Array)
#4 /var/www/html/dev.example/app/spire_models/Product.php(35): Spire_models\Product->pushToExternal()
#5 /var/www/html/dev.example/app/extensions/SlaveTrait.php(26): Spire_models\Product->additionalSyncWithMaster()
#6 /var/www/html/dev.example/app/controllers/ProductInfoController.php(225): Spire_models\Product->syncWithMaster()
#7 [internal function]: ProductInfoController->saveProductDetails()
#8 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(231): call_user_func_array(Array, Array)
#9 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(93): Illuminate\Routing\Controller->callAction('saveProductDeta...', Array)
#10 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(62): Illuminate\Routing\ControllerDispatcher->call(Object(ProductInfoController), Object(Illuminate\Routing\Route), 'saveProductDeta...')
#11 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Routing/Router.php(967): Illuminate\Routing\ControllerDispatcher->dispatch(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request), 'ProductInfoCont...', 'saveProductDeta...')
#12 [internal function]: Illuminate\Routing\Router->Illuminate\Routing\{closure}()
#13 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Routing/Route.php(109): call_user_func_array(Object(Closure), Array)
#14 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Routing/Router.php(1033): Illuminate\Routing\Route->run(Object(Illuminate\Http\Request))
#15 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Routing/Router.php(1001): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
#16 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(775): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
#17 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(745): Illuminate\Foundation\Application->dispatch(Object(Illuminate\Http\Request))
#18 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Session/Middleware.php(72): Illuminate\Foundation\Application->handle(Object(Illuminate\Http\Request), 1, true)
#19 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Cookie/Queue.php(47): Illuminate\Session\Middleware->handle(Object(Illuminate\Http\Request), 1, true)
#20 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Cookie/Guard.php(51): Illuminate\Cookie\Queue->handle(Object(Illuminate\Http\Request), 1, true)
#21 /var/www/html/dev.example/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Illuminate\Cookie\Guard->handle(Object(Illuminate\Http\Request), 1, true)
#22 /var/www/html/dev.example/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(641): Stack\StackedHttpKernel->handle(Object(Illuminate\Http\Request))
#23 /var/www/html/dev.example/public/index.php(49): Illuminate\Foundation\Application->run()
#24 {main} [] []
In the Bigcommerce/Api/ClientError.php theres one method __toString(). Comment it out.

Checkout failure on last step

I was just on the verge of turning my site live, as I had to update my database to the sites current standards for sales orders and transactions and what not so they fell just in line. I imported the sales files from the live database to the soon to be live database, which had been working perfectly prior to this. Once the updated sales and orders files were updated, my checkout process fails on the very last step of hitting 'Place Order' .. It goes into the submitting process, then simply comes up with a popup message stating "There was an error processing your order. Please contact us or try again later." Click okay, and you just stare at your waiting cart. I have looked around and tried a few things, to no avail. So I come to you all knowing stack crew!
This is the error log I am getting now;
exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number: parameter was not defined' in /www/www/store/lib/Zend/Db/Statement/Pdo.php:228
Stack trace:
#0 /www/www/store/lib/Zend/Db/Statement/Pdo.php(228): PDOStatement- >execute(Array)
#1 /www/www/store/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)
#2 /www/www/store/app/code/core/Zend/Db/Statement.php(291): Varien_Db_Statement_Pdo_Mysql->_execute(Array)
#3 /www/www/store/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)
#4 /www/www/store/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('SELECT `sales_f...', Array)
#5 /www/www/store/lib/Varien/Db/Adapter/Pdo/Mysql.php(428): Zend_Db_Adapter_Pdo_Abstract->query('SELECT `sales_f...', Array)
#6 /www/www/store/lib/Zend/Db/Adapter/Abstract.php(825): Varien_Db_Adapter_Pdo_Mysql->query(Object(Varien_Db_Select), Array)
#7 /www/www/store/app/code/local/Mage/Sales/Model/Resource/Quote.php(169): Zend_Db_Adapter_Abstract->fetchOne(Object(Varien_Db_Select), Array)
#8 /www/www/store/app/code/core/Mage/Sales/Model/Quote.php(1637): Mage_Sales_Model_Resource_Quote->isOrderIncrementIdUsed('100014532')
#9 /www/www/store/app/code/core/Mage/Sales/Model/Service/Quote.php(147): Mage_Sales_Model_Quote->reserveOrderId()
#10 /www/www/store/app/code/core/Mage/Sales/Model/Service/Quote.php(249): Mage_Sales_Model_Service_Quote->submitOrder()
#11 /www/www/store/app/code/core/Mage/Checkout/Model/Type/Onepage.php(785): Mage_Sales_Model_Service_Quote->submitAll()
#12 /www/www/store/app/code/core/Mage/Checkout/controllers/OnepageController.php(579): Mage_Checkout_Model_Type_Onepage->saveOrder()
#13 /www/www/store/app/code/core/Mage/Core/Controller/Varien/Action.php(418): Mage_Checkout_OnepageController->saveOrderAction()
#14 /www/www/store/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('saveOrder')
#15 /www/www/store/app/code/core/Mage/Core/Controller/Varien/Front.php(172): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#16 /www/www/store/app/code/core/Mage/Core/Model/App.php(354): Mage_Core_Controller_Varien_Front->dispatch()
#17 /www/www/store/app/Mage.php(684): Mage_Core_Model_App->run(Array)
#18 /www/www/store/index.php(87): Mage::run('', 'store')
#19 {main}
Next exception 'Zend_Db_Statement_Exception' with message 'SQLSTATE[HY093]: Invalid parameter number: parameter was not defined' in /www/www/store/lib/Zend/Db/Statement/Pdo.php:234
Stack trace:
#0 /www/www/store/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)
#1 /www/www/store/app/code/core/Zend/Db/Statement.php(291): Varien_Db_Statement_Pdo_Mysql->_execute(Array)
#2 /www/www/store/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)
#3 /www/www/store/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('SELECT `sales_f...', Array)
#4 /www/www/store/lib/Varien/Db/Adapter/Pdo/Mysql.php(428): Zend_Db_Adapter_Pdo_Abstract->query('SELECT `sales_f...', Array)
#5 /www/www/store/lib/Zend/Db/Adapter/Abstract.php(825): Varien_Db_Adapter_Pdo_Mysql->query(Object(Varien_Db_Select), Array)
#6 /www/www/store/app/code/local/Mage/Sales/Model/Resource/Quote.php(169): Zend_Db_Adapter_Abstract->fetchOne(Object(Varien_Db_Select), Array)
#7 /www/www/store/app/code/core/Mage/Sales/Model/Quote.php(1637): Mage_Sales_Model_Resource_Quote->isOrderIncrementIdUsed('100014532')
#8 /www/www/store/app/code/core/Mage/Sales/Model/Service/Quote.php(147): Mage_Sales_Model_Quote->reserveOrderId()
#9 /www/www/store/app/code/core/Mage/Sales/Model/Service/Quote.php(249): Mage_Sales_Model_Service_Quote->submitOrder()
#10 /www/www/store/app/code/core/Mage/Checkout/Model/Type/Onepage.php(785): Mage_Sales_Model_Service_Quote->submitAll()
#11 /www/www/store/app/code/core/Mage/Checkout/controllers/OnepageController.php(579): Mage_Checkout_Model_Type_Onepage->saveOrder()
#12 /www/www/store/app/code/core/Mage/Core/Controller/Varien/Action.php(418): Mage_Checkout_OnepageController->saveOrderAction()
#13 /www/www/store/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('saveOrder')
#14 /www/www/store/app/code/core/Mage/Core/Controller/Varien/Front.php(172): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#15 /www/www/store/app/code/core/Mage/Core/Model/App.php(354): Mage_Core_Controller_Varien_Front->dispatch()
#16 /www/www/store/app/Mage.php(684): Mage_Core_Model_App->run(Array)
#17 /www/www/store/index.php(87): Mage::run('', 'store')
#18 {main}
I can see they are both dealing with the same invalid parameter, but I assume if I just fix that one single parameter (which is probably just the parameter for my one personally made user account I assume) it would still error for some other, not effectively solving the issue. So I have to ask, does this give anyone an idea of what the heck I did to blow up my store?! Thanks for your time guys, truly!
First, looking at your specific error
exception 'PDOException' with message SQLSTATE[HY093]: Invalid parameter number: parameter was not defined
This is PHP's database layers saying "someone used me wrong". Specifically, it looks like someone used a parameterized query where they included a blank and/or invalid parameter.
Second, looking at your stack trace, I noticed this.
/www/www/store/app/code/local/Mage/Sales/Model/Resource/Quote.php(169): Zend_Db_Adapter_Abstract->fetchOne(Object(Varien_Db_Select), Array)
Specifically, it looks like you, or someone, has created a code pool override for the quote resource model. Everything else being equal, I'd say it's likely the change you made to this file from the file in core is what's causing your problem. Likely in this method (around line 169)
#File: app/code/core/Mage/Sales/Model/Resource/Quote.php
public function isOrderIncrementIdUsed($orderIncrementId)
{
$adapter = $this->_getReadAdapter();
$bind = array(':increment_id' => (int)$orderIncrementId);
$select = $adapter->select();
$select->from($this->getTable('sales/order'), 'entity_id')
->where('increment_id = :increment_id');
$entity_id = $adapter->fetchOne($select, $bind);
if ($entity_id > 0) {
return true;
}
return false;
}
My guess is you've either jiggered with the $bind array
$entity_id = $adapter->fetchOne($select, $bind);
or included additional query parameters in the SQL that aren't accounted for.
->where('increment_id = :increment_id');

In Magento, how does one read the exception.log?

I cannot find any documentation on how to read the exception.log in Magento; where is the documentation on how to read this?
If there is no documentation in what order are the exceptions printed?
Did #0 happen last or did it happen first?
Stack trace:
#0 .../html/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)
#1 .../html/lib/Zend/Db/Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array)
#2 .../html/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)
#3 .../html/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('select eav_opti...', Array)
#4 .../html/lib/Varien/Db/Adapter/Pdo/Mysql.php(419): Zend_Db_Adapter_Pdo_Abstract->query('select eav_opti...', Array)
#5 .../html/app/code/local/FME/Manufacturers/Model/Observer/Product.php(47): Varien_Db_Adapter_Pdo_Mysql->query('select eav_opti...')
#6 .../html/app/code/core/Mage/Core/Model/App.php(1338): FME_Manufacturers_Model_Observer_Product->saveTabData(Object(Varien_Event_Observer))
#7 .../html/app/code/core/Mage/Core/Model/App.php(1317): Mage_Core_Model_App->_callObserverMethod(Object(FME_Manufacturers_Model_Observer_Product), 'saveTabData', Object(Varien_Event_Observer))
#8 .../html/app/Mage.php(447): Mage_Core_Model_App->dispatchEvent('catalog_product...', Array)
#9 .../html/app/code/core/Mage/Core/Model/Abstract.php(466): Mage::dispatchEvent('catalog_product...', Array)
#10 .../html/app/code/core/Mage/Catalog/Model/Product.php(548): Mage_Core_Model_Abstract->_afterSave()
#11 .../html/app/code/core/Mage/Core/Model/Abstract.php(319): Mage_Catalog_Model_Product->_afterSave()
#12 .../html/app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php(714): Mage_Core_Model_Abstract->save()
#13 .../html/app/code/core/Mage/Core/Controller/Varien/Action.php(419): Mage_Adminhtml_Catalog_ProductController->saveAction()
#14 .../html/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('save')
#15 .../html/app/code/core/Mage/Core/Controller/Varien/Front.php(176): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#16 .../html/app/code/core/Mage/Core/Model/App.php(354): Mage_Core_Controller_Varien_Front->dispatch()
#17 .../html/app/Mage.php(683): Mage_Core_Model_App->run(Array)
#18 .../html/index.php(91): Mage::run('', 'store')
#19 {main}
This is a regular PHP Exception Stack Trace; it's not specific to Magento.
Line #0 tells us, that the line 110 of the file lib/Varien/Db/Statement/Pdo/Mysql.php managed to successfully call the method Zend_Db_Statement_Pdo->_execute(), but then execution of one of the commands of this method resulted in throwing an Exception.
Simply spoken, a Stack Trace is just a list of method/function calls, that an application was in the middle of execution of when an Exception was thrown.
Code execution started at #19 {main} (bottom of the stack).
#18, {main} was executed untilmethod Mage::run() was calledin line 91 of index.php
#17, Mage::run() was executed untilmethod Mage_Core_Model_App->run() was calledin line 683 of app/Mage.php
:
#1, Zend_Db_Statement->execute() was executed untilmethod Varien_Db_Statement_Pdo_Mysql->_execute() was calledin line 300 of lib/Zend/Db/Statement.php
#0, Varien_Db_Statement_Pdo_Mysql->_execute() was executed untilmethod Zend_Db_Statement_Pdo->_execute() was calledin line 110 of lib/Varien/Db/Statement/Pdo/Mysql.php,but some command of this method caused throwing an exception.
As a side note, I wouldn't generally say a stack trace is "going down the list of functions that are failing", like #pzirkind mentioned in his answer.
Because if the method called in #0 (top of the stack) wouldn't have "failed", many of the methods called before may still work as expected (and many usually do, at least to my experience), or even catch the thrown exception.
Zero happened last.
What's happening is that it's going down the list of functions that are failing.
It starts with the actual function that failed and then shows you how it continued to cause other things to fail (this makes it easier to trace a deeper problem if it exists).
Pesach

SocialEngine4: Notification Error: Zend Engine_Api_Exception with message Unknown item type

I am using socialengine4 and my notifications keep giving me this error. I thought this was some type of config thing and look into the database or the notifications setting but i have not been able to fix this error. Can anyone point me in the right direction?
2012-05-22T17:40:21+00:00 CRIT (2):
Error Code: dc0cf5
exception 'Engine_Api_Exception' with message 'Unknown item type: news_content' in /var/www/html/application/libraries/Engine/Api.php:417
Stack trace:
#0 /var/www/html/application/libraries/Engine/Api.php(522): Engine_Api->getItemInfo('news_content', 'moduleInflected')
#1 /var/www/html/application/libraries/Engine/Api.php(330): Engine_Api->getItemApi('news_content')
#2 /var/www/html/application/modules/Activity/Model/Notification.php(80): Engine_Api->getItem('news_content', 2622)
#3 /var/www/html/application/modules/Activity/Model/Notification.php(49): Activity_Model_Notification->getObject()
#4 /var/www/html/application/modules/Activity/Model/Notification.php(98): Activity_Model_Notification->getContent()
#5 /var/www/html/application/modules/Activity/views/scripts/notifications/pulldown.tpl(17): Activity_Model_Notification->__toString()
#6 /var/www/html/application/libraries/Zend/View.php(108): include('/var/www/html/a...')
#7 /var/www/html/application/libraries/Zend/View/Abstract.php(835): Zend_View->_run('/var/www/html/a...')
#8 /var/www/html/application/libraries/Zend/Controller/Action/Helper/ViewRenderer.php(903): Zend_View_Abstract->render('notifications/p...')
#9 /var/www/html/application/libraries/Zend/Controller/Action/Helper/ViewRenderer.php(924): Zend_Controller_Action_Helper_ViewRenderer->renderScript('notifications/p...', NULL)
#10 /var/www/html/application/libraries/Zend/Controller/Action/Helper/ViewRenderer.php(964): Zend_Controller_Action_Helper_ViewRenderer->render()
#11 /var/www/html/application/modules/Activity/controllers/NotificationsController.php(109): Zend_Controller_Action_Helper_ViewRenderer->postDispatch()
#12 /var/www/html/application/libraries/Zend/Controller/Action.php(512): Activity_NotificationsController->pulldownAction()
#13 /var/www/html/application/libraries/Zend/Controller/Dispatcher/Standard.php(289): Zend_Controller_Action->dispatch('pulldownAction')
#14 /var/www/html/application/libraries/Zend/Controller/Front.php(946): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#15 /var/www/html/application/modules/Core/Bootstrap.php(75): Zend_Controller_Front->dispatch()
#16 /var/www/html/application/libraries/Engine/Application.php(160): Core_Bootstrap->run()
#17 /var/www/html/application/index.php(194): Engine_Application->run()
#18 /var/www/html/index.php(24): include('/var/www/html/a...')
#19 {main}
The settings for the items are in Application->modules->'modulename'->settings>manifest.php
There is an array called items which i added 'news_content' to and it worked.
I managed to fix it.
The problem was that somehow (despite lack of enable/disable link on the module box in the list of modules) it was disabled.
To enable it I accessed the 'engine4_core_modules' table, searched for 'storage' name and changed the 'enabled' cell content from 0 to 1.

Categories