Symptoms
-
Unable to renew/issue a Let’s Encrypt certificate with SSLit! extension:
PLESK_ERROR: SQLSTATE[23000]: Integrity constraint violation: 19 NOT NULL constraint failed: OrderAttribute.value, query was: INSERT INTO “OrderAttribute” (“orderId”, “name”, “value”) VALUES (?, ?, ?)
-
Trying to cancel the pending order at Plesk > Domains > example.com > SSL Certificates fails with the same issue.
Cause
Product issue:
- #EXTSSLIT-1052 “If an issue occurred, the executed “Keep websites secured” task no longer substitutes the error message that explains the cause of the issue with an unrelated error message.”
Fixed in:- SSL It! 1.6.0 09 September 2020
Resolution
Workaround
Note: Please make sure the Keep website secured with free SSL certificate is disable at Service Plans > service_plan_name > Additional Services page or at Subscriptions > example.com > Customize> Additional Services.
Windows
-
Connect to the server via RDP;
-
Query the guid from the example.com domain:
MYSQL_WIN: SELECT id, name, guid FROM
domains
where name = ‘example.com’;
+—-+—————-+————————————–+
| id | name | guid |
+—-+—————-+————————————–+
| 31 | example.com | 4D393C65-A5C6-41BF-BEED-7E367589AF97 |
+—-+—————-+————————————–+
1 row in set (0.000 sec) -
Exit Plesk database;
-
(Only needed for Plesk Onyx, skip in case Plesk Obsidian is in use)
Downloadsqlite3.exe
from this link intoC:temp
-
Copy the
"%plesk_dir%varmodulessslitsslit.sqlite3"
file to create a backup; -
Open CMD and log into SSLIt! database:
-
Plesk Onyx:
C:> “C:tempsqlite3.exe” “%plesk_dir%varmodulessslitsslit.sqlite3”
-
Plesk Obsidian:
C:> “%plesk_dir%adminbinsqlite3.exe” “%plesk_dir%varmodulessslitsslit.sqlite3
-
Specify
.headers on
(column headers will be shown in “select” query results):MYSQL_WIN: .headers on
-
Select pending orders from the domain in question, where domainGuid is the guid found on step #3:
MYSQL_WIN: select * from Orders where domainGuid = ‘4D393C65-A5C6-41BF-BEED-7E367589AF97‘ and status = 0;
id|vendorId|productId|domainGuid|createdDate|status|certificateId
..
209|letsencrypt.letsencrypt|base|4D393C65-A5C6-41BF-BEED-7E367589AF97|1587269461|0|0 -
Remove rows from both Orders & OrderAttribute tables parsing the id found on the previous step:
MYSQL_WIN: delete from Orders where id = 209;
delete from OrderAttribute where orderId = 209; - Go to Customers > domain owner > Edit Contact Info and specify email address here to prevent issue from happening in the future.
Linux
-
Connect to the server via SSH
-
Download the script in the attachment:
# wget https://plesk.zendesk.com/hc/article_attachments/360012088300/SSLIT-integrity_constraint_violation.sh; chmod +x ./SSLIT-integrity_constraint_violation.sh
-
Run the script
# ./SSLIT-integrity_constraint_violation.sh
- Go to Customers > domain owner > Edit Contact Info and specify email address here to prevent issue from happening in the future.
-
Try to secure the domain again with a SSL