Unable to start migration: Error: pmm utility 'migration_handler' raised an exception. Error code is: 1

Created:

2016-11-16 12:58:44 UTC

Modified:

2017-04-24 12:01:28 UTC

0

Was this article helpful?


Have more questions?

Submit a request

Unable to start migration: Error: pmm utility 'migration_handler' raised an exception. Error code is: 1

Applicable to:

  • Plesk 12.5 for Linux
  • Plesk 11.5 for Windows
  • Plesk 11.5 for Linux

Symptoms

An attempt to start migration Tools & Settings > Migration & Transfer Manager > Start New Migration fails with the following error:

Error: pmm utility 'migration_handler' raised an exception. Error code is: 1
See pmmcli.log to find out detailed information on this

The following error can be found in the /usr/local/psa/PMM/logs/pmmcli.log :

[2014-06-11 06:50:16.697|2228] CRITICAL: Runtime error in migration handler:
<type 'exceptions.ValueError'> unknown url type: /usr/local/psa/PMM/msessions/2014061106495851/dump.xml
Traceback (most recent call last):
File "/usr/local/psa/admin/share/migration-handler/migration_handler.py", line 1946, in main
data_action_response, errcode_response, error_message = actions.get(sys.argv[1][2:])(parameters)
File "/usr/local/psa/admin/share/migration-handler/migration_handler.py", line 1727, in migration_get_objects_list
return MigrationHandlerActionRunner(MigrationGetObjectsListAction, agent_to_use, migration_session_id).doActivity()
File "/usr/local/psa/admin/share/migration-handler/migration_handler.py", line 106, in doActivity
result = self.processor.doActivity()
File "/usr/local/psa/admin/share/migration-handler/migration_handler.py", line 396, in doActivity
objects_list_object = service.getObjectsList(self.__agent_to_use, agent_dir)
File "/usr/local/psa/admin/share/migration-handler/pmm_migr_remote_service_impl.py", line 119, in getObjectsList
objects_list = self.makeObjectsListFromDump(agent_name)
File "/usr/local/psa/admin/share/migration-handler/pmm_migr_remote_service_impl.py", line 129, in makeObjectsListFromDump
parser.parse(dump_path)
File "/usr/lib64/python2.6/site-packages/_xmlplus/sax/expatreader.py", line 103, in parse
source = saxutils.prepare_input_source(source)
File "/usr/lib64/python2.6/site-packages/_xmlplus/sax/saxutils.py", line 524, in prepare_input_source
f = urllib2.urlopen(source.getSystemId())
File "/usr/lib64/python2.6/urllib2.py", line 126, in urlopen
return _opener.open(url, data, timeout)
File "/usr/lib64/python2.6/urllib2.py", line 383, in open
protocol = req.get_type()
File "/usr/lib64/python2.6/urllib2.py", line 244, in get_type
raise ValueError, "unknown url type: %s" % self.__original
ValueError: unknown url type: /usr/local/psa/PMM/msessions/2014061106495851/dump.xml

The following error can be observed in the corresponding migration session directory /usr/local/psa/PMM/logs/migration-2014-06-11-06-49-58-348/backup.log :

DEBUG Unable to create dump: Can't locate object method "new" via package "XML::Simple" at PleskStructure.pm line 648.
DEBUG Unable to create dump: XMLin() requires either XML::SAX or XML::Parser at PleskStructure.pm line 650

Cause

The perl-XML-Parser and perl-XML-Simple are corrupted or missing on the source server so it was not possible to create a dump file.

Resolution

  1. Find if Perl modules are installed on the source server:

    #  rpm -qa \\*XML*
    perl-XML-Parser-2.36-7.el6.x86_64
    perl-XML-Dumper-0.81-8.el6.noarch
    PyXML-0.8.4-19.el6.x86_64
    perl-XML-Simple-2.18-6.el6.noarch
  2. Verify packages:

    # rpm -V perl-XML-Simple-2.18-6.el6.noarch
    missing /usr/share/doc/perl-XML-Simple-2.18
    missing d /usr/share/doc/perl-XML-Simple-2.18/Changes
    missing d /usr/share/doc/perl-XML-Simple-2.18/README
    missing d /usr/share/man/man3/XML::Simple.3pm.gz
    missing d /usr/share/man/man3/XML::Simple::FAQ.3pm.gz
    missing /usr/share/perl5/XML
    missing /usr/share/perl5/XML/Simple
    missing /usr/share/perl5/XML/Simple.pm
    missing /usr/share/perl5/XML/Simple/FAQ.pod

    # rpm -V perl-XML-Parser-2.36-7.el6.x86_64
    missing /usr/lib64/perl5/XML
    missing /usr/lib64/perl5/XML/Parser
    missing /usr/lib64/perl5/XML/Parser.pm
    missing /usr/lib64/perl5/XML/Parser/Encodings
    missing /usr/lib64/perl5/XML/Parser/Encodings/Japanese_Encodings.msg
    missing /usr/lib64/perl5/XML/Parser/Encodings/README
    missing /usr/lib64/perl5/XML/Parser/Encodings/big5.enc
    missing /usr/lib64/perl5/XML/Parser/Encodings/euc-kr.enc
    missing /usr/lib64/perl5/XML/Parser/Encodings/iso-8859-2.enc
  3. Download perl-XML-Parser and perl-XML-Simple that correspond to the OS from the rpmfind.net and reinstall them.

    Here is an example for CentOS 6.5 x86_64:

    # wget ftp://rpmfind.net/linux/centos/6.5/os/x86_64/Packages/perl-XML-Simple-2.18-6.el6.noarch.rpm
    # rpm -Uvh --force perl-XML-Simple-2.18-6.el6.noarch.rpm
    Preparing... ########################################### [100%]
    1:perl-XML-Simple ########################################### [100%]

    # wget ftp://rpmfind.net/linux/centos/6.5/os/x86_64/Packages/perl-XML-Parser-2.36-7.el6.x86_64.rpm
    # rpm -Uvh --force perl-XML-Parser-2.36-7.el6.x86_64.rpm
    Preparing... ########################################### [100%]
    1:perl-XML-Parser ########################################### [100%]
Have more questions? Submit a request
Please sign in to leave a comment.