• 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

DNSZone::Table::select() failed: no such row in the table

E

EmileL

Guest
Hi All,

We have a problem on one of our Windows Plesk servers.

When one of our customers clicks on the button "DNS Settings" in one of his sites (I cannot place the name of the site here). After the click he receives the error message: "DNSZone::Table::select() failed: no such row in the table".

I ran serveral commands like, DNSMng.exe, websrvmng.exe --reconfigure-vhost. Alle these commands didn't fix the problem.

Can anyone help us?
 
Emil,

There are numeriouse reasons behind this. Please try to disable and enable the domain which may sometime reload the DNS raw in PSA database. If it doesn’t work try ‘Restore Default’ button under DNS setting.

If none of above works you might need to set DNS zone status value in PSA.Domain table.
 
I also got the same error "Error: DNSZone::Table::select() failed: no such row in the table" while choosing the DNS settings from plesk control panel(Windows plesk) . Did the following to fix the issue,

1) Login to mysql psa database using the plesk administrator password,

cd %plesk_dir%\Mysql\bin
mysql -uadmin -p -P 8306 psa

2) Find those domains that have the wrong zone ids. Execute the following sql query in mysql prompt,

Code:
SELECT domains.name FROM domains LEFT JOIN dns_zone ON domains.dns_zone_id = dns_zone.id WHERE dns_zone.id IS NULL;

In my case executing the above query listed two domains with wrong zone ids,
Code:
mysql> SELECT domains.name FROM domains LEFT JOIN dns_zone ON domains.dns_zone_id = dns_zone.id WHERE dns_zone.id IS NULL;
+--------------------------------+
| name                           |
+--------------------------------+
| divinelane.fakedomain.com |
| test.fakedomain.com       |
+--------------------------------+
2 rows in set (0.00 sec)

mysql>



Comparing the dns_zone_id in tables 'domains' and 'dns_zone', it was evident that dns_zone_id with value 10 and 11 that was present in table 'domains' was missing in 'dns_zone' table.
Code:
mysql> select dns_zone_id,name from domains;
+-------------+------------------------------------+
| dns_zone_id | name                               |
+-------------+------------------------------------+
|           2 | pgvault.com             	   |
|           3 | miak.pgvault.com 		   |
|           4 | sdig.ca                        	   |
|           5 | niteg.com                          |
|           6 | pgsafe.com                         |
|          10 | divinelane.fakedomain.com          |
|          11 | test.fakedomain.com                |
|          13 | abcmotors.fakedomain.com           |
+-------------+------------------------------------+
8 rows in set (0.00 sec)

mysql>

mysql> select id,name from dns_zone;
+----+------------------------------------+
| id | name                               |
+----+------------------------------------+
|  1 | vps.hostname.com         |
|  2 | pgvault.com             		  |
|  3 | miak.pgvault.com			  |
|  4 | sdig.ca                            |
|  5 | niteg.com                          |
|  6 | pgsafe.com                         |
| 13 | abcmotors.fakedomain.com           |
+----+------------------------------------+
7 rows in set (0.00 sec)

mysql>


So I just manually inserted those missing zone id entries in 'dns_zone' table using the insert query statement, which fixed the issue for me.
Code:
mysql>INSERT INTO dns_zone SET id=10, name='divinelane.fakedomain.com', displayName='divinelane.fakedomain.com', email='[email protected]';

mysql>INSERT INTO dns_zone SET id=11, name='test.fakedomain.com', displayName='test.fakedomain.com', email='[email protected]';



Hope this would help someone:)
 
Thank you for sharing

Hey.

Tx for sharing ReynoldJ. That was very helpful.

Created a subfolder panel.domain.tld

The folder was not shown in the panel and the subdomain could not be deleted. At deletion request, it was showing the same DNSZone error message.

I created the missing entry like shown in your post, and then I could delete it and recreate it. Now it works fine.

still buggy thou... I wonder what went wrong at first point.
 
Last edited:
I had to clean up my Windows 2003 Plesk 8.6 server for PPA and I stumbled upon this post. Thank you.
 
Last edited:
Hi,
im using plesk 11.0.9 and plesk db is MSSQL,
i have same problem: DNSZone::Table::select() failed: no such row in the table

whats is the command for mssql db?

Regards,
 
Hi,
im using plesk 11.0.9 and plesk db is MSSQL,
i have same problem: DNSZone::Table::select() failed: no such row in the table

whats is the command for mssql db?

Regards,

Plesk database architecture for PSA table on Linux and Windows is pretty similar. WITHOUT testing, My guess is that the commands are exactly the same.

My second opinion is that you should get someone from Parallels to give you a free support incident because ANY Parallels tech support engineer should have the answer and they should provide the answer to you gratis because this clearly is some weird bug of Plesk UI and database back-end on some (probably less stable) servers.
 
Back
Top