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-08-16 17:30:52 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.x for Windows
  • Plesk 11.x for Linux

Symptoms

  • An attempt to start a new migration, it 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 file /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

Packages perl-XML-Parser and perl-XML-Simple are corrupted or missing on a source server.

Without these packages dump files cannot be created.

Resolution

  • Check if Perl modules perl-XML-Parser and perl-XML-Simple are installed on the source server:

    #  rpm -qa | grep 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
  • Verify these 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
  • Download packages perl-XML-Parser and perl-XML-Simple that correspond to the OS from rpmfind.net and reinstall them.

    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.