• If you are still using CentOS 7.9, it's time to convert to Alma 8 with the free centos2alma tool by Plesk or Plesk Migrator. Please let us know your experiences or concerns in this thread:
    CentOS2Alma discussion

Issue new error : PHP Fatal error: Uncaught Error: Class 'GuzzleHttp\Promise\Create' not found in

andyxyz

Basic Pleskian
HI all

in the last few days I have seen the following error on 2 servers. One a clean install with migration and the other an older server that has been in production for months.

The error occurs when running

plesk repair web -y -v

Repairing web server configuration for all domains. This aspect
can be used with individual domains ("plesk repair web
example.com"), and on the server level ("plesk repair web") ..... [2021-10-06 07:41:20.451] 22396:615d44cf8d3fa ERR [util_exec] proc_close() failed ['/opt/psa/admin/bin/httpdmng' '--reconfigure-all'] with exit code [1]
[FAILED]
- httpdmng failed: Execution failed.
Command: httpdmng
Arguments: Array
(
[0] => --reconfigure-domains
[1] =>
[list of domains]
)

PHP Fatal error: Uncaught Error: Class
'GuzzleHttp\Promise\Create' not found in
/opt/psa/admin/plib/modules/nodejs/vendor/guzzlehttp/promises/src/functions.php:55
Stack trace:
#0
/opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/Credentials/CredentialProvider.php(131):
GuzzleHttp\Promise\promise_for(Object(Aws\Credentials\Credentials))
#1
/opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/ClientResolver.php(418):
Aws\Credentials\CredentialProvider::fromCredentials(Object(Aws\Credentials\Credentials))
#2
/opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/ClientResolver.php(314):
Aws\ClientResolver::_apply_credentials(Object(Aws\Credentials\Credentials),
Array, Object(Aws\HandlerList))
#3
/opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/AwsClient.php(187):
Aws\ClientResolver->resolve(Array, Object(Aws\HandlerList))
#4
/opt/psa/admin/plib/modules/wp-toolkit/library/Service/Statistics/FirehoseClientFactory.php(43):
Aws\AwsClient->__construct(Array)
#5 /opt/psa/admin/p in
/opt/psa/admin/plib/modules/nodejs/vendor/guzzlehttp/promises/src/functions.php
on line 55

anyone seen this or got any idea how to fix.
 
Is there a place where we can see thesee reported issues?

We're seeing the same issue, breaking WP Toolkit:

Code:
[2021-10-06 14:47:40.033] 5883:615d9aec08057 DEBUG [panel] Execute: '/opt/psa/admin/bin/send-error-report'
[2021-10-06 14:47:40.039] 5883:615d9aec08057 ERR [panel] Error: Class 'GuzzleHttp\Promise\Create' not found
file: /opt/psa/admin/plib/modules/dropbox-backup/vendor/guzzlehttp/promises/src/functions.php
line: 55
code: 0
trace: #0 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/Credentials/CredentialProvider.php(131): GuzzleHttp\Promise\promise_for(object of type Aws\Credentials\Credentials)
#1 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/ClientResolver.php(418): Aws\Credentials\CredentialProvider::fromCredentials(object of type Aws\Credentials\Credentials)
#2 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/ClientResolver.php(314): Aws\ClientResolver::_apply_credentials(object of type Aws\Credentials\Credentials, array, object of type Aws\HandlerList)
#3 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/AwsClient.php(187): Aws\ClientResolver->resolve(array, object of type Aws\HandlerList)
#4 /opt/psa/admin/plib/modules/wp-toolkit/library/Service/Statistics/FirehoseClientFactory.php(43): Aws\AwsClient->__construct(array)
 
A /usr/local/psa/admin/bin/httpdmng --reconfigure-all run on one of our to date servers cause massive issues yesterday because of this now dreaded:


PHP Fatal error: Uncaught Error: Class 'GuzzleHttp\Promise\Create' not found in /usr/local/psa/admin/plib/modules/nodejs/vendor/guzzlehttp/promises/src/functio ns.php:55
Stack trace:
#0 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/Crede ntials/CredentialProvider.php(131): GuzzleHttp\Promise\promise_for(Object(Aws\Cr edentials\Credentials))
#1 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/Clien tResolver.php(418): Aws\Credentials\CredentialProvider::fromCredentials(Object(A ws\Credentials\Credentials))
#2 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/Clien tResolver.php(314): Aws\ClientResolver::_apply_credentials(Object(Aws\Credential s\Credentials), Array, Object(Aws\HandlerList))
#3 /usr/local/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/AwsCl ient.php(187): Aws\ClientResolver->resolve(Array, Object(Aws\HandlerList))
#4 /usr/local/psa/admin/plib/modules/wp-toolkit/library/Service/Statistics/Fireh oseClientFactory.php(43): Aws\AwsClient->__ in /usr/local/psa/admin/plib/modules /nodejs/vendor/guzzlehttp/promises/src/functions.php on line 55
 
A bit more data. I noticed the error when I was updating one of our servers, and so I came here and read the messages. For the next server I upgraded, I removed the dropbox backup extension, as nobody was using it, and the upgrade went without errors. I'm wondering, and will test, what will happen if the dropbox backup is removed after a server is upgraded, and then (maybe) re-added if necessary.
 
Yeah, removing Dropbox will most likely resolve the issue. But we can't, since we have customers that depend on it.

Plesk needs to fix this ASAP. It's a pretty simple fix as well. Just add the library.
 
Got this by way of a support request. This workaround did look to work on the two servers I applied it to.
...
This issue is related to the bug EXTWPTOOLK-8246, which is caused by the use of a Plesk incompatible version of the guzzlehttp library. We will do our best to fix the issue in one of the next Plesk updates. You may track our release notes to see when the issue will be fixed: Change Log for Plesk Obsidian Until a permanent fix becomes available, the issue can be fixed by applying the workaround below: Connect to the server via SSH; Uninstall the nodejs extension:
# plesk bin extension --uninstall nodejs
Reinstall it:
# plesk bin extension --install nodejs
Alternatively, the extension can be reinstalled using Plesk UI by going to "Plesk > Tools & Settings > Updates > Add/Remove Components > Web hosting". Please, let me know if this does not resolve the issue.
...
 
I don't have nodejs installed, but I was getting the error message that I've definitively traced to the dropbox backup extension. So it may either of those conditions cause the issue.
 
Got this by way of a support request. This workaround did look to work on the two servers I applied it to.
...
This issue is related to the bug EXTWPTOOLK-8246, which is caused by the use of a Plesk incompatible version of the guzzlehttp library. We will do our best to fix the issue in one of the next Plesk updates. You may track our release notes to see when the issue will be fixed: Change Log for Plesk Obsidian Until a permanent fix becomes available, the issue can be fixed by applying the workaround below: Connect to the server via SSH; Uninstall the nodejs extension:
# plesk bin extension --uninstall nodejs
Reinstall it:
# plesk bin extension --install nodejs
Alternatively, the extension can be reinstalled using Plesk UI by going to "Plesk > Tools & Settings > Updates > Add/Remove Components > Web hosting". Please, let me know if this does not resolve the issue.
...
NodeJS isn't installed:

Code:
# plesk bin extension --uninstall nodejs
The extension nodejs is not installed.

exit status 1

Installing NodeJS doesn't solve the issue either. Still Guzzle HTTP errors in panel.log.

Code:
[08-Oct-2021 10:25:09 Europe/Amsterdam] PHP Fatal error:  Uncaught Error: Class 'GuzzleHttp\Promise\Create' not found in /opt/psa/admin/plib/modules/dropbox-backup/vendor/guzzlehttp/promises/src/functions.php:55
Stack trace:
#0 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/Credentials/CredentialProvider.php(131): GuzzleHttp\Promise\promise_for(Object(Aws\Credentials\Credentials))
#1 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/ClientResolver.php(418): Aws\Credentials\CredentialProvider::fromCredentials(Object(Aws\Credentials\Credentials))
#2 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/ClientResolver.php(314): Aws\ClientResolver::_apply_credentials(Object(Aws\Credentials\Credentials), Array, Object(Aws\HandlerList))
#3 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/AwsClient.php(187): Aws\ClientResolver->resolve(Array, Object(Aws\HandlerList))
#4 /opt/psa/admin/plib/modules/wp-toolkit/library/Service/Statistics/FirehoseClientFactory.php(43): Aws\AwsClient->__construct(Array)
#5 /opt/psa in /opt/psa/admin/plib/modules/dropbox-backup/vendor/guzzlehttp/promises/src/functions.php on line 55
 
NodeJS isn't installed:

Code:
# plesk bin extension --uninstall nodejs
The extension nodejs is not installed.

exit status 1

Installing NodeJS doesn't solve the issue either. Still Guzzle HTTP errors in panel.log.

Code:
[08-Oct-2021 10:25:09 Europe/Amsterdam] PHP Fatal error:  Uncaught Error: Class 'GuzzleHttp\Promise\Create' not found in /opt/psa/admin/plib/modules/dropbox-backup/vendor/guzzlehttp/promises/src/functions.php:55
Stack trace:
#0 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/Credentials/CredentialProvider.php(131): GuzzleHttp\Promise\promise_for(Object(Aws\Credentials\Credentials))
#1 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/ClientResolver.php(418): Aws\Credentials\CredentialProvider::fromCredentials(Object(Aws\Credentials\Credentials))
#2 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/ClientResolver.php(314): Aws\ClientResolver::_apply_credentials(Object(Aws\Credentials\Credentials), Array, Object(Aws\HandlerList))
#3 /opt/psa/admin/plib/modules/wp-toolkit/vendor/aws/aws-sdk-php/src/AwsClient.php(187): Aws\ClientResolver->resolve(Array, Object(Aws\HandlerList))
#4 /opt/psa/admin/plib/modules/wp-toolkit/library/Service/Statistics/FirehoseClientFactory.php(43): Aws\AwsClient->__construct(Array)
#5 /opt/psa in /opt/psa/admin/plib/modules/dropbox-backup/vendor/guzzlehttp/promises/src/functions.php on line 55

What about dropbox backup extension?
 
Had this issue on servers with the dropbox extension installed, client was using it for server backups, had to log out of dropbox and reinstall the extension.

Not a good feeling that an extension can break core functionality!
 
Back
Top