Earlier  
Posted Nick Remark
#openstack-nova - 2017-10-23
17:10:55 efried or you got this?
17:11:09 mriedem find out where "openstack-specs-jobs" is defined
17:11:42 mriedem looks like it's in openstack-zuul-jobs
17:11:57 mriedem there is a post job "publish-openstack-specs"
17:12:01 mriedem that should publish the latest
17:12:05 mriedem not sure if that's broken or what
17:12:49 mriedem efried: you should follow up in -infra
17:12:56 efried mriedem ack
17:19:48 mriedem dansmith: want to push this through the specs repo to trigger the publish job? https://review.openstack.org/#/c/456756/
17:28:29 dansmith mriedem: done
17:40:36 openstackgerrit Merged openstack/nova-specs master: Add a new section: "Upgrade impact" to the template https://review.openstack.org/456756
18:07:06 mriedem efried: ^ should have flushed a post job
18:07:21 efried mriedem Not yet https://specs.openstack.org/openstack/nova-specs/specs/queens/index.html
18:07:25 efried been watching.
18:28:16 mriedem dansmith: remember this test? https://github.com/openstack/nova/blob/master/nova/tests/unit/db/test_sqlalchemy_migration.py#L379
18:28:50 mriedem it's causing me some problems with the flavor.description stuff because it doesn't run the schema change that adds the description column, but it creates a flavor using the object, which has a flavor attribute now,
18:29:00 mriedem so trying to think of non terrible ways to resolve that in the test
18:29:28 dansmith mriedem: create the flavor with the model directly
18:30:07 mriedem yeah was just thinking about bypassing the object and using nova.objects.Flavor._flavor_crate
18:30:10 mriedem *create
18:30:26 dansmith yeah
18:36:18 mriedem ah that doesn't work, something to do with the sqla model
18:40:49 mriedem i could manually add the flavors.description column in the test itself, which isn't fun but not sure what else can be done
18:48:15 dansmith what fails when using it directly?
18:56:37 mriedem dansmith: same thing as via the object
18:56:38 mriedem oslo_db.exception.DBError: (sqlite3.OperationalError) table flavors has no column named description [SQL: u'INSERT INTO flavors (created_at, updated_at, name, memory_mb, vcpus, root_gb, ephemeral_gb, flavorid, swap, rxtx_factor, vcpu_weight, disabled, is_public, description) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'] [parameters: ('2017-10-23 18:35:19.692208', None, 'foo', 123, 1, 1, None, 'm1.foo', 0, 1.0, None, 0,
18:56:38 mriedem one)]
18:57:00 dansmith is it not nullable?
18:57:07 mriedem it is
18:57:22 mriedem in that test,
18:57:33 mriedem we haven't run the table schema change to add the column to the flavors table
18:57:35 dansmith and you're not setting it on the model rght?
18:57:36 dansmith right
18:57:38 mriedem right
18:57:40 dansmith huh
18:57:47 mriedem i think the model is defaulting it to None?
18:57:47 dansmith I would have thought that would work
18:58:08 dansmith so you could easily just set without the orm
18:58:20 dansmith i.e. table.insert(...)
18:58:31 mriedem yeah...
18:58:33 mriedem will try that
19:04:32 mriedem issue the 2nd: Flavor.save() isn't remotable, so preferences on either making that remotable or adding a new save_updates() remotable or something? Flavor.save() calls off to remotables for updating projects and extra_specs
19:04:46 mriedem not sure if we can add remotable for Flavor.save() now or not
19:04:51 mriedem guessing that's bad form
19:08:06 openstackgerrit Eric Fried proposed openstack/nova master: Include /resource_providers/uuid/allocations link https://review.openstack.org/499826
19:09:32 dansmith mriedem: computes are the only things that really need things to be remotable, and they can't talk to conductors that could do any flavor saving
19:15:47 mriedem table.insert().execute(values) works btw - easier than the other hacks i was thinking of
19:15:48 mriedem thanks
19:16:32 dansmith cool
19:44:32 mriedem can i use "彩虹和独角兽" as a description in tests?
19:45:16 mikal yes
19:45:21 mriedem i don't even know if we encode those first
19:45:30 openstackgerrit Michael Still proposed openstack/nova master: Move the idmapshift binary into privsep. https://review.openstack.org/495541
19:45:30 openstackgerrit Michael Still proposed openstack/nova master: Move loopback setup and removal to privsep. https://review.openstack.org/495664
19:45:31 openstackgerrit Michael Still proposed openstack/nova master: Move nbd commands to privsep. https://review.openstack.org/500351
19:45:31 openstackgerrit Michael Still proposed openstack/nova master: Move kpartx calls to privsep. https://review.openstack.org/500354
19:45:32 openstackgerrit Michael Still proposed openstack/nova master: Move blkid calls to privsep. https://review.openstack.org/500398
19:46:05 mikal sdague: I done fixed that release note for you
19:51:42 dansmith mriedem: niiiice
19:52:10 mriedem rainbows and unicorns are somehow more magical in mandarin
20:01:03 sdague mikal: cool, I'll circle in a minute
20:04:11 efried Anyone know if we're supposed to handle queryparams with multiple values in the placement API?
20:04:35 efried E.g. ?resources=VCPU:1,MEMORY_MB:2048&resources=DISK_GB:5
20:05:06 efried edleafe dansmith jaypipes cdent ^ ?
20:05:27 mikal sdague: yeah, no rush
20:05:32 efried The code doesn't appear to be set up to do so, but I could be reading it wrong fo sho.
20:06:33 edleafe efried: my understanding is that each resource requires its own resource=
20:07:45 efried edleafe If that's the case, I'm *definitely* reading the code wrong. Let me grab some links...
20:09:34 efried edleafe We grab the 'resources' qparam value here: https://github.com/openstack/nova/blob/a067f8c64654a058e04e41389019bd6ff5841cdc/nova/api/openstack/placement/handlers/allocation_candidate.py#L166
20:09:47 efried edleafe Then we start chewing it up here: https://github.com/openstack/nova/blob/a067f8c64654a058e04e41389019bd6ff5841cdc/nova/api/openstack/placement/util.py#L223-L230
20:10:00 efried The latter chunk appears to be expecting a string, never a list
20:10:39 efried And if I'm understanding MultiDict correctly, you'll get a list if you do GET['resources'] and the qstring was like my example above.
20:10:53 edleafe efried: yeah, I'm looking at normalize_resources_qs_param(), and it does look like you can do what you asked
20:11:13 efried edleafe can or can't?
20:12:03 edleafe can: multiple RCs per resource=. I don't see where multiple resource= is supported
20:12:23 efried edleafe Right, in my example DISK_GB was specified in a separate resources=
20:13:07 edleafe I would have to run a few tests with the combinations to say for sure.
20:13:23 efried edleafe oh, interestingly, when you say MultiDict[key] you don't get a list. You get the last one.
20:13:48 efried edleafe You have to use getall to get the list.
20:14:00 efried So: not supported. Good to know.
20:14:35 edleafe too bad cdent isn't here. I remember the back-and-forth we had, but not why we settled on the current approach. He might remember that.
20:16:42 efried edleafe I will be sure to follow up with him on that at some point; but for now it's enough for me to know where we stand.
21:07:44 mriedem dansmith: just noticed something strange - not sure if this was intentional or not,
21:07:57 mriedem but was writing a test where i create an instance,
21:08:14 mriedem then i set instance.flavor and assert the only changed field is the flavor
21:08:15 mriedem self.assertEqual(['flavor'], list(instance.obj_what_changed()))
21:08:33 mriedem that failed with: testtools.matchers._impl.MismatchError: ['flavor'] != ['ec2_ids', 'flavor']
21:09:07 mriedem it looks like on instance.create() we load ec2_ids and then reset the field, but because we aren't recursively resetting the EC2Ids object, it still shows up in the obj_what_changed() results
21:10:49 dansmith ah might be
21:10:51 mriedem so on a subsequent instance.save() we'll call _save_ec2_ids but that's a no-op, so it's not like it hurts anything,
21:10:55 mriedem but it's unnecessary processing
21:13:39 trozet hi all. I was wondering if someone can help me with an issue. Ocata + 5 ironic nodes. I go to deploy instances (via tripleO) and see Starting with 0 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:70
21:13:55 trozet all ironic nodes are in hypervisor-list
21:18:00 efried trozet I think you want to try the #openstack channel.
21:31:11 mriedem hmm, shouldn't any model update result in an auto-update to the updated_at field?
21:31:20 mriedem given: updated_at = Column(DateTime, onupdate=lambda: timeutils.utcnow())
21:35:34 mriedem ha, nvm
21:35:49 mriedem something something test assertions doing what you wanted them to do
21:40:36 openstackgerrit Matt Riedemann proposed openstack/nova master: Add Flavor.description attribute https://review.openstack.org/514371
21:47:46 mwynne Hi guys. I'm trying to resize an instance but it just goes to an ACTIVE state and never resizes.

Earlier   Later