[2.0b3] Traceback deleting fabric

Bug #1573492 reported by Michael Foord on 2016-04-22
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MAAS
Critical
Mike Pontillo

Bug Description

Attempting to delete a fabric (which got added when I added NICs and subnets to the controller which I subsequently removed - both from the machine itself and from maas):

Using beta3 of maas 2 from experimental3 ppa:

<ProtectedError instance at 0x7fcc7bc8ed68 with str error: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/django/db/models/fields/related.py", line 600, in __get__ rel_obj = getattr(instance, self.cache_name) AttributeError: 'Subnet' object has no attribute '_vlan_cache' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/twisted/python/reflect.py", line 443, in safe_str return str(o) File "/usr/lib/python3/dist-packages/django/db/models/query.py", line 141, in __repr__ return repr(data) File "/usr/lib/python3/dist-packages/django/db/models/base.py", line 496, in __repr__ u = six.text_type(self) File "/usr/lib/python3/dist-packages/maasserver/models/subnet.py", line 373, in __str__ self.name, self.cidr, self.vlan.vid) File "/usr/lib/python3/dist-packages/django/db/models/fields/related.py", line 613, in __get__ qs = qs.filter(**params) File "/usr/lib/python3/dist-packages/django/db/models/query.py", line 679, in filter return self._filter_or_exclude(False, *args, **kwargs) File "/usr/lib/python3/dist-packages/django/db/models/query.py", line 697, in _filter_or_exclude clone.query.add_q(Q(*args, **kwargs)) File "/usr/lib/python3/dist-packages/django/db/models/sql/query.py", line 1310, in add_q clause, require_inner = self._add_q(where_part, self.used_aliases) File "/usr/lib/python3/dist-packages/django/db/models/sql/query.py", line 1338, in _add_q allow_joins=allow_joins, split_subq=split_subq, File "/usr/lib/python3/dist-packages/django/db/models/sql/query.py", line 1156, in build_filter value, lookups, used_joins = self.prepare_lookup_value(value, lookups, can_reuse, allow_joins) File "/usr/lib/python3/dist-packages/django/db/models/sql/query.py", line 1021, in prepare_lookup_value if (connections[DEFAULT_DB_ALIAS].features.interprets_empty_strings_as_nulls and File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 595, in __getattr__ "disabled." % threading.currentThread().name) RuntimeError: Database connections in this thread (MainThread) are disabled. > 0 36 fabric.delete [object Object]

In rackd.log I see this error:

2016-04-22 10:14:12+0100 [-] Unhandled Error
 Traceback (most recent call last):
   File "/usr/lib/python3/dist-packages/twisted/application/app.py", line 364, in startReactor
     self.config, oldstdout, oldstderr, self.profiler, reactor)
   File "/usr/lib/python3/dist-packages/twisted/application/app.py", line 285, in runReactorWithLogging
     reactor.run()
   File "/usr/lib/python3/dist-packages/twisted/internet/base.py", line 1194, in run
     self.mainLoop()
   File "/usr/lib/python3/dist-packages/twisted/internet/base.py", line 1203, in mainLoop
     self.runUntilCurrent()
 --- <exception caught here> ---
   File "/usr/lib/python3/dist-packages/twisted/internet/base.py", line 825, in runUntilCurrent
     call.func(*call.args, **call.kw)
   File "/usr/lib/python3/dist-packages/tftp/bootstrap.py", line 207, in timedOut
     self.cancel()
   File "/usr/lib/python3/dist-packages/tftp/bootstrap.py", line 202, in cancel
     self.transport.stopListening()
 builtins.AttributeError: 'NoneType' object has no attribute 'stopListening'

2016-04-22 10:14:12+0100 [-] Timed during option negotiation process
2016-04-22 10:14:12+0100 [-] Unhandled Error
 Traceback (most recent call last):
   File "/usr/lib/python3/dist-packages/twisted/application/app.py", line 364, in startReactor
     self.config, oldstdout, oldstderr, self.profiler, reactor)
   File "/usr/lib/python3/dist-packages/twisted/application/app.py", line 285, in runReactorWithLogging
     reactor.run()
   File "/usr/lib/python3/dist-packages/twisted/internet/base.py", line 1194, in run
     self.mainLoop()
   File "/usr/lib/python3/dist-packages/twisted/internet/base.py", line 1203, in mainLoop
     self.runUntilCurrent()
 --- <exception caught here> ---
   File "/usr/lib/python3/dist-packages/twisted/internet/base.py", line 825, in runUntilCurrent
     call.func(*call.args, **call.kw)
   File "/usr/lib/python3/dist-packages/tftp/bootstrap.py", line 207, in timedOut
     self.cancel()
   File "/usr/lib/python3/dist-packages/tftp/bootstrap.py", line 202, in cancel
     self.transport.stopListening()
 builtins.AttributeError: 'NoneType' object has no attribute 'stopListening'

Related branches

Michael Foord (mfoord) wrote :

Note that the initial traceback is in the web ui when I try to delete the fabric.

summary: - Traceback deleting fabric
+ [2.0b3] Traceback deleting fabric
Changed in maas:
importance: Undecided → Critical
status: New → Triaged
Mike Pontillo (mpontillo) wrote :

The TFTP backtrace in rackd.log looks unrelated; most likely a bug in python3-txtftp.

I'm guessing if you look in regiond.log you'll see a "nicer" version of the first backtrace. But I think I know what the problem is, so don't worry about grabbing it.

Changed in maas:
assignee: nobody → Mike Pontillo (mpontillo)
milestone: none → 2.0.0
Changed in maas:
status: Triaged → Fix Committed
Changed in maas:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers