| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2017-10-12 | |||
| 18:16:22 | mriedem | i looked, didn't see it | |
| 18:34:57 | mriedem | we should be able to remove the safe_connect decorator now can't we? https://github.com/openstack/nova/blob/master/nova/scheduler/client/report.py#L56 | |
| 18:35:04 | mriedem | that was for the newton->ocata transition | |
| 18:35:12 | mriedem | placement is definitely required at this point and a hard failure if it's not there | |
| 18:35:39 | mriedem | and in ocata nova-compute doesn't start either if placement isn't configured for the compute node | |
| 18:37:44 | dansmith | it's also confusing, | |
| 18:37:48 | dansmith | because 404 -> None | |
| 18:37:50 | dansmith | instead of explody | |
| 18:43:09 | mriedem | yeah that's what made me think of it, per gibi's comment in your change | |
| 18:43:24 | dansmith | yeah I just saw that | |
| 18:44:01 | mriedem | shall i patchify the removification? | |
| 18:44:56 | dansmith | if and as you wishitifcate | |
| 18:48:57 | edleafe | dansmith: question on serializing: for returning the list of lists of Selection objects over RPC, will they be automagically primitivized? Or do they need to be manually converted? | |
| 18:49:22 | dansmith | edleafe: should be automatic | |
| 18:49:30 | edleafe | dansmith: thx | |
| 18:49:35 | dansmith | edleafe: because of the NovaObjectSerializer we pass to rpc setup | |
| 18:57:53 | melwitt | couple of easy reviews if anyone can look https://review.openstack.org/#/c/509968 and https://review.openstack.org/#/c/510823 | |
| 18:59:02 | melwitt | gibi might be interested in the first one ^ | |
| 19:06:58 | mriedem | done and done | |
| 19:08:58 | melwitt | thx mriedem | |
| 19:52:14 | openstackgerrit | Merged openstack/nova master: Add snapshot id to the snapshot notifications https://review.openstack.org/453077 | |
| 20:31:42 | openstackgerrit | Merged openstack/nova master: Elevate existing RequestContext to get bandwidth usage https://review.openstack.org/509968 | |
| 20:32:22 | openstackgerrit | Merged openstack/nova master: Make expected notifications output easier to read in tests https://review.openstack.org/510823 | |
| 20:59:12 | mriedem | nova tastic meeting in 1 minute | |
| 20:59:32 | melwitt | be there or be a rhombus | |
| 21:05:04 | openstackgerrit | Ed Leafe proposed openstack/nova master: Add alternate hosts https://review.openstack.org/486215 | |
| 21:05:04 | openstackgerrit | Ed Leafe proposed openstack/nova master: Add Selection objects https://review.openstack.org/499239 | |
| 21:05:05 | openstackgerrit | Ed Leafe proposed openstack/nova master: Return Selection objects from the scheduler driver https://review.openstack.org/495854 | |
| 21:05:05 | openstackgerrit | Ed Leafe proposed openstack/nova master: Change RPC for select_destinations() https://review.openstack.org/510159 | |
| 21:05:06 | openstackgerrit | Ed Leafe proposed openstack/nova master: Move the claim_resources method to scheduler utils https://review.openstack.org/511357 | |
| 21:05:06 | openstackgerrit | Ed Leafe proposed openstack/nova master: WIP - Make conductor pass and use host_lists https://review.openstack.org/511358 | |
| 21:27:26 | openstackgerrit | Merged openstack/nova master: Nix bug msg from ConfGroupForServiceTypeNotFound https://review.openstack.org/511261 | |
| 21:29:53 | efried | woot. 5 rechecks. | |
| 21:35:11 | takashin | mriedem: Would you take a look at https://review.openstack.org/#/c/334732/ ? I fixed response codes in the spec. | |
| 21:36:47 | mriedem | takashin: i'll add it to my list | |
| 21:37:26 | takashin | mriedem: Thank you. | |
| 21:38:04 | mriedem | takashin: btw, you might be interested in this https://review.openstack.org/#/c/511351/ | |
| 21:38:14 | mriedem | really anything related to migration status i'm going to send your way now | |
| 21:39:32 | takashin | mriedem: okay. I will check it. | |
| 21:47:13 | openstackgerrit | Matt Riedemann proposed openstack/nova-specs master: Spec for flavor description https://review.openstack.org/501017 | |
| 21:48:55 | sapd_ | Hi everybody! | |
| 21:50:56 | sapd_ | I'm upgrade from openstack ocata to pike version. But I had an error when I use admin to list all server in all tenants | |
| 21:51:10 | sapd_ | The error is: TypeError: Can't upgrade a READER transaction to a WRITER mid-transaction | |
| 21:51:17 | mriedem | melwitt: ^ | |
| 21:53:03 | sapd_ | Please help me! @@ | |
| 21:54:41 | mriedem | sapd_: i think this https://review.openstack.org/#/c/511538/ | |
| 21:54:57 | mriedem | apply that patch | |
| 21:55:23 | melwitt | ah, yep. | |
| 21:55:31 | sapd_ | I saw this path. I use context.py from master branch, But It can't help me :(( | |
| 21:56:46 | melwitt | sapd_: did you restart services after applying the patch? did you apply it to all of your API hosts? | |
| 21:56:59 | mriedem | did you clean out stale pycs? | |
| 21:57:41 | sapd_ | yes. I did. | |
| 21:58:40 | sapd_ | But It doesn't change anything. | |
| 22:00:21 | mriedem | melwitt: would that also be needed in conductor since we check quota there too? | |
| 22:00:27 | melwitt | sapd_: do you have a trace you can pastebin? one thing that's weird is how there would be a write during a instance list | |
| 22:01:01 | melwitt | mriedem: yeah, you're right | |
| 22:01:22 | melwitt | sapd_: did you patch your nova-conductors too? | |
| 22:03:29 | sapd_ | No I just path on nova-api! does it matter? | |
| 22:04:16 | melwitt | sapd_: yes. nova-conductor runs the same code during instance create, so that needs to be patched too | |
| 22:06:47 | sapd_ | Hi melwitt, I got another error after apply that path: This service is older (v16) than the minimum (v22) version of the rest of the deployment. Unable to continue. | |
| 22:07:18 | dansmith | melwitt: that backport to pike won't affect instance listing will it? | |
| 22:07:45 | sapd_ | root@capt-admin-1:/opt# openstack server list --project CS-Labs | |
| 22:07:45 | sapd_ | This service is older (v16) than the minimum (v22) version of the rest of the deployment. Unable to continue. (HTTP 400) (Request-ID: req-308498b1-848c-4c2d-833a-9341e6f6586e) | |
| 22:08:28 | dansmith | sapd_: you have some unupdated api nodes I think | |
| 22:09:05 | melwitt | dansmith: thinking ... about whether a concurrent boot request could cause that in an instance list. it seems like not because it should be the request that wanted to write that fails | |
| 22:09:29 | sapd_ | I have three nova-api nodes, But I stop two nodes, Only one node up now. | |
| 22:09:31 | melwitt | I'm currently not understanding how it's the instance list that could fail with an attempt to upgrade to write | |
| 22:09:33 | dansmith | melwitt: instance list didn't use scatter/gather in pike | |
| 22:10:15 | mriedem | sapd_: you're getting that when trying to start up those other 2 services? or the one that is upgraded? | |
| 22:11:31 | mriedem | although we filter out osapi_compute services from that api... | |
| 22:11:54 | dansmith | mriedem: it's also the kind of thing that could be misinterpreted | |
| 22:13:58 | melwitt | dansmith: yeah, I was thinking if an instance list is trying to use the cell cache and some other boot request comes in and mucks with the DB transaction context it could cause instance list to fail | |
| 22:14:20 | melwitt | even if instance list isn't using scatter gather, the quota check for the boot request does | |
| 22:14:46 | dansmith | I'm not sure what is shared between those two operations that would cause such a thing | |
| 22:14:57 | dansmith | it'd be a pretty big problem if they were related like that no? | |
| 22:15:01 | sapd_ | The one is upgraded, others node is not upgrade yet | |
| 22:15:28 | melwitt | the cell cache contains the DB transaction context manager and each transaction is supposed to be one thread at a time | |
| 22:15:47 | openstackgerrit | OpenStack Proposal Bot proposed openstack/os-vif stable/newton: Updated from global requirements https://review.openstack.org/373293 | |
| 22:15:50 | dansmith | melwitt: the context manager but not the context | |
| 22:16:11 | dansmith | melwitt: just like when we had only one context manager, multiple requests from multiple users don't trample on each other | |
| 22:16:30 | dansmith | melwitt: your fix is just making sure that we don't hand a request context to one thread an then modify that context whilst running | |
| 22:17:52 | melwitt | dansmith: sorry, it's confusing. but what I found is that each decorated (with context manager) DB API function creates a transaction context and before the locking was in the right place, that transaction context would be hijacked by another thread, mid-transaction | |
| 22:18:38 | dansmith | melwitt: that's because we switched the context.db_connection it was using right? | |
| 22:18:58 | dansmith | so it started something with one and then entered another oslo context managed method with a different one | |
| 22:19:21 | dansmith | melwitt: what you're describing would mean that two users hitting the api simultaneously aren't properly isolated from each other | |
| 22:21:20 | melwitt | dansmith: yeah ... I see what you're saying. I was looking through the oslo.db code and put print statements in there, and saw the transaction context object that's created-on-the-fly and cached per transaction was getting used by another DB access before it was finished | |
| 22:21:46 | dansmith | melwitt: right, because we were handing them contexts that were being modified later | |
| 22:21:53 | dansmith | melwitt: so we hand the first thread a context, | |
| 22:22:11 | dansmith | then we change that context when we hand the second/last one its context | |
| 22:22:30 | dansmith | so the first one and the second one are using the same context.db_connection because they share the same context object | |
| 22:22:32 | dansmith | after your change, | |
| 22:22:42 | dansmith | the target_cell yields a new copied context, with the change made, | |
| 22:22:51 | dansmith | and they start their db session with that context | |
| 22:23:03 | dansmith | *they each start | |
| 22:24:14 | dansmith | let me say that again but hopefully more clear: | |
| 22:24:29 | dansmith | let's say we have two cells | |
| 22:24:33 | melwitt | haha, sorry. I have found the whole thing very confusing, even while I was working on it | |
| 22:25:19 | dansmith | hang on a sec, I'm not sure the above is quite right | |
| 22:25:28 | dansmith | it doesn't change the point, but just a sec | |
| 22:25:34 | melwitt | k | |