Merge lp:~ltrager/maas/lp1566419 into lp:~maas-committers/maas/trunk
Proposed by
Lee Trager
Status: | Merged | ||||||||
---|---|---|---|---|---|---|---|---|---|
Approved by: | Lee Trager | ||||||||
Approved revision: | no longer in the source branch. | ||||||||
Merged at revision: | 4897 | ||||||||
Proposed branch: | lp:~ltrager/maas/lp1566419 | ||||||||
Merge into: | lp:~maas-committers/maas/trunk | ||||||||
Diff against target: |
195 lines (+110/-3) 5 files modified
src/maasserver/api/rackcontrollers.py (+14/-0) src/maasserver/api/tests/test_rackcontroller.py (+10/-0) src/maasserver/models/node.py (+32/-1) src/maasserver/models/tests/test_node.py (+52/-0) src/provisioningserver/rpc/cluster.py (+2/-2) |
||||||||
To merge this branch: | bzr merge lp:~ltrager/maas/lp1566419 | ||||||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Gavin Panella (community) | Approve | ||
Review via email: mp+291066@code.launchpad.net |
Commit message
Output boot_resources_
To post a comment you must log in.
This seems like an expensive operation to be doing every time we
serialise a rack model object. What is the use case? Perhaps this would
be better modelled as an operation instead of a field?
Then, it's doing non-database IO (RPC calls) within a transaction, which
is bad because it keeps the transaction open for an indefinite time.
Plus, if the transaction must be retried, the non-database IO must be
done again.
These latter points are really hard to fix from within a Piston/Django
handler. MAAS is littered with examples of them, and to fix them we need
a degree of change that's way way out of scope right now. So, you get a
pass on that.
However, the first point, and the points I make in the diff, do need
fixing.