| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2020-08-26 | |||
| 17:30:07 | sean-k-mooney | rbd returns true https://github.com/openstack/nova/blob/20459e3e88cb8382d450c7fdb042e2016d5560c5/nova/virt/libvirt/imagebackend.py#L958 | |
| 17:30:45 | sean-k-mooney | so you should see this log message when you evacuate https://github.com/openstack/nova/blob/20459e3e88cb8382d450c7fdb042e2016d5560c5/nova/compute/manager.py#L3514-L3516 | |
| 17:30:58 | sean-k-mooney | and we should keep the disk content | |
| 17:31:30 | noonedeadpunk | looks like this, yes | |
| 17:31:57 | sean-k-mooney | what api microversion is masikari using | |
| 17:33:22 | noonedeadpunk | 2.53 for master... | |
| 17:33:49 | sean-k-mooney | it looks like it does not set one https://github.com/openstack/masakari/blob/cd95f6660c14f506603f0864ca24dd25c278a6a8/masakari/engine/drivers/taskflow/host_failure.py#L262-L263 | |
| 17:34:08 | sean-k-mooney | so nova client will default to the latest | |
| 17:34:17 | noonedeadpunk | ok, on rocky it was 2.14 | |
| 17:35:04 | yoctozepto | we care about stein+ atm | |
| 17:35:16 | noonedeadpunk | ++ | |
| 17:35:36 | sean-k-mooney | 2.14 was mitaka | |
| 17:35:42 | sean-k-mooney | so you should be good | |
| 17:36:11 | sean-k-mooney | we have been preseviing shared storage vms for a very long time | |
| 18:00:01 | noonedeadpunk | sean-k-mooney: just tested and during evacuate data is really preserved | |
| 18:00:27 | sean-k-mooney | good that would have been a nasty bug if that was regressed | |
| 18:00:41 | openstackgerrit | Stephen Finucane proposed openstack/nova master: Change default num_retries for glance to 3 https://review.opendev.org/740389 | |
| 18:02:50 | noonedeadpunk | TIL | |
| 18:02:56 | openstackgerrit | Merged openstack/nova stable/ussuri: compute: Validate a BDMs disk_bus when provided https://review.opendev.org/744550 | |
| 18:03:31 | sean-k-mooney | noonedeadpunk: the api does not guarentee that data is preserved unless you are using bfv | |
| 18:03:57 | sean-k-mooney | noonedeadpunk: so unless you deployed the cloud and know the vm is on shared storage when you dont use bfv dont rely on that behavior | |
| 18:06:27 | noonedeadpunk | I see, yeah, I know that bfv is really preferable. But it's hard to explain in terms of public clouds, when even with no non-0 disk flavors ppl still do use ephemeral. But good part of them, is that they can handle ISO's while cinder wasn't able to boot ISO image properly last time I've checked... | |
| 18:06:40 | openstackgerrit | Merged openstack/nova master: rbd: Move rbd_utils out of libvirt driver under nova.storage https://review.opendev.org/746904 | |
| 18:06:56 | sean-k-mooney | noonedeadpunk: well i have no problem iwht non bfv instance | |
| 18:07:07 | sean-k-mooney | i like the ceph backend for example | |
| 18:07:24 | sean-k-mooney | but its jsut driver devied if evauate preserves data or not | |
| 18:07:24 | noonedeadpunk | yes, sure ceph backend is everywhere for me:) | |
| 18:07:42 | sean-k-mooney | for the libvirt dirver it does preseve data it the sorate is shared | |
| 18:07:56 | sean-k-mooney | for other drivers that may not be the case | |
| 18:08:22 | noonedeadpunk | dunno, I need better investigation on my side, it was just good lead, but no.. And I wasn't able to reproduce by far so yeah... | |
| 18:08:35 | sean-k-mooney | ironic for example i would expect to always recreate the server altouhg if its boot form volue it might persve it | |
| 18:21:22 | openstackgerrit | Stephen Finucane proposed openstack/nova master: Use absolute path during qemu img rebase https://review.opendev.org/739246 | |
| 18:36:04 | sean-k-mooney | stephenfin: by the way for my libvirt/os-vif patch i have another pathc im addedin beneath it | |
| 18:36:20 | sean-k-mooney | but ill adress your commend when i push both | |
| 18:37:17 | stephenfin | sean-k-mooney: Okay. You've got reviews on https://review.opendev.org/#/c/745605/ too so if you get a chance to address that, I can re +2 tomorrow | |
| 18:38:01 | sean-k-mooney | ya ill take a look at it | |
| 19:04:10 | openstackgerrit | Jiri Suchomel proposed openstack/nova master: Add ability to download Glance images into the libvirt image cache via RBD https://review.opendev.org/574301 | |
| 19:22:16 | openstackgerrit | Merged openstack/nova master: Add type hints to 'nova.compute.manager' https://review.opendev.org/742863 | |
| 19:22:30 | openstackgerrit | Merged openstack/nova master: Avoid invalid file name, preventing git clone on win32 https://review.opendev.org/748250 | |
| 20:00:40 | openstackgerrit | sean mooney proposed openstack/nova master: pass vifs_already_plugged when reverting a migration https://review.opendev.org/748296 | |
| 20:00:40 | openstackgerrit | sean mooney proposed openstack/nova master: libvirt: delegate ovs plug to os-vif https://review.opendev.org/602432 | |
| 20:00:57 | mnaser | does anyone know why regex based filtering is no longer working in the api with ussuri? | |
| 20:01:02 | mnaser | i cant track any commits that might have caused it | |
| 20:01:30 | mnaser | openstack --debug server list --all-projects --name 'foo' returns two servers which are 'foo1.bar' and 'foo2.bar' | |
| 20:01:47 | mnaser | but `openstack --debug server list --all-projects --name 'foo\d'` returns nothing | |
| 20:02:08 | sean-k-mooney | did you check the client | |
| 20:02:18 | sean-k-mooney | im not sure if this is api side | |
| 20:02:21 | sean-k-mooney | it might be | |
| 20:02:38 | sean-k-mooney | well i think it is but maybe there were some clinet changes that broke it | |
| 20:03:26 | mnaser | sean-k-mooney: its not, i looked into the api-ref | |
| 20:03:33 | mnaser | it says you can send actual regex | |
| 20:03:37 | sean-k-mooney | string | |
| 20:03:40 | sean-k-mooney | ||
| 20:03:42 | sean-k-mooney | Filters the response by a server name, as a string. You can use regular expressions in the query. For example, the ?name=bob regular expression returns both bob and bobb. If you must match on only bob, you can use a regular expression that matches the syntax of the underlying database server that is implemented for Compute, such as MySQL or PostgreSQL. | |
| 20:03:58 | mnaser | _regex_instance_filter() in https://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/api.py hasn't been touched for 5-8 years | |
| 20:04:01 | mnaser | according to blame | |
| 20:04:03 | sean-k-mooney | so if this behavior changed its likel a db change | |
| 20:04:16 | mnaser | i mean, it went from myslq to mysql | |
| 20:04:50 | mnaser | let me check if maybe its an option ;\ | |
| 20:06:00 | sean-k-mooney | this was the last change to that code https://github.com/openstack/nova/commit/117fad897d5310d66cc2e690f3cd32e72614d8fd | |
| 20:07:34 | mnaser | so it looks like it should be sending a REGEXP query | |
| 20:08:05 | mnaser | let me try it out against the actual db server | |
| 20:09:45 | mnaser | indeed, the regexp doesnt work | |
| 20:09:59 | mnaser | `SELECT * FROM instances WHERE display_name REGEXP 'foo\d';` returns an empty set | |
| 20:11:33 | sean-k-mooney | try 'foo\d.*' | |
| 20:11:46 | sean-k-mooney | foo\d would not match foo1.bar | |
| 20:14:15 | sean-k-mooney | https://regex101.com/r/uDuQBs/1/ | |
| 20:14:48 | mnaser | sean-k-mooney: ok so it turns out that mysql seemingly uses a differnt regex lib than mariadb | |
| 20:14:53 | mnaser | https://dev.mysql.com/doc/refman/5.7/en/regexp.html#regexp-operators | |
| 20:15:18 | sean-k-mooney | your current regex is not correct however | |
| 20:15:29 | sean-k-mooney | foo\d will not match foo1.bar | |
| 20:15:33 | sean-k-mooney | it will match foo1 | |
| 20:16:04 | sean-k-mooney | foo\d is the same as foo[0-9] | |
| 20:16:22 | mnaser | sean-k-mooney: right, i agree with you on that, but the regex impl using in mysql does not | |
| 20:16:32 | mnaser | SELECT display_name FROM instances WHERE display_name REGEXP 'foo[[:digit:]].'; works | |
| 20:17:24 | sean-k-mooney | it looks like they want you to double escape | |
| 20:17:32 | sean-k-mooney | so you could try foo\\d | |
| 20:18:49 | mnaser | sean-k-mooney: nope | |
| 20:19:02 | mnaser | see doc above, [[:digit:]] is what they use instead of \d according to that | |
| 20:19:08 | sean-k-mooney | ok will this is not part of the nova api defintion | |
| 20:19:09 | mnaser | i guess mariadb and mysql are different when it comes to this | |
| 20:19:19 | sean-k-mooney | maybe maybe not | |
| 20:19:27 | sean-k-mooney | \d works in pyton | |
| 20:19:35 | sean-k-mooney | but it might not work in sql | |
| 20:19:39 | mnaser | yeah well the fact we're relying on the db to do the filtering makes it very unpredictable | |
| 20:19:51 | mnaser | because the regex can be different dependign on the backend | |
| 20:21:08 | sean-k-mooney | ya well this is not a portable part of teh api | |
| 20:21:20 | sean-k-mooney | we dont actully give any guarenttes this will work | |
| 20:21:31 | sean-k-mooney | i know we looked at removing it at one point | |
| 20:22:07 | sean-k-mooney | it is called out in the api ref at least | |
| 20:22:08 | sean-k-mooney | If you must match on only bob, you can use a regular expression that matches the syntax of the underlying database server that is implemented for Compute, such as MySQL or PostgreSQL. | |
| 20:27:29 | sean-k-mooney | mnaser: for what its worth that regex support is from the nova v1 api | |
| 20:27:50 | sean-k-mooney | it predates v2 or microverions | |
| 20:28:03 | sean-k-mooney | i belive it even predates novas use of specs | |
| 20:28:19 | sean-k-mooney | so the fact it works at al is somewhat surprising | |
| 20:31:30 | melwitt | agreed, but apparently other people have known this works, someone fixed a thing related to it 3 years ago https://review.opendev.org/506760 | |
| 20:33:58 | sean-k-mooney | oh im sure people still use it | |
| 20:34:11 | sean-k-mooney | just its not portable and it proably not well tested | |
| 20:37:18 | melwitt | yeah | |
| 20:37:32 | sean-k-mooney | apparently sqlalcamey support regex filters | |