Public bug reported:
Distro: Ubuntu 16.10
MAAS version: 2.1.2+bzr5555-0ubuntu1~16.10.1 500
For some node MAC addresses (I have a relatively old servers) I am
unable to open MAAS dashboard page or Nodes page due to
"list index out of range"
error.
2017-01-09T15:39:21+0100 [maasserver.websockets.websockets#debug] Opening
connection with IPv6Address(TCP, '::1', 53172)
2017-01-09T15:39:21+0100 [maasserver.websockets.protocol#critical] Error on
request (18) machine.list: list index out of range
Traceback (most recent call last):
File "/usr/lib/python3.5/threading.py", line 862, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py",
line 824, in worker
return target()
File "/usr/lib/python3/dist-packages/twisted/_threads/_threadworker.py", line
46, in work
task()
File "/usr/lib/python3/dist-packages/twisted/_threads/_team.py", line 190, in
doWork
task()
--- <exception caught here> ---
File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line 246,
in inContext
result = inContext.theWork()
File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line 262,
in <lambda>
inContext.theWork = lambda: context.call(ctx, func, *args, **kw)
File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 118, in
callWithContext
return self.currentContext().callWithContext(ctx, func, *args, **kw)
File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 81, in
callWithContext
return func(*args,**kw)
File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py",
line 857, in callInContext
return func(*args, **kwargs)
File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py",
line 225, in wrapper
result = func(*args, **kwargs)
File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 603, in
call_within_transaction
return func_outside_txn(*args, **kwargs)
File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 422, in
retrier
return func(*args, **kwargs)
File "/usr/lib/python3.5/contextlib.py", line 30, in inner
return func(*args, **kwds)
File
"/usr/lib/python3/dist-packages/maasserver/websockets/handlers/machine.py",
line 182, in list
return super(MachineHandler, self).list(params)
File "/usr/lib/python3/dist-packages/maasserver/websockets/base.py", line
358, in list
for obj in objs
File "/usr/lib/python3/dist-packages/maasserver/websockets/base.py", line
358, in <listcomp>
for obj in objs
File "/usr/lib/python3/dist-packages/maasserver/websockets/base.py", line
205, in full_dehydrate
return self.dehydrate(obj, data, for_list=for_list)
File
"/usr/lib/python3/dist-packages/maasserver/websockets/handlers/machine.py",
line 187, in dehydrate
obj, data, for_list=for_list)
File "/usr/lib/python3/dist-packages/maasserver/websockets/handlers/node.py",
line 118, in dehydrate
data["pxe_mac_vendor"] = obj.get_pxe_mac_vendor()
File "/usr/lib/python3/dist-packages/maasserver/models/node.py", line 3021,
in get_pxe_mac_vendor
return get_vendor_for_mac(boot_interface.mac_address.get_raw())
File "/usr/lib/python3/dist-packages/maasserver/utils/mac.py", line 20, in
get_vendor_for_mac
return data.oui.registration().org
File "/usr/lib/python3/dist-packages/netaddr/eui/__init__.py", line 478, in
oui
return OUI(self.value >> 24)
File "/usr/lib/python3/dist-packages/netaddr/eui/__init__.py", line 98, in
__init__
self._parse_data(data, offset, size)
File "/usr/lib/python3/dist-packages/netaddr/eui/__init__.py", line 145, in
_parse_data
record['org'] = line.split(None, 2)[2]
builtins.IndexError: list index out of range
For now I have worked around the issue by catching IndexError in
"/usr/lib/python3/dist-packages/maasserver/utils/mac.py". After this
workaround the Nodes page started working but Dashboard page required
similar fix in "/usr/lib/python3/dist-
packages/provisioningserver/utils/network.py" in line 923
But this probably needs some investigation and fix - without the
workaround I cannot use MAAS.
** Affects: maas (Ubuntu)
Importance: Undecided
Status: New
** Description changed:
- Distro: Ubuntu 16.04
- MAAS version:
+ Distro: Ubuntu 16.10
+ MAAS version: 2.1.2+bzr5555-0ubuntu1~16.10.1 500
For some node MAC addresses (I have a relatively old servers) I am
unable to open MAAS dashboard page or Nodes page due to
"list index out of range"
error.
-
2017-01-09T15:39:21+0100 [maasserver.websockets.websockets#debug] Opening
connection with IPv6Address(TCP, '::1', 53172)
2017-01-09T15:39:21+0100 [maasserver.websockets.protocol#critical] Error on
request (18) machine.list: list index out of range
Traceback (most recent call last):
- File "/usr/lib/python3.5/threading.py", line 862, in run
- self._target(*self._args, **self._kwargs)
- File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py",
line 824, in worker
- return target()
- File "/usr/lib/python3/dist-packages/twisted/_threads/_threadworker.py",
line 46, in work
- task()
- File "/usr/lib/python3/dist-packages/twisted/_threads/_team.py", line 190,
in doWork
- task()
+ File "/usr/lib/python3.5/threading.py", line 862, in run
+ self._target(*self._args, **self._kwargs)
+ File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py",
line 824, in worker
+ return target()
+ File "/usr/lib/python3/dist-packages/twisted/_threads/_threadworker.py",
line 46, in work
+ task()
+ File "/usr/lib/python3/dist-packages/twisted/_threads/_team.py", line 190,
in doWork
+ task()
--- <exception caught here> ---
- File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line
246, in inContext
- result = inContext.theWork()
- File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line
262, in <lambda>
- inContext.theWork = lambda: context.call(ctx, func, *args, **kw)
- File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 118,
in callWithContext
- return self.currentContext().callWithContext(ctx, func, *args, **kw)
- File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 81,
in callWithContext
- return func(*args,**kw)
- File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py",
line 857, in callInContext
- return func(*args, **kwargs)
- File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py",
line 225, in wrapper
- result = func(*args, **kwargs)
- File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 603, in
call_within_transaction
- return func_outside_txn(*args, **kwargs)
- File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 422, in
retrier
- return func(*args, **kwargs)
- File "/usr/lib/python3.5/contextlib.py", line 30, in inner
- return func(*args, **kwds)
- File
"/usr/lib/python3/dist-packages/maasserver/websockets/handlers/machine.py",
line 182, in list
- return super(MachineHandler, self).list(params)
- File "/usr/lib/python3/dist-packages/maasserver/websockets/base.py", line
358, in list
- for obj in objs
- File "/usr/lib/python3/dist-packages/maasserver/websockets/base.py", line
358, in <listcomp>
- for obj in objs
- File "/usr/lib/python3/dist-packages/maasserver/websockets/base.py", line
205, in full_dehydrate
- return self.dehydrate(obj, data, for_list=for_list)
- File
"/usr/lib/python3/dist-packages/maasserver/websockets/handlers/machine.py",
line 187, in dehydrate
- obj, data, for_list=for_list)
- File
"/usr/lib/python3/dist-packages/maasserver/websockets/handlers/node.py", line
118, in dehydrate
- data["pxe_mac_vendor"] = obj.get_pxe_mac_vendor()
- File "/usr/lib/python3/dist-packages/maasserver/models/node.py", line 3021,
in get_pxe_mac_vendor
- return get_vendor_for_mac(boot_interface.mac_address.get_raw())
- File "/usr/lib/python3/dist-packages/maasserver/utils/mac.py", line 20, in
get_vendor_for_mac
- return data.oui.registration().org
- File "/usr/lib/python3/dist-packages/netaddr/eui/__init__.py", line 478, in
oui
- return OUI(self.value >> 24)
- File "/usr/lib/python3/dist-packages/netaddr/eui/__init__.py", line 98, in
__init__
- self._parse_data(data, offset, size)
- File "/usr/lib/python3/dist-packages/netaddr/eui/__init__.py", line 145, in
_parse_data
- record['org'] = line.split(None, 2)[2]
+ File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line
246, in inContext
+ result = inContext.theWork()
+ File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line
262, in <lambda>
+ inContext.theWork = lambda: context.call(ctx, func, *args, **kw)
+ File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 118,
in callWithContext
+ return self.currentContext().callWithContext(ctx, func, *args, **kw)
+ File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 81,
in callWithContext
+ return func(*args,**kw)
+ File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py",
line 857, in callInContext
+ return func(*args, **kwargs)
+ File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py",
line 225, in wrapper
+ result = func(*args, **kwargs)
+ File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 603, in
call_within_transaction
+ return func_outside_txn(*args, **kwargs)
+ File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 422, in
retrier
+ return func(*args, **kwargs)
+ File "/usr/lib/python3.5/contextlib.py", line 30, in inner
+ return func(*args, **kwds)
+ File
"/usr/lib/python3/dist-packages/maasserver/websockets/handlers/machine.py",
line 182, in list
+ return super(MachineHandler, self).list(params)
+ File "/usr/lib/python3/dist-packages/maasserver/websockets/base.py", line
358, in list
+ for obj in objs
+ File "/usr/lib/python3/dist-packages/maasserver/websockets/base.py", line
358, in <listcomp>
+ for obj in objs
+ File "/usr/lib/python3/dist-packages/maasserver/websockets/base.py", line
205, in full_dehydrate
+ return self.dehydrate(obj, data, for_list=for_list)
+ File
"/usr/lib/python3/dist-packages/maasserver/websockets/handlers/machine.py",
line 187, in dehydrate
+ obj, data, for_list=for_list)
+ File
"/usr/lib/python3/dist-packages/maasserver/websockets/handlers/node.py", line
118, in dehydrate
+ data["pxe_mac_vendor"] = obj.get_pxe_mac_vendor()
+ File "/usr/lib/python3/dist-packages/maasserver/models/node.py", line 3021,
in get_pxe_mac_vendor
+ return get_vendor_for_mac(boot_interface.mac_address.get_raw())
+ File "/usr/lib/python3/dist-packages/maasserver/utils/mac.py", line 20, in
get_vendor_for_mac
+ return data.oui.registration().org
+ File "/usr/lib/python3/dist-packages/netaddr/eui/__init__.py", line 478, in
oui
+ return OUI(self.value >> 24)
+ File "/usr/lib/python3/dist-packages/netaddr/eui/__init__.py", line 98, in
__init__
+ self._parse_data(data, offset, size)
+ File "/usr/lib/python3/dist-packages/netaddr/eui/__init__.py", line 145, in
_parse_data
+ record['org'] = line.split(None, 2)[2]
builtins.IndexError: list index out of range
+ For now I have worked around the issue by catching IndexError in
+ "/usr/lib/python3/dist-packages/maasserver/utils/mac.py". After this
+ workaround the Nodes page started working but Dashboard page required
+ similar fix in "/usr/lib/python3/dist-
+ packages/provisioningserver/utils/network.py" in line 923
- For now I have worked around the issue by catching IndexError in
"/usr/lib/python3/dist-packages/maasserver/utils/mac.py". After this workaround
the Nodes page started working but Dashboard page required similar fix in
"/usr/lib/python3/dist-packages/provisioningserver/utils/network.py" in line 923
-
-
- But this probably needs some investigation and fix - without the workaround I
cannot use MAAS.
+ But this probably needs some investigation and fix - without the
+ workaround I cannot use MAAS.
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1655049
Title:
List index out of range on main page and nodes page
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/maas/+bug/1655049/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs