/srv/irclogs.ubuntu.com/2014/02/07/#maas.txt

=== CyberJacob is now known as CyberJacob|Away
bigjoolsmorning ticking01:50
bigjoolserrr01:50
bigjoolsmorning jtv01:51
jtvHi bigjools01:51
jtvautocomplete?01:51
bigjoolsno just incompetence01:55
bigjoolsjtv1: why do we have a nodegroupinterface created in nodegroup.new()?02:40
=== jtv1 is now known as jtv
jtvUnpleasant, isn't it?  Hysterical raisins.02:40
bigjoolsit is responsible for the interface that has no name02:40
bigjoolsI removed it and am running tests, there's a ton of failures02:40
jtvI hate it too.  Complicates lots of tests, and the ones it simplifies, rely on the implicitness of it all.02:40
bigjoolsblech02:41
jtvIt would be very costly indeed to change.02:41
jtvSheer number of tests that need updating...02:41
jtvUpdating tests on autopilot would risk a lot of false negatives I think.02:42
bigjoolsyes02:44
bigjoolsbut this empty interface is no use to man nor beast02:44
jtvIs it really empty though?  I thought NodeGroup.new() took parameters that it passed on to the NGI?02:46
bigjoolsbut not the name02:48
bigjoolsso it's useless02:48
bigjoolsBTW:02:48
bigjools  File "/home/ubuntu/trunk/src/maasserver/preseed.py", line 99, in get_curtin_installer_url02:48
bigjools    node.architecture + "/" + series +02:48
bigjoolsTypeError: coercing to Unicode: need string or buffer, NoneType found02:48
bigjoolsnot sure why I am getting those all of a sudden02:48
jtvI made changes there, though as far as I could tell, the None was always a risk there.02:49
jtvpick_cluster_controller_address() must be returning None.  Which can happen.02:51
jtvJust not in any case where the old code didn't also return None.02:52
bigjoolsyegads is that how deep this insanity goes...02:53
jtvAhhhh, maybe the nodegroupinterface has a null IP address?02:53
jtvOhhhh, what does NodeGroupInterface.get_network() do in that case?02:54
jtvSorry, .network02:54
jtvI wonder why it uses the broadcast address.  But no matter.02:55
jtvWhat may be happening is that your node is in the network defined by a nodegroupinterface whose ip field is None.02:55
jtvThe ip field is not allowed to be null...  so not that.02:57
jtvThe only cases where pick_cluster_controller_address can return None AFAICS are: NodeGroupInterface.ip is None, or the NodeGroup has no NodeGroupInterfaces.02:57
jtvWhu!?  NodeGroupInterface.network has some details that puzzle me.03:00
jtvImplicit conversions to bool, construction of an IPNetwork from another IPNetwork...03:02
jtvIPNetwork("%s/%s" % (IPNetwork("%s/%s" % (broadcast, netmask)), netmask) → why?03:03
jtvAh, missed one:03:07
jtvIPNetwork("%s/%s" % (IPNetwork("%s/%s" % (broadcast, netmask)).network, netmask)03:08
jtvLooks like the intent is to strip the host bits off the network address.03:09
bigjoolsdoesn't IPNetwork have functions to do that?03:41
jtvYes.03:41
bigjoolsalso should we remodel NGI to use a Network FK?03:41
jtvI've got a branch here that simplifies that, and provides a wrapper for the error-prone IPNetwork constructor.03:41
jtvYou're right that a foreign key makes sense...  Unfortunately the situation with the broadcast address gets a bit convoluted.03:43
jtvI don't see why we store the broadcast address at all.03:43
jtvYou see what I mean?  Weird to have a FK to Network, _and_ a broadcast IP.03:43
jtvTechnically just the IP address might be enough — call it ip plus FK.03:44
bigjoolsjtv: we are going to need a FK at some point because we need to track which NIC the network lives on03:44
bigjoolsoh no we don't03:45
bigjoolssorry mixing up my ngi and node interfaces03:45
bigjoolsjtv: anyway broadcast as a separate field becomes irrelevant03:46
jtvIt'd be nice to ditch it...03:51
=== CyberJacob|Away is now known as CyberJacob
gmbjtv, rvba, allenap: Anyone know why bin/test.maas would be hanging after:08:31
gmbnosetests maasserver.tests.test_power_parameters --exclude=provisioningserver --exclude=maastesting --exclude=maascli --verbosity=308:31
gmbnose.config: INFO: Ignoring files matching ['^\\.', '^_', '^setup\\.py$']08:31
gmbnose.config: INFO: Excluding tests matching ['provisioningserver', 'maastesting', 'maascli']08:31
gmb?08:31
jtvgmb: database in use?08:32
jtve.g. if you have a "make harness" session open in another shell.08:32
gmbjtv: AAAAH.08:34
gmbjtv: Yep, thanks.08:34
jtv\o/08:34
=== CyberJacob is now known as CyberJacob|Away
jtvrvba: from this log you pasted, http://paste.ubuntu.com/6890145/ — is there a corresponding GET on interfaces/eth0/ before the PUT?09:56
jtvIf there is, there may be a client-side race condition.09:56
rvbaI don't remember one.09:57
rvba(I don't have the full log)09:57
jtvBut if there isn't, and we just do a PUT that updates a few attributes and leaves the others unchanged, then it would have to happen in a transaction.09:57
jtvI'll look at maas-test code again.09:57
rvbajtv: let's talk about this in a hangout if you don't mind.09:58
gmbInteresting, test tools doesn't appear to have a facility to say "always show the details of the test run, even on success." Well, isn't that wizard?10:23
* gmb hacks.10:23
=== freeflying is now known as freeflying_away
roaksoaxbigjools: around?23:07

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!