Applicable to:
- Plesk for Windows
- Plesk for Linux
Symptoms
- Creating subscription by API request fails with the error status, however subscription is created with no hosting.
- Symptoms below are valid in case of WHMCS provisioning:
- While an attempt to create a service with the username like
testusername123456
via WHMCS the following error appears:CONFIG_TEXT: Module Command Error
Error code: 1023. Error message: Failed API request: Domain Service Web not exists: domain=example.com, id=35 -
Plesk allows the creation of a subscription via WHMCS with an existing username.
During the creation, the subscription is partly-created and the following error occurs in WHMCS:
CONFIG_TEXT: Order Accept Encountered Problems Error code: 2204. Error message: Unable to update hosting preferences. The user testuser already exists. Incorrect fields: "login".
After the username changing in WHMCS and continuing the creation process, it fails with an error:
CONFIG_TEXT: Order Accept Encountered Problems Error code: 1007. Error message: Incorrect name example.com. This domain name already exists.
- While an attempt to create a service with the username like
Cause
Plesk bug PPPM-6071. It will be fixed in future updates.
Resolution
For non-WHMCS cases, the only workaround is to remove the partially created subscription in Plesk manually and correct the API request.
-
For the first issue change the username
testusername123456
according to the following requirements:It is possible to use lowercase alphanumeric, dash, and underscore symbols in the username. The username should start with a lowercase alphabetic character and should be between 1 and 16 characters in length.
For example, the username
testusername123456
consists of 18 characters, while the maximum characters for username are limited 16. To solve the issue for this case, it is needed to remove 2 characters. -
For the second issue, as a workaround, manually remove the partly created subscription in Plesk and then recreate it via WHMCS.
-
Connect to the server using SSH.
-
Check the file
/etc/passwd
if the user from the error exists there and delete all found lines:# grep testuser /etc/passwd
testuser:x:10340:1003::/var/www/vhosts/example.com:/bin/false -
Access Plesk database and remove all orphaned records from the Plesk database according to the following example:
# plesk db
mysql> select * from sys_users where login like "%testuser%";
+-----+---------------+-----------------+------------+-------------------------------+------------+-------+-----------+
| id | serviceNodeId | login | account_id | home | shell | quota | mapped_to |
+-----+---------------+-----------------+------------+-------------------------------+------------+-------+-----------+
| 411 | 1 | testuser | 2690 | /var/www/vhosts/example.com | /bin/false | 0 | NULL |
| 416 | 1 | testuser | 2702 | /var/www/vhosts/example.com | /bin/false | 0 | NULL |
+-----+---------------+-----------------+------------+-------------------------------+------------+-------+-----------+
mysql> select * from web_users where sys_user_id=411 OR sys_user_id=416;
Empty set (0.00 sec)
mysql> select * from ftp_users where sys_user_id=411 OR sys_user_id=416;
Empty set (0.00 sec)
mysql> select * from hosting where sys_user_id=411 OR sys_user_id=416;
Empty set (0.00 sec)
mysql> select * from ScheduledTasks where sysUserId=411 OR sysUserId=416;
Empty set (0.00 sec)
mysql> select * from subdomains where sys_user_id=411 OR sys_user_id=416;
Empty set (0.00 sec)
mysql> select * from accounts where id=2690 OR id=2702;
+------+------+----------------------------------------------------------------+
| id | type | password |
+------+------+----------------------------------------------------------------+
| 2690 | sym | $AES-128-CBC$Q1AgXs3iTyjYsDpBFeOvRw==$OCZVaOCBMWG2+dQ2uDOeRQ== |
| 2702 | sym | $AES-128-CBC$+vbXTORYdJuoWO7s4jXyLA==$f39OnbhjobEtY/I+i0ypMQ== |
+------+------+----------------------------------------------------------------+
2 rows in set (0.00 sec)
mysql> delete from accounts where id=2690 OR id=2702;
Query OK, 2 rows affected (0.00 sec)
mysql> delete from sys_users where id=411 OR id=416;
Query OK, 2 rows affected (0.00 sec)
-
Comments
5 comments
Any solutions?? It's a bug that's been around for over a month and to this day 2/4/2020 nothing
Hello Sebastian Ayala
Thank you for the feedback.
The exact ETA of a permanent fix is to be available later.
Consider following this article for updates.
For now, please, use the specified workaround.
Has this one been resolved? It's over a year old now. Are you still making everyone implement the workaround?
@Stephen Revere The bug is not yet fixed. I suggest subscribing to the article by clicking "follow" to be notified when the bug will be fixed. You may also track our release notes to see when the issue will be fixed: https://docs.plesk.com/release-notes/obsidian/change-log/
Now following! Thanks for the tip & info Robert.
Please sign in to leave a comment.