Migration fails: ParseError: not well-formed invalid token

Refers to:

  • Plesk 12.5 for Linux
  • Plesk 11.0 for Linux
  • Plesk 11.5 for Linux
  • Plesk 12.0 for Linux
  • Plesk 12.5 for Windows

Created:

2016-11-16 12:54:55 UTC

Modified:

2017-01-28 01:25:17 UTC

0

Was this article helpful?


Have more questions?

Submit a request

Migration fails: ParseError: not well-formed invalid token

Symptoms

Migration from Plesk 11.0.9 (or 11.5.30) to 12.5.30 fails. The following errors can be found in /usr/local/psa/PMM/logs/sessions/<timestamp>/debug.log debug migration log:

=|2016-05-25_22:11:35,312|D|MT|parallels|||MigrationError: Failed to perform action: Fetch information from target servers
=|2016-05-25_22:11:35,312|D|MT|parallels|||Cause: not well-formed (invalid token): line 83, column 35
=|2016-05-25_22:11:35,312|D|MT|parallels|||That is a critical error, migration was stopped.

The following error can be found in /usr/local/psa/PMM/logs/sessions/<timestamp>/info.log migration log:

[2016-05-27 19:31:04][ERROR] Failed to perform action: Fetch information from target servers
Cause: not well-formed (invalid token): line 83, column 35
That is a critical error, migration was stopped.

Cause

Passwords decryption tool used by Plesk Dump Agent places non-UTF symbols into dumps. As a result, Plesk Migrator is unable to parse such dumps.This is Plesk Migrator internal issue with ID #PMT-2631 , which is planned to be fixed in future Plesk Migrator updates.

Workaround

  1. Find users with password that contain non-UTF symbols:
    # cd /usr/local/psa/PMM/logs/sessions/ && cd `ls -1t | head -n1` && mkdir plesk_backup_source_unpacked && tar -xvf plesk.backup.source.raw.tar -C plesk_backup_source_unpacked/ && grep -B2 '<password' plesk_backup_source_unpacked/backup_info_*.xml | grep -v properties

Strings with passwords that contain non-UTF symbols will look like:

    <user is-domain-admin="false" name="user@example.com" is-built-in="false" contact="user" subscription-name="example.com" is-legacy-user="false" email="user@example.com" guid="d11c11f1-4b92-44eb-85f7-9f2a88605c46" cr-date="2014-10-18T18:55:58-06:00">
<password type="plain">▒▒▒▒▒▒▒▒▒▒▒▒▒▒</password>
  1. Change passwords for specific users with non-UTF symbols (use UTF symbols only) on a source server according to instructions here:

213413569 How to Change the password for a user account.

In the case there are a lot of users with non-UTF passwords on the source server, it is recommended to use script attached to this email.

Instructions on how to use the script:

1. Unpack file attached to this article (`setmailpass.tar`)

2. Make file executable: `# chmod +x setmailpass.sh`

3. Put the list of affected mailboxes (with non-UTF characters) to a text file (i.e. list.txt). Put one mailbox per single line of file, i.e.:

info@example.com
user@example.com

4. Execute the script: `#./setmailpass.sh list.txt newpassword`
  1. Re-run migration.

Attachments:

Have more questions? Submit a request
Please sign in to leave a comment.