Deprecated Functionality: str_replace() with Magento 2.4.7-p2 and php 8.1 and 8.3 as required

I have a new installation of magento (haven’t gone live yet) and just upgraded to the latest 2.4.7-p2 version. I have followed all the system requirements and upgraded from php v8.1 to 8.3 as required by the magento system requirements.
When I was testing the checkout process I was presented with a server error and the following in the exception log.

I’ve seen other mention similar error but none with the original magento modules.
Did i miss something during the upgrade where it’s still using old depricated functions?

It seems this issue shouldn’t be happening with an install following the published system requirements. The admin is properly reporting the v. 2.4.7-p2 which leads me to believe the upgrade is complete.

Is this a common issue with this version?

[2024-09-19T07:06:49.757455+00:00] main.CRITICAL: Exception: Deprecated Functionality: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /var/www/html/magento2/vendor/magento/zend-db/library/Zend/Db/Adapter/Abstract.php on line 1044 in /var/www/html/magento2/vendor/magento/framework/App/ErrorHandler.php:62
Stack trace:
#0 [internal function]: MagentoFrameworkAppErrorHandler->handler()
#1 /var/www/html/magento2/vendor/magento/zend-db/library/Zend/Db/Adapter/Abstract.php(1044): str_replace()
#2 /var/www/html/magento2/vendor/magento/zend-db/library/Zend/Db/Adapter/Abstract.php(1024): Zend_Db_Adapter_Abstract->_quoteIdentifier()
#3 /var/www/html/magento2/vendor/magento/zend-db/library/Zend/Db/Adapter/Abstract.php(962): Zend_Db_Adapter_Abstract->_quoteIdentifierAs()
#4 /var/www/html/magento2/generated/code/Magento/Framework/DB/Adapter/Pdo/Mysql/Interceptor.php(1157): Zend_Db_Adapter_Abstract->quoteIdentifier()
#5 /var/www/html/magento2/vendor/magento/zend-db/library/Zend/Db/Adapter/Abstract.php(568): MagentoFrameworkDBAdapterPdoMysqlInterceptor->quoteIdentifier()
#6 /var/www/html/magento2/generated/code/Magento/Framework/DB/Adapter/Pdo/Mysql/Interceptor.php(1058): Zend_Db_Adapter_Abstract->insert()
#7 /var/www/html/magento2/vendor/magento/module-sales-sequence/Model/Sequence.php(85): MagentoFrameworkDBAdapterPdoMysqlInterceptor->insert()
#8 /var/www/html/magento2/vendor/magento/module-quote/Model/ResourceModel/Quote.php(177): MagentoSalesSequenceModelSequence->getNextValue()
#9 /var/www/html/magento2/vendor/magento/module-quote/Model/Quote.php(2258): MagentoQuoteModelResourceModelQuote->getReservedOrderId()
#10 /var/www/html/magento2/generated/code/Magento/Quote/Model/Quote/Interceptor.php(824): MagentoQuoteModelQuote->reserveOrderId()
#11 /var/www/html/magento2/vendor/magento/module-quote/Model/QuoteManagement.php(556): MagentoQuoteModelQuoteInterceptor->reserveOrderId()
#12 /var/www/html/magento2/vendor/magento/module-quote/Model/QuoteManagement.php(501): MagentoQuoteModelQuoteManagement->submitQuote()
#13 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): MagentoQuoteModelQuoteManagement->submit()
#14 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): MagentoQuoteModelQuoteManagementInterceptor->___callParent()
#15 /var/www/html/magento2/vendor/magento/module-sales-rule/Plugin/CouponUsagesIncrement.php(54): MagentoQuoteModelQuoteManagementInterceptor->MagentoFrameworkInterception{closure}()
#16 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(135): MagentoSalesRulePluginCouponUsagesIncrement->aroundSubmit()
#17 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): MagentoQuoteModelQuoteManagementInterceptor->MagentoFrameworkInterception{closure}()
#18 /var/www/html/magento2/generated/code/Magento/Quote/Model/QuoteManagement/Interceptor.php(68): MagentoQuoteModelQuoteManagementInterceptor->___callPlugins()
#19 /var/www/html/magento2/vendor/magento/module-quote/Model/QuoteManagement.php(459): MagentoQuoteModelQuoteManagementInterceptor->submit()
#20 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): MagentoQuoteModelQuoteManagement->placeOrder()
#21 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): MagentoQuoteModelQuoteManagementInterceptor->___callParent()
#22 /var/www/html/magento2/vendor/paypal/module-braintree-core/Plugin/OrderCancellation.php(64): MagentoQuoteModelQuoteManagementInterceptor->MagentoFrameworkInterception{closure}()
#23 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(135): PayPalBraintreePluginOrderCancellation->aroundPlaceOrder()
#24 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): MagentoQuoteModelQuoteManagementInterceptor->MagentoFrameworkInterception{closure}()
#25 /var/www/html/magento2/generated/code/Magento/Quote/Model/QuoteManagement/Interceptor.php(50): MagentoQuoteModelQuoteManagementInterceptor->___callPlugins()
#26 /var/www/html/magento2/vendor/magento/module-quote/Model/GuestCart/GuestCartManagement.php(87): MagentoQuoteModelQuoteManagementInterceptor->placeOrder()
#27 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): MagentoQuoteModelGuestCartGuestCartManagement->placeOrder()
#28 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): MagentoQuoteModelGuestCartGuestCartManagementInterceptor->___callParent()
#29 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): MagentoQuoteModelGuestCartGuestCartManagementInterceptor->MagentoFrameworkInterception{closure}()
#30 /var/www/html/magento2/generated/code/Magento/Quote/Model/GuestCart/GuestCartManagement/Interceptor.php(41): MagentoQuoteModelGuestCartGuestCartManagementInterceptor->___callPlugins()
#31 /var/www/html/magento2/vendor/magento/module-checkout/Model/GuestPaymentInformationManagement.php(142): MagentoQuoteModelGuestCartGuestCartManagementInterceptor->placeOrder()
#32 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): MagentoCheckoutModelGuestPaymentInformationManagement->savePaymentInformationAndPlaceOrder()
#33 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): MagentoCheckoutModelGuestPaymentInformationManagementInterceptor->___callParent()
#34 /var/www/html/magento2/vendor/cybersource/module-3dsecure/Plugin/Checkout/Model/GuestPaymentInformationManagementInterfacePlugin.php(34): MagentoCheckoutModelGuestPaymentInformationManagementInterceptor->MagentoFrameworkInterception{closure}()
#35 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(135): CyberSourceThreeDSecurePluginCheckoutModelGuestPaymentInformationManagementInterfacePlugin->aroundSavePaymentInformationAndPlaceOrder()
#36 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): MagentoCheckoutModelGuestPaymentInformationManagementInterceptor->MagentoFrameworkInterception{closure}()
#37 /var/www/html/magento2/generated/code/Magento/Checkout/Model/GuestPaymentInformationManagement/Interceptor.php(23): MagentoCheckoutModelGuestPaymentInformationManagementInterceptor->___callPlugins()
#38 [internal function]: MagentoCheckoutModelGuestPaymentInformationManagementInterceptor->savePaymentInformationAndPlaceOrder()
#39 /var/www/html/magento2/vendor/magento/module-webapi/Controller/Rest/SynchronousRequestProcessor.php(95): call_user_func_array()
#40 /var/www/html/magento2/vendor/magento/module-webapi/Controller/Rest.php(201): MagentoWebapiControllerRestSynchronousRequestProcessor->process()
#41 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): MagentoWebapiControllerRest->dispatch()
#42 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): MagentoWebapiControllerRestInterceptor->___callParent()
#43 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): MagentoWebapiControllerRestInterceptor->MagentoFrameworkInterception{closure}()
#44 /var/www/html/magento2/generated/code/Magento/Webapi/Controller/Rest/Interceptor.php(23): MagentoWebapiControllerRestInterceptor->___callPlugins()
#45 /var/www/html/magento2/vendor/magento/framework/App/Http.php(116): MagentoWebapiControllerRestInterceptor->dispatch()
#46 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): MagentoFrameworkAppHttp->launch()
#47 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): MagentoFrameworkAppHttpInterceptor->___callParent()
#48 /var/www/html/magento2/vendor/magento/module-application-performance-monitor/Plugin/ApplicationPerformanceMonitor.php(38): MagentoFrameworkAppHttpInterceptor->MagentoFrameworkInterception{closure}()
#49 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(135): MagentoApplicationPerformanceMonitorPluginApplicationPerformanceMonitor->aroundLaunch()
#50 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): MagentoFrameworkAppHttpInterceptor->MagentoFrameworkInterception{closure}()
#51 /var/www/html/magento2/generated/code/Magento/Framework/App/Http/Interceptor.php(23): MagentoFrameworkAppHttpInterceptor->___callPlugins()
#52 /var/www/html/magento2/vendor/magento/framework/App/Bootstrap.php(264): MagentoFrameworkAppHttpInterceptor->launch()
#53 /var/www/html/magento2/pub/index.php(30): MagentoFrameworkAppBootstrap->run()
#54 {main} {"exception":"[object] (Exception(code: 0): Deprecated Functionality: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /var/www/html/magento2/vendor/magento/zend-db/library/Zend/Db/Adapter/Abstract.php on line 1044 at /var/www/html/magento2/vendor/magento/framework/App/ErrorHandler.php:62)"} []

I also don’t understand why these packages won’t update
with composer update or composer install.

    $ composer outdated
Color legend:
- patch or minor release available - update recommended
- major release available - update possible

Direct dependencies required in composer.json:
allure-framework/allure-phpunit                2.1.0  3.0.1  Allure PHPUnit integration
dealerdirect/phpcodesniffer-composer-installer 0.7.2  1.0.0  PHP_CodeSniffer Standards Composer Installer Plugin
magento/magento2-functional-testing-framework  4.6.1  4.8.2  Magento2 Functional Testing Framework
phpunit/phpunit                                9.6.21 11.3.6 The PHP Unit Testing framework.
sebastian/phpcpd                               6.0.3  6.0.3  Copy/Paste Detector (CPD) for PHP code.
Package sebastian/phpcpd is abandoned, you should avoid using it. No replacement was suggested.
symfony/finder                                 5.4.43 7.1.4  Finds files and directories via an intuitive fluent interface

Transitive dependencies not required in composer.json:
bacon/bacon-qr-code                            2.0.8  3.0.0  BaconQrCode is a QR code generator for PHP.
braintree/braintree_php                        6.13.0 6.19.0 Braintree PHP Client Library
brick/varexporter                              0.4.0  0.5.0  A powerful alternative to var_export(), which can export closures and objects without __set_state()
codeception/module-webdriver                   3.2.2  4.0.2  WebDriver module for Codeception
colinmollenhour/php-redis-session-abstract     1.5.5  2.0.0  A Redis-based session handler with optimistic locking
composer/composer                              2.7.7  2.7.9  Composer helps you declare, manage and install dependencies of PHP projects. It ensures you have t...
elasticsearch/elasticsearch                    7.17.2 8.15.0 PHP Client for Elasticsearch
endroid/qr-code                                4.8.5  5.1.0  Endroid QR Code
ezimuel/guzzlestreams                          3.1.0  4.0.0  Fork of guzzle/streams (abandoned) to be used with elasticsearch-php
justinrainbow/json-schema                      5.3.0  6.0.0  A library to validate a json schema.
laminas/laminas-crypt                          3.12.0 4.0.0  Strong cryptography tools and password hashing
Package laminas/laminas-crypt is abandoned, you should avoid using it. No replacement was suggested.
laminas/laminas-mail                           2.25.1 2.25.1 Provides generalized functionality to compose and send both text and MIME-compliant multipart e-ma...
Package laminas/laminas-mail is abandoned, you should avoid using it. Use symfony/mailer instead.
laminas/laminas-servicemanager                 3.22.1 4.2.0  Factory-Driven Dependency Injection Container
lcobucci/jwt                                   4.3.0  5.3.0  A simple library to work with JSON Web Token and JSON Web Signature
league/flysystem                               2.5.0  3.28.0 File storage abstraction for PHP
league/flysystem-aws-s3-v3                     2.5.0  3.28.0 AWS S3 filesystem adapter for Flysystem.
monolog/monolog                                2.9.3  3.7.0  Sends your logs to files, sockets, inboxes, databases and various web services
nikic/php-parser                               4.19.2 5.2.0  A PHP parser written in PHP
php-amqplib/php-amqplib                        3.2.0  3.7.1  Formerly videlalvaro/php-amqplib.  This library is a pure PHP implementation of the AMQP protocol....
phpunit/php-code-coverage                      9.2.32 11.0.6 Library that provides collection, processing, and rendering functionality for PHP code coverage in...
phpunit/php-file-iterator                      3.0.6  5.1.0  FilterIterator implementation that filters files based on a list of suffixes.
phpunit/php-invoker                            3.1.1  5.0.1  Invoke callables with a timeout
phpunit/php-text-template                      2.0.4  4.0.1  Simple template engine.
phpunit/php-timer                              5.0.3  7.0.1  Utility class for timing
psr/container                                  1.1.2  2.0.2  Common Container Interface (PHP FIG PSR-11)
react/promise                                  2.11.0 3.2.0  A lightweight implementation of CommonJS Promises/A for PHP
sebastian/cli-parser                           1.0.2  3.0.2  Library for parsing CLI options
sebastian/code-unit                            1.0.8  3.0.1  Collection of value objects that represent the PHP code units
sebastian/code-unit-reverse-lookup             2.0.3  4.0.1  Looks up which function or method a line of code belongs to
sebastian/comparator                           4.0.8  6.1.0  Provides the functionality to compare PHP values for equality
sebastian/complexity                           2.0.3  4.0.1  Library for calculating the complexity of PHP code units
sebastian/diff                                 4.0.6  6.0.2  Diff implementation
sebastian/environment                          5.1.5  7.2.0  Provides functionality to handle HHVM/PHP environments
sebastian/exporter                             4.0.6  6.1.3  Provides the functionality to export PHP variables for visualization
sebastian/global-state                         5.0.7  7.0.2  Snapshotting of global state
sebastian/lines-of-code                        1.0.4  3.0.1  Library for counting the lines of code in PHP source code
sebastian/object-enumerator                    4.0.4  6.0.1  Traverses array structures and object graphs to enumerate all referenced objects
sebastian/object-reflector                     2.0.4  4.0.1  Allows reflection of object attributes, including inherited and non-public ones
sebastian/recursion-context                    4.0.5  6.0.2  Provides functionality to recursively process PHP variables
sebastian/type                                 3.2.1  5.1.0  Collection of value objects that represent the types of the PHP type system
sebastian/version                              3.0.2  5.0.1  Library that helps with managing the version number of Git-hosted PHP projects
symfony/config                                 6.4.8  7.1.1  Helps you find, load, combine, autofill and validate configuration values of any kind
symfony/console                                6.4.11 7.1.4  Eases the creation of beautiful and testable command line interfaces
symfony/dependency-injection                   6.4.11 7.1.4  Allows you to standardize and centralize the way objects are constructed in your application
symfony/dotenv                                 6.4.10 7.1.3  Registers environment variables from a .env file
symfony/http-foundation                        6.4.10 7.1.3  Defines an object-oriented layer for the HTTP specification
symfony/intl                                   6.4.8  7.1.1  Provides access to the localization data of the ICU library
symfony/mime                                   6.4.11 7.1.4  Allows manipulating MIME messages
symfony/process                                6.4.8  7.1.3  Executes commands in sub-processes
symfony/string                                 6.4.11 7.1.4  Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme cl...
web-token/jwt-framework                        3.4.6  4.0.1  JSON Object Signing and Encryption library for PHP and Symfony Bundle.
wikimedia/less.php                             3.2.1  5.1.1  PHP port of the LESS processor