I had a complaint about the cart stopping working on a Magento 2.2.3 instance and noticed the following errors showing within php logs:
[Fri Apr 06 15:28:54.964616 2018] [:error] [pid 58985] [client 126.96.36.199:55599] PHP Fatal error: Uncaught Error: Call to a member function getThumbnail() on null in /home/sites/magento/public_html/vendor/magento/module-configurable-product/CustomerData/ConfigurableItem.php:63 Stack trace: #0 /home/sites/magento/public_html/vendor/magento/module-checkout/CustomerData/DefaultItem.php(66): Magento\ConfigurableProduct\CustomerData\ConfigurableItem->getProductForThumbnail() #1 /home/sites/magento/public_html/vendor/magento/module-checkout/CustomerData/AbstractItem.php(31): Magento\Checkout\CustomerData\DefaultItem->doGetItemData() #2 /home/sites/magento/public_html/vendor/magento/module-checkout/CustomerData/ItemPool.php(63): Magento\Checkout\CustomerData\AbstractItem->getItemData(Object(Magento\Quote\Model\Quote\Item)) #3 /home/sites/magento/public_html/vendor/magento/module-checkout/CustomerData/Cart.php(167): Magento\Checkout\CustomerData\ItemPool->getItemData(Object(Magento\Quote\Model\Quote\Item)) #4 /home/sites/magento/public_html/vendor/magento/module-checkout/CustomerData/Cart.php(98): Magento\Checkou in /home/sites/magento/public_html/vendor/magento/module-configurable-product/CustomerData/ConfigurableItem.php on line 63
Cart seemed to be working for most people except a new user who had just started and a few customers seemed to have been having the issues from looking over the logs.
I flushed the redis cache as felt it was session related and this was handled by redis. This stopped the issue occurring for now however am worried it will come back so was wondering if anyone can suggest what may have gone wrong here?
Redis does not have any memory limits configured and there were no errors in Redis logs so feel that is fine but am out of ideas of how this has happened.