Article ID: 123918, created on Dec 15, 2014, last review on Jan 14, 2015

  • Applies to:
  • Plesk Automation 11.5

Symptoms

Moving subscription on another service node fails with the error:

Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/parallels/common/cli/migrator_cli.py", line 34, in run
    options.method(migrator, options)
  File "/usr/lib/python2.7/site-packages/parallels/move_subscriptions/cli.py", line 39, in <lambda>
    lambda m, o, command_name=command.name: m.execute_command(command_name, o),
  File "/usr/lib/python2.7/site-packages/parallels/move_subscriptions/migrator.py", line 181, in execute_command
    move_list = self._read_move_list_lazy(options)
  File "/usr/lib/python2.7/site-packages/parallels/move_subscriptions/migrator.py", line 1274, in _read_move_list_lazy
    {s.name: s.web_ips for s in self.ppa_data.get_subscriptions_info()},
  File "/usr/lib/python2.7/site-packages/parallels/move_subscriptions/ppa_data.py", line 26, in get_subscriptions_info
    plesk_ops.SubscriptionOperator.Dataset.MAIL,
  File "/usr/lib/python2.7/site-packages/parallels/plesk_api/client.py", line 27, in send
    return self.send_many(operation, **request_settings)[0]
  File "/usr/lib/python2.7/site-packages/parallels/plesk_api/client.py", line 76, in send_many
    operation_responses.append(operation.parse(operation_response))
  File "/usr/lib/python2.7/site-packages/parallels/plesk_api/operator/subscription.py", line 153, in parse
    results = [core.Result.parse(r, cls._parse_data) for r in elem.findall('result')]
  File "/usr/lib/python2.7/site-packages/parallels/plesk_api/core.py", line 22, in parse
    return Success(parse_data(elem))
  File "/usr/lib/python2.7/site-packages/parallels/plesk_api/operator/subscription.py", line 166, in _parse_data
    hosting = if_not_none(data.find('hosting'), cls._parse_hosting)
  File "/usr/lib/python2.7/site-packages/parallels/utils/__init__.py", line 14, in if_not_none
    return func(value) if value is not None else None
  File "/usr/lib/python2.7/site-packages/parallels/plesk_api/operator/subscription.py", line 207, in _parse_hosting
    ip_addresses = _parse_plesk_ips([ip_node.text for ip_node in elem.findall('vrt_hst/ip_address')])
  File "/usr/lib/python2.7/site-packages/parallels/plesk_api/operator/subscription.py", line 32, in _parse_plesk_ips
    assert 0 <= len(ipv4) <= 1
AssertionError
[2014-12-03 20:36:42,239] [ERROR] parallels || Unexpected error: '', migration is aborted. See the traceback above for more information.

Cause

Database inconsistency. Some of the subscription(s) has incorrect or doulble IP address for hosting.

When the migrator gathers the informatino from database it tries to assign the value of IP address to the internal variable, but fail when the SQL query returns two IP addresses instead of one that was expected.

Resolution

The issue required complicated database manipulation and source code interference. Please contact Parallels Technical Support for assistance.

Search Words

AssertionError

Unexpected error: '', migration is aborted

[2014-12-03 20:36:42,239] [ERROR] parallels || Unexpected error: '', migration is aborted. See the traceback above for more information.

33a70544d00d562bbc5b17762c4ed2b3 caea8340e2d186a540518d08602aa065 e0aff7830fa22f92062ee4db78133079

Email subscription for changes to this article
Save as PDF