IP Pool page under some client is not accessible: Unable to create IP Address object

Created:

2016-11-16 12:46:58 UTC

Modified:

2017-04-24 12:11:55 UTC

0

Was this article helpful?


Have more questions?

Submit a request

IP Pool page under some client is not accessible: Unable to create IP Address object

Applicable to:

  • Plesk 12.5 for Linux
  • Plesk 10.x and below for Linux

Symptoms

IP Pool page under some client is not accessible Clients > < client_name > IP Pool :

Unable to create IP Address object: Table-&gt;select() failed: no such row in the table
0: /usr/local/psa/admin/plib/common\\_func.php3:156 psaerror(string 'Unable to create IP Address object: Table-&gt;select() failed: no such row in the table')
1: /usr/local/psa/admin/plib/class.IPPoolList.php:120 ipPoolList-&gt;fetchIPPoolList()
2: /usr/local/psa/admin/plib/class.cList.php3:103 cList-&gt;fetchList()
3: /usr/local/psa/admin/plib/class.cList.php3:123 cList-&gt;init()
4: /usr/local/psa/admin/htdocs/clients/cl\\_pool.php3:81_

Cause

The error means that the IP pool the Client contains refers to an IP address that does not exist in the list of all available IP addresses in the Plesk database. Usually, it happens when IP addresses are managed not through the Plesk interface at the Server > IP addresses page, but directly from the IP_Addresses table of the Plesk database.

Resolution

It is necessary to find the referrer to the non-existent IP in the Client's IP pool and remove it.

Example:

  1. Log in to MySQL as Plesk admin user:

    # MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysql -u admin -Dpsa
  2. Find the IP pool of the Client (substitute the real Client login instead of LOGIN below):

    mysql> select login, pool_id from clients where login = 'LOGIN';
    +-------+---------+
    | login | pool_id |
    +-------+---------+
    | LOGIN |       7 |
    +-------+---------+`
  3. The IP pool is 7 Now find the IDs of the IP addresses that are in this IP pool:

    mysql> select * from Repository where rep_id = 7;
    +--------+--------------+
    | rep_id | component_id |
    +--------+--------------+
    |      7 |            1 |
    |      7 |            2 |
    |      7 |            3 |
    +--------+--------------+`
  4. IP pool with ID 7 contains IP addresses with IDs 1, 2, and 3. Now check whether these IP addresses are in the "IP\_Addresses" table:

    mysql> select id, ip_address, iface from IP_Addresses where id in (1,2,3);
    +----+---------------+-------+
    | id | ip_address    | iface |
    +----+---------------+-------+
    |  1 | 192.168.45.50 | rl0   |
    |  2 | 192.168.45.51 | rl0   |
    +----+---------------+-------+
  5. The IP address with the ID 3 does not exist. Therefore, remove the record where IP pool = 7 and IP Address ID = 3 from the psa.Repository table:

    mysql> delete from Repository where rep_id = 7 and component_id = 3;
Have more questions? Submit a request
Please sign in to leave a comment.