• Debian 11 is approaching its end-of-life (vendor EOL date - August 31, 2026). Plesk Obsidian 18.0.80 will be the last release to support it.
    If you are running Plesk Obsidian on Debian 11, we recommend you upgrade those servers to Debian 12 using our dist-upgrade tool.
  • We plan to deprecate and remove the support for XML RPC protocol versions earlier than 1.6.9.1 in Plesk Obsidian 18.0.82. We strongly recommend that you update all existing integrations using earlier versions of the XML RPC protocol to comply with the version 1.6.9.1 specification.

pleskrestore fails with an Exception "Failed to read data from stream"

thiscode

New Pleskian
My Version: Plesk 11.0.9 Update #60

I cannot restore Clients previously backed up with "pleskbackup". Here are the Steps:

1.) Create a plesk only-configuration-backup of one client with:

pleskbackup --clients-name NAME_OF_CLIENT -c -v --output-file=NAME_OF_FILE

2.) Transfer that file to another server and executing pleskrestore (with -ignore-sign of course). The first time pleskrestore returns a conflict description with one conflict (id=0), because of the different ip. The xml starts as follows:

<?xml version="1.0"?>
<conflicts-description>
<conflict id="0" guid="XXXXXXXXXXXXXXX">
<type>
<configuration>
<reason-description>
<required-resource-description>
<ip type="shared" value="XX.XX.XX.XX"/>
</required-resource-description>
[...]

3.) Based on this description i built a resolution file, to "rename" the old ip to the new one:

<?xml version="1.0"?>
<resolve-conflicts-task-description>
<conflict-resolution-rules>
<policy />
<rule conflict-id="0">
<resolution>
<rename new-name="ip-type:shared:ip-address:XXX.XXX.XXX.XX"/>
</resolution>
</rule>
</conflict-resolution-rules>
</resolve-conflicts-task-description>

4.) Executing now pleskrestore with -conflicts-resolution pointing to this file will throw the error:

PHP Warning: fread(): 303 is not a valid stream resource; File: /usr/local/psa/admin/plib/StreamXMLReader.php, Line: 106

ERROR: Exception
Failed to read data from stream

5.) I tried moving the files around and giving them maximum access right etc. But nothing helped.

Could someone tell me what the reason aof the exception could be? I do not detect any errors in my XML.

Maybe the Stacktrace below the Exception could lead to some Informations:

0: StreamXMLReader.php:108
StreamXMLReader->parse()
1: StreamXMLReader.php:175
StreamXMLReader->read(string 'conflicts-description', integer '2', integer '1', integer '0')
2: StreamXMLReader.php:244
StreamXMLReader->sub(string 'conflicts-description', integer '2')
3: PMMResponseRestoreTaskResult.php:27
PMMResponseRestoreTaskResult->getConflictsDescription()
4: cuPleskRestore.php:541
cuPleskRestore->doRestore(array, string '/var/lib/psa/dumps/clients/XXXXX/backup_XXXXX_info_1310301110.xml', object of type RestoreMapping, string '/restore.xml', NULL null)
5: cuPleskRestore.php:692
cuPleskRestore->cmdRestore(string '/backup.psa')
6: cuPleskRestore.php:201
cuPleskRestore->__construct()
7: pleskrestore.php:8
 
Back
Top