| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-10-11 | |||
| 16:06:24 | dansmith | I'll call it a "testing gibi's attention to detail" easter egg | |
| 16:06:31 | gibi | it worked :) | |
| 16:06:56 | dansmith | yeah you passed the test this time | |
| 16:07:41 | gibi | I'm wondering was there other tests I did not even notice?! | |
| 16:09:05 | dansmith | gibi: muahah :D | |
| 16:09:12 | gibi | stephenfin: do you want me to refactor the fake image service ? https://review.opendev.org/#/c/688132/1/nova/tests/functional/test_boot_from_volume.py@203 | |
| 16:11:34 | gibi | stephenfin: https://github.com/openstack/nova/blob/ef6e49d5bc721840b331c87c6391a69309253ade/nova/tests/unit/image/fake.py#L45 | |
| 16:12:18 | stephenfin | gibi: If you have time, but I won't block on that now | |
| 16:12:48 | gibi | stephenfin: I can do that later. making a todo... | |
| 16:13:02 | stephenfin | tbh, I'd like to stop using the 'stub_out_image_service' function entirely since it obscures things | |
| 16:13:15 | stephenfin | I've a big functional test cleanup in-progress. Can include that | |
| 16:15:28 | gibi | stephenfin: OK, I will ping you when I reach my todo to see if you have already started on it | |
| 16:15:40 | stephenfin | (y) | |
| 16:16:10 | stephenfin | +2 | |
| 16:18:25 | gibi | Im leaving for today. Have a nice weeked you all! | |
| 16:22:17 | stephenfin | O/ | |
| 16:53:47 | openstackgerrit | Dan Smith proposed openstack/nova master: Fix up some feedback on image precache support https://review.opendev.org/688172 | |
| 16:53:47 | openstackgerrit | Dan Smith proposed openstack/nova master: WIP: Log some stats for image pre-cache https://review.opendev.org/688173 | |
| 17:37:35 | openstackgerrit | Dan Smith proposed openstack/nova master: Add image caching API for aggregates https://review.opendev.org/687140 | |
| 17:37:36 | openstackgerrit | Dan Smith proposed openstack/nova master: WIP: Add image precaching docs for aggregates https://review.opendev.org/687348 | |
| 17:37:37 | openstackgerrit | Dan Smith proposed openstack/nova master: Fix up some feedback on image precache support https://review.opendev.org/688172 | |
| 17:37:37 | openstackgerrit | Dan Smith proposed openstack/nova master: WIP: Log some stats for image pre-cache https://review.opendev.org/688173 | |
| 18:06:28 | openstackgerrit | Stephen Finucane proposed openstack/nova master: setup.cfg: Cleanup https://review.opendev.org/677969 | |
| 18:06:29 | openstackgerrit | Stephen Finucane proposed openstack/nova master: Stop testing Python 2 https://review.opendev.org/687954 | |
| 18:13:30 | melwitt | o/ | |
| 18:19:49 | openstackgerrit | Stephen Finucane proposed openstack/nova master: Stop testing Python 2 https://review.opendev.org/687954 | |
| 18:28:02 | openstackgerrit | Merged openstack/nova master: Add cache_image() driver method and libvirt implementation https://review.opendev.org/687137 | |
| 18:41:42 | openstackgerrit | Merged openstack/nova master: Add cache_image() support to the compute/{rpcapi,api,manager} https://review.opendev.org/687138 | |
| 18:52:19 | melwitt | zzzeek: hey, are you around? | |
| 18:52:32 | zzzeek | melwitt: heya | |
| 18:52:42 | melwitt | o. | |
| 18:52:47 | melwitt | o/ | |
| 18:52:51 | melwitt | question for you | |
| 18:53:18 | zzzeek | yep | |
| 18:55:02 | melwitt | zzzeek: do you happen to know why if this write adds a record in a single request with project_id=NULL, a non-independent read of records matching project_id=NULL will return no rows? https://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/api.py#L4101 | |
| 18:55:45 | zzzeek | melwitt: well in SQL there is no "= NULL" that works, it has to be "is NULL" | |
| 18:55:54 | zzzeek | melwitt: SQLAlchemy makes that conversion in most cases | |
| 18:56:12 | zzzeek | melwitt: however, sometimes it cant | |
| 18:56:32 | zzzeek | melwitt: depends on context | |
| 18:57:21 | melwitt | zzzeek: I did learn that recently and found that our query does make the conversion correctly. what I found is that if the insert of the record happens with "independent" and a read *without* independent happens in the same request looking for "is NULL" it will not find the record that was written. it behaves as though the inserted record is not reflected in the current session | |
| 18:57:27 | zzzeek | melwitt: im not seeing what the query is here but if you were to do query(Foo).with_parent(Bar(id=None)) you might see that this does not in fact return Foo with bar_id=NULL | |
| 18:58:21 | zzzeek | melwitt: ah well that is a transaction isolation issue | |
| 18:58:26 | melwitt | and if I use "independent" in the read, it _will_ find the record. that could make some sense if the session caches stuff it knows about in the current transaction | |
| 18:58:55 | melwitt | the weird thing is that it does not behave this way if it is not project=NULL. when project_id is not NULL, it will find the record fine without using "independent" on the read | |
| 18:59:08 | zzzeek | melwitt: OK so there are two levels to that. the first is, if you want to assume your transaction is non-isolated, you can say query(MyObject).populate_existing().filter(...)... | |
| 18:59:50 | zzzeek | melwitt: that asusmes you already have MyObject loaded and some related part of it is not being updated | |
| 19:00:15 | zzzeek | melwitt: if it is straight up, query(MyObject) returns no row, and the row is there, then this would be like a repeatable read problem | |
| 19:01:09 | zzzeek | melwitt: basically if transaction A starts, then you do sometihgn in transaction B, you can't rely that transaction A can see what you just committed in B | |
| 19:01:21 | melwitt | ohhhh | |
| 19:01:26 | zzzeek | melwitt: with a list of caveats a mile long | |
| 19:03:00 | melwitt | so transaction A inserts the record, transaction B reads the record and doesn't see it, yet transaction C (if added) will see what A committed. is the behavior I'm observing | |
| 19:04:55 | zzzeek | melwitt: yes if transaction C started after A was finished doing its work. transaction A would only have had to have committed if isolatoin level is serializable which it is not | |
| 19:05:21 | zzzeek | melwitt: it's mostly about, im a transaction, I read some data, now that data is part of a "version" that i will forever see until my transaction ends | |
| 19:05:49 | zzzeek | if i didnt read that data yet, then i dont know anything about it and based on isolation i might see the work of other transations | |
| 19:06:18 | zzzeek | also my previous line about A not having to commit is incorrect. it has to have committed unless isoaltion is read uncommitted, or if theres some quirky mysql behavior going on | |
| 19:08:24 | zzzeek | melwitt: yeah mysql is doing repeatable read by default over here. transaction A runs INSERT, but hasnt committed, B can see nothing no matter when it was started | |
| 19:08:40 | zzzeek | A then commits. B can only see something if it hasn't tried to read that table already | |
| 19:09:40 | melwitt | zzzeek: that makes sense. it seems to work fine though when NULL are not involved in the where of the read. I would have thought it should act the same in both cases | |
| 19:10:22 | zzzeek | melwitt: Im not sure about the NULL part. i would need to see the SQL conversation in detail | |
| 19:11:38 | melwitt | oh you know what, it's because there's a unique constraint on the project_id, so the second insert won't go through | |
| 19:11:48 | melwitt | (I keep mixing everything up in my head) | |
| 19:12:55 | melwitt | er, it will not read the newly inserted record, same as the NULL case. it's just that I can't detect on the surface that it did that, because the evidence was creation of a dupe project_id record | |
| 19:13:29 | melwitt | tl;dr it does act the same no matter the project_id | |
| 19:15:04 | zzzeek | melwitt: OK if it works for you :) | |
| 19:17:17 | melwitt | zzzeek: haha :) well, it seems to resolve find if I do the read in a new transaction C, but based on what I understand that's not guaranteed to do what I want. if the insert doesn't commit by the time C tries to read, it will still get 0 rows yeah? | |
| 21:25:58 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |
| 21:25:58 | openstack | bug 1824435 in OpenStack Compute (nova) stein "fill_virtual_interface_list migration fails on second attempt" [Medium,Triaged] https://launchpad.net/bugs/1824435 | |
| 21:25:58 | openstackgerrit | melanie witt proposed openstack/nova master: Use a separate transaction to read default security group https://review.opendev.org/688206 | |
| #openstack-nova - 2019-10-12 | |||
| 02:18:37 | openstackgerrit | Arthur Dayne proposed openstack/nova master: libvirt:volume:Disallow AIO=native when no 'O_DIRECT' is available https://review.opendev.org/682772 | |
| 05:37:03 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |
| 05:37:03 | openstack | bug 1824435 in OpenStack Compute (nova) "fill_virtual_interface_list migration fails on second attempt" [Medium,In progress] https://launchpad.net/bugs/1824435 - Assigned to melanie witt (melwitt) | |
| 05:37:03 | openstackgerrit | melanie witt proposed openstack/nova master: Use a separate transaction to read default security group https://review.opendev.org/688206 | |
| 07:13:56 | openstackgerrit | pengyuesheng proposed openstack/os-resource-classes master: Bump the openstackdocstheme extension to 1.20 https://review.opendev.org/688249 | |
| 11:53:10 | openstackgerrit | Merged openstack/nova master: libvirt: Change _compare_cpu to raise InvalidCPUInfo https://review.opendev.org/687808 | |
| 15:21:25 | SonPham | hi | |
| 15:21:47 | SonPham | i have review my blue-print to nova-specs | |
| 15:22:06 | SonPham | and add core-reviewer. when they review for me? | |
| 16:53:28 | openstackgerrit | Stephen Finucane proposed openstack/nova master: Stop testing Python 2 https://review.opendev.org/687954 | |
| #openstack-nova - 2019-10-13 | |||
| 01:41:03 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |
| 01:41:03 | openstack | bug 1824435 in OpenStack Compute (nova) "fill_virtual_interface_list migration fails on second attempt" [Medium,In progress] https://launchpad.net/bugs/1824435 - Assigned to melanie witt (melwitt) | |
| 01:41:03 | openstackgerrit | melanie witt proposed openstack/nova master: Use a separate transaction to read default security group https://review.opendev.org/688206 | |
| 04:20:38 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |
| 04:20:38 | openstack | bug 1824435 in OpenStack Compute (nova) "fill_virtual_interface_list migration fails on second attempt" [Medium,In progress] https://launchpad.net/bugs/1824435 - Assigned to melanie witt (melwitt) | |
| 04:20:38 | openstackgerrit | melanie witt proposed openstack/nova master: Use a separate transaction to read default security group https://review.opendev.org/688206 | |
| 06:14:00 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |
| 06:14:00 | openstack | bug 1824435 in OpenStack Compute (nova) "fill_virtual_interface_list migration fails on second attempt" [Medium,In progress] https://launchpad.net/bugs/1824435 - Assigned to melanie witt (melwitt) | |
| 06:14:00 | openstackgerrit | melanie witt proposed openstack/nova master: Use a separate transaction to read default security group https://review.opendev.org/688206 | |
| 08:33:57 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |
| 08:33:57 | openstack | bug 1824435 in OpenStack Compute (nova) "fill_virtual_interface_list migration fails on second attempt" [Medium,In progress] https://launchpad.net/bugs/1824435 - Assigned to melanie witt (melwitt) | |
| 08:33:57 | openstackgerrit | melanie witt proposed openstack/nova master: Use a separate transaction to read default security group https://review.opendev.org/688206 | |
| 11:46:49 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |
| 11:46:49 | openstack | bug 1824435 in OpenStack Compute (nova) "fill_virtual_interface_list migration fails on second attempt" [Medium,In progress] https://launchpad.net/bugs/1824435 - Assigned to melanie witt (melwitt) | |
| 11:46:49 | openstackgerrit | melanie witt proposed openstack/nova master: Use a separate transaction to read default security group https://review.opendev.org/688206 | |
| 13:17:48 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |
| 13:17:48 | openstack | bug 1824435 in OpenStack Compute (nova) "fill_virtual_interface_list migration fails on second attempt" [Medium,In progress] https://launchpad.net/bugs/1824435 - Assigned to melanie witt (melwitt) | |
| 13:17:48 | openstackgerrit | melanie witt proposed openstack/nova master: Use a separate transaction to read default security group https://review.opendev.org/688206 | |
| 14:56:44 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |
| 14:56:44 | openstack | bug 1824435 in OpenStack Compute (nova) "fill_virtual_interface_list migration fails on second attempt" [Medium,In progress] https://launchpad.net/bugs/1824435 - Assigned to melanie witt (melwitt) | |
| 14:56:44 | openstackgerrit | melanie witt proposed openstack/nova master: Use a separate transaction to read default security group https://review.opendev.org/688206 | |
| 22:12:00 | openstackgerrit | melanie witt proposed openstack/nova master: Add regression test for bug 1824435 https://review.opendev.org/688205 | |