Earlier  
Posted Nick Remark
#openstack-nova - 2021-08-26
10:00:57 sean-k-mooney the one where the compute agent can send rpcs like the heartbeat but not recive them until you recreate the queue
10:01:22 sean-k-mooney eight that or the hostname has change to the instace.host does not match the current host
10:01:57 sean-k-mooney both would break the conductors ablity to manage vms on the host but the agent would be up
10:02:01 lyarwood I was assuming it came from here and the servicegroup API tbh
10:02:02 lyarwood https://github.com/openstack/nova/blob/2a78626a85954997d35f5fe62c50de297e2ca92d/nova/conductor/tasks/live_migrate.py#L284-L288
10:02:12 lyarwood so assuming that's using the db driver
10:02:53 sean-k-mooney well the host in that case comes form instnace.host
10:03:06 sean-k-mooney so if the host name changed on the node that would not fine it properly
10:03:31 lyarwood yup right
10:05:45 sean-k-mooney lyarwood: melwitt by the way just updated the db url test assertin gthe content of the alembic conf and equating it to the the input string
10:06:03 lyarwood ah awesome missed that above
10:06:35 sean-k-mooney just did
10:06:43 sean-k-mooney altought its complaing about failing to merge?
10:06:58 sean-k-mooney oh we both did
10:07:48 sean-k-mooney right pep8...
10:08:08 sean-k-mooney for some reason i dont have pre-commmit in this once copy of nova
10:08:15 lyarwood failed to merge was just because you pushed a new ps of the nova change
10:08:25 sean-k-mooney oh ok
10:11:50 sean-k-mooney oh melwitt was right about the glbal needing to be reset
10:12:32 sean-k-mooney depending on order the test breaks ill fix that and push it again
10:58:58 sean-k-mooney this is infuriating
10:59:33 sean-k-mooney my test works on its own but the connection string is not being passed to alembic if i run multiple db tests
10:59:55 sean-k-mooney reference = 'sqlite:///:memory:?read_default_group=data+with%2Fa+percent_%25-and+symbols%21'
10:59:57 sean-k-mooney actual = 'sqlite://'
11:02:56 sean-k-mooney ok i think i have it working
11:03:08 sean-k-mooney but its one of those thing where you need to run it many times to be sure
11:07:12 opendevreview sean mooney proposed openstack/nova master: db: Handle parameters in DB strings https://review.opendev.org/c/openstack/nova/+/805663
11:14:33 opendevreview sean mooney proposed openstack/nova master: db: Handle parameters in DB strings https://review.opendev.org/c/openstack/nova/+/805663
11:15:28 sean-k-mooney lyarwood: ok unless there is review feedback ^ is the final version of that patch
11:15:53 sean-k-mooney i have also restarted the ooo dnm patch so we will see if it works for them in a while
11:16:57 sean-k-mooney stephenfin: oh you reviewd at some point am i did not see that until i looked at my eamil
11:23:00 lyarwood melwitt: https://review.opendev.org/c/openstack/nova/+/800634/12..13/nova/tests/unit/cmd/test_manage.py - would you mind taking another look at this today when you're online, I think I've finally addressed everything.
11:47:29 opendevreview sean mooney proposed openstack/nova master: [FUP] minor cleanup in db migration tests https://review.opendev.org/c/openstack/nova/+/806143
11:48:11 opendevreview sean mooney proposed openstack/nova master: [FUP] minor cleanup in db URL tests https://review.opendev.org/c/openstack/nova/+/806143
12:10:20 artom Heh, why the fup? Original patch hasn't gotten a single +2 yet? :)
12:10:37 artom Ah, gate
12:13:36 sean-k-mooney ya i want to see the results
12:13:40 sean-k-mooney ill likely squash it
13:26:20 gibi something is happening with placement concurrent allocation update issue https://paste.opendev.org/show/808348/
13:27:02 gibi the amount of job failure due to that getting significantly worse
13:27:21 sean-k-mooney hehe that one way to shorten a url
13:27:38 gibi if you have a hammer ...
13:27:49 sean-k-mooney yes it hit melwitt patches yesterday i think
13:28:05 sean-k-mooney i this the same issue that is cause by a concurent delete request
13:28:20 sean-k-mooney if so melwitt has patches for that as im sure your aware
13:28:25 gibi probably we always had this as in http://status.openstack.org/elastic-recheck/#1836754
13:28:33 gibi but now it become significant
13:32:57 sean-k-mooney https://review.opendev.org/c/openstack/nova/+/688802 this is what i was thinking of
13:33:35 sean-k-mooney although i think we shoudl jsut go back to calling delete on the allocation and ignoring the version personally instead of doing a put
13:35:50 opendevreview sean mooney proposed openstack/nova master: Add autopep8 to tox and pre-commit https://review.opendev.org/c/openstack/nova/+/806182
13:41:50 artom sean-k-mooney, we may need for melwitt to wake up for this one, but... does the database fixture actually mock out anything?
13:41:58 artom I don't grok how it's actually used
13:42:35 sean-k-mooney its creating a real db using sqlight in memory database feature
13:43:10 artom OK... So for instance if you pass it a connection URL, it'll create a new context and use its engine: https://github.com/openstack/nova/blob/master/nova/tests/fixtures/nova.py#L625
13:43:43 sean-k-mooney its an interesting question though if i need it now that i have added the other fixture for get engine
13:43:49 artom But then the migration code will always just use the main_db_api.get_engine: https://github.com/openstack/nova/blob/master/nova/db/migration.py#L47
13:44:23 sean-k-mooney ill try droping it now that i have added the addtional fixture and see if that is enough
13:44:43 artom Reason I'm asking is - I've tried using the connection=url kwarg to the Database fixture to avoid your mocking while still fixing the global engine issue
13:44:48 sean-k-mooney i am using this to run a db sync after all so i dont need the db fixture to set other things up for me
13:45:06 sean-k-mooney artom: ya i trided that too but it wont work for 2 reaons
13:45:16 artom And they are definitely different engines - but the test uses the main_db_api engine, and not the fixture engine
13:46:02 sean-k-mooney artom: im mocking out get_enging in the migration
13:46:05 sean-k-mooney module
13:46:17 sean-k-mooney so it shoudl be useing the new fixtures engine
13:46:43 artom Right, I get that. I'm trying to understand why it's even necessary with the database fixture
13:47:08 sean-k-mooney because the engine.url is imutable
13:47:15 sean-k-mooney and its reused between multipel tests
13:47:26 sean-k-mooney so it end up with a different connection string then the one we pass
13:47:32 artom Right - but we can't use different engines?
13:47:40 sean-k-mooney even when we use the connection parmater in the db fixture
13:47:45 artom Per test, for tests that need it?
13:48:30 sean-k-mooney that is what https://review.opendev.org/c/openstack/nova/+/805663/6/nova/tests/unit/db/test_migration.py#50 is doing
13:49:15 sean-k-mooney artom: the engine url used to be mutable im not sure our db fixtuer has worked with custom connections since that change in sqlalcahme about a year or 2 agao
13:49:24 artom Yeah... I just thought the fixture would handle that
13:49:25 artom ?
13:49:53 artom Especially with the enticingly named connection=url kwarg :)
13:50:16 sean-k-mooney i think it used too but it definetly does not now
13:50:50 artom Weird.
13:50:59 artom And it's only used in 1 spot, the kwarg
13:51:25 sean-k-mooney ok so i dont need the db fixture just my one for 'nova.db.migration._get_engine'
13:51:48 sean-k-mooney the test will still work if i remove the db fixture
13:52:21 sean-k-mooney good catch ill update that when i squah things
13:53:16 sean-k-mooney ooo is still runnign so i dont want to interupt that job
13:56:27 sean-k-mooney artom: you mentioned its used in only one place?
13:56:34 sean-k-mooney where is that
13:56:49 sean-k-mooney maybe i should remove the parmater in a follow up and fix that
13:56:50 opendevreview Jorhson Deng proposed openstack/nova master: recheck the attachment_id after the reschedule successful https://review.opendev.org/c/openstack/nova/+/796209
13:57:35 sean-k-mooney or well make the connnection parmater work by creating an new engin instnace
14:14:10 artom sean-k-mooney, well, it appear to correctly create a new engine
14:14:20 artom .. which then never gets used anywhere, AFAICT
14:15:01 artom nova/tests/functional/db/test_connection_switch.py is where it gets used
14:15:05 artom self.useFixture(nova_fixtures.Database(connection=self.fake_conn))
14:18:08 lyarwood stupid question if anyone with vif/neutron background can help, I'm trying to work out how to find a default for hw_vif_model when it's unset
14:18:27 lyarwood I thought osinfo.HardwareProperties(instance.image_meta).network_model was what I wanted but I'm seeing it return None
14:18:48 sean-k-mooney lyarwood: its virtio
14:18:56 lyarwood just hardcoded?
14:19:06 sean-k-mooney i think so i think i know where it is
14:19:17 lyarwood kk I've missed it then
14:19:33 sean-k-mooney its virt dirver dependent
14:19:50 sean-k-mooney vmware default to a differnt thing then libvirt

Earlier   Later