| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-07-17 | |||
| 15:45:54 | dansmith | which is why it's stupid to have to do this | |
| 15:46:01 | dansmith | I mean honestly, wtf | |
| 15:46:15 | dansmith | cheap sata SSDs have not required writing zeros to erase for ten years | |
| 15:46:58 | sean-k-mooney | its because its been mapped as memory rather then via a filesystem | |
| 15:47:12 | dansmith | which is also stupid | |
| 15:47:14 | dansmith | however, | |
| 15:47:30 | sean-k-mooney | if you did use it via the filesystem interface which is ssupported it proably would handel this interally | |
| 15:47:31 | dansmith | you have a cli tool to manage it, so there should be some thing to do it.. doesn't have to be _actual_ ATA TRIM | |
| 15:48:05 | dansmith | ...but intel *has* to have this seem memory like for optics, so.. :/ | |
| 15:48:26 | sean-k-mooney | well it littaly replaces ram dims | |
| 15:48:39 | dansmith | so? | |
| 15:48:40 | sean-k-mooney | and is byte adressable | |
| 15:48:49 | sean-k-mooney | so its pretty ram like | |
| 15:48:54 | dansmith | it's a block device to the guest yeah? | |
| 15:48:58 | sean-k-mooney | no | |
| 15:49:05 | alex_xu | it is ram for the guest | |
| 15:49:08 | sean-k-mooney | its exposed as dims to the guest | |
| 15:49:26 | dansmith | but people are going to use it as semi-persistent storage right? | |
| 15:49:33 | sean-k-mooney | no | |
| 15:49:37 | sean-k-mooney | well indirectly | |
| 15:49:51 | sean-k-mooney | they will be mmaping it into there application adress space | |
| 15:49:56 | dansmith | right | |
| 15:50:16 | sean-k-mooney | and using it as an "in memeory" cache / scratch space for there workign set | |
| 15:50:19 | dansmith | which works fine for block-addressable storage, to look like byte-addressable memory, even for rotating rust :) | |
| 15:51:28 | dansmith | anyway, whatever, I know this ship has sailed | |
| 15:51:43 | sean-k-mooney | sure :) you know we live in a world of hardward defiend software right :P | |
| 15:51:51 | dansmith | all too well | |
| 15:55:34 | alex_xu | dansmith: efried sean-k-mooney anyway...thank you guys | |
| 15:55:47 | openstackgerrit | Dakshina Ilangovan proposed openstack/nova-specs master: Spec: Provider config YAML file https://review.opendev.org/612497 | |
| 15:56:18 | zzzeek | is mriedem on vacation | |
| 15:56:38 | dansmith | zzzeek: yes | |
| 15:56:47 | zzzeek | dansmith: hokay | |
| 16:01:50 | edleafe | b | |
| 16:02:05 | edleafe | *ETOOMANYTERMINALSOPEN | |
| 16:19:32 | efried | gibi: dansmith: cdent: I gotta roll, but would you please have a look at the providers.yaml spec soonish? https://review.opendev.org/#/c/612497/ | |
| 16:19:32 | efried | IMO it's pretty much ready to go - but I may be too close to it to see the gaps. | |
| 16:19:55 | cdent | aye aye, will poke at it tomorrow mornig | |
| 17:02:30 | stephenfin | sean-k-mooney: What do we do if none of 'vcpu_pin_set', '[compute] cpu_shared_set' or '[compute] cpu_dedicated_set' are configured? | |
| 17:03:10 | stephenfin | I'm thinking we need to return both VCPUs and PCPUs for all host cores, like we would do if 'vcpu_pin_set' is configured | |
| 17:03:35 | stephenfin | But if we do that, we'll introduce a possibly breaking change when we stop doing that in U | |
| 17:04:40 | sean-k-mooney | if none are set then ya | |
| 17:04:50 | sean-k-mooney | i would report all host cpus as both | |
| 17:05:46 | sean-k-mooney | ideally we would require that one of cpu_shared_set or cpu_dedicated_set are set going forward | |
| 17:05:59 | sean-k-mooney | and issue a warning if neither are set | |
| 17:07:21 | stephenfin | Cool. Going to push drafts of this in a few minutes. It will fail every gate test there is but it should be good enough to see where I'm going with it | |
| 17:07:34 | sean-k-mooney | e.g in train we report both and issue warning. in U if you dont set one of the cpu_shared_set or cpu_dedicated_set we raise an error and refuse to start | |
| 17:11:36 | openstackgerrit | Merged openstack/nova master: Restore RT.old_resources if ComputeNode.save() fails https://review.opendev.org/668263 | |
| 17:28:36 | openstackgerrit | sean mooney proposed openstack/nova master: Libvirt: add support for vPMU configuration. https://review.opendev.org/671338 | |
| 17:29:14 | sean-k-mooney | i think ^ is the full implemtation of the vPMU spec | |
| 17:29:38 | sean-k-mooney | its pretty short so should be a quick win if people want to review. | |
| 17:29:52 | openstackgerrit | Dakshina Ilangovan proposed openstack/nova-specs master: Spec: Provider config YAML file https://review.opendev.org/612497 | |
| 17:30:52 | sean-k-mooney | its 75% unit tests,docs and release notes and like 40 lines of code that does something userful | |
| 17:32:26 | sean-k-mooney | ... actully its proably goign to fail the notification api tests... | |
| 17:33:05 | sean-k-mooney | i was actully trying to have it ready to mrege in the first patch but oh well | |
| 19:07:03 | artom | dansmith, around? Let's say with save a Nova object in one nova component, for example calling in nova-compute instance.save() after setting instance.migration_context | |
| 19:07:26 | artom | And then later, a different instance object, without migration_context lazy-loaded, also gets save()'ed, in the conductor | |
| 19:07:35 | artom | Will the second save clobber the first's migration_context? | |
| 19:08:18 | dansmith | meaning will the not-context-having instance.save() cause the migration context to go away? | |
| 19:08:52 | artom | Yeah | |
| 19:09:17 | dansmith | it shouldn't.. that would be a bug.. this is why objects track dirty fields.. so we know what to update in the database and what to leave as-is | |
| 19:10:02 | artom | (I tried to understand save()'s code, it's not super scrutable) | |
| 19:10:15 | artom | dansmith, ack, much thanks | |
| 19:11:13 | dansmith | instance is complicated, thus is has a complicated save handler | |
| 19:11:37 | dansmith | the actual save is not innate behavior for objects, it has to be implemented each time, so always an opportunity for a bug | |
| 19:12:15 | artom | There's no default "save each field into its column" implementation? | |
| 19:12:36 | artom | "each field" being overly simplistic | |
| 19:12:37 | dansmith | no | |
| 19:13:07 | dansmith | the number of objects that are just a simple "this field goes unchanged in this column" was never 100%, and has shrunk ever since | |
| 19:13:38 | dansmith | at a low-level, any object that is like that would just have a save handler of db_obj.update(self.obj_get_changes()), but even the ones that are 1:1 mappings aren't that simple, | |
| 19:13:55 | dansmith | because they check a few things, look up the db object maybe not in the same way first, etc | |
| 19:24:09 | artom | Dammit journalctl | |
| 19:24:34 | artom | I dunno what kind of "optimization" it does, but if I journalctl -e a thing, and then reverse search for a word, I want to see it | |
| 19:24:59 | artom | Doesn't matter if you haven't actually loaded it in memory or whatever you're doing | |
| 19:25:19 | artom | Because without the -e doing a forward search, it shows up just fine | |
| 19:26:50 | artom | Or even scrolling to the end manually in less, then doing a reverse search | |
| 19:42:01 | artom | dansmith, and actually, I'm an idiot, because the first thing apply_migration_context() does is check self.migration_context, so it'll lazy-load it regardless | |
| 19:42:17 | artom | (That's the bug I'm chasing, migration context not being correctly applied) | |
| 19:42:47 | artom | Ah no, it could still get clobbered after | |
| 19:42:53 | artom | Bleah, moar coffee | |
| 19:44:18 | dansmith | artom: those two things may both be true, but are unrelated I believe | |
| 19:44:31 | artom | dansmith, yeah, just came to that realization | |
| 19:44:49 | dansmith | artom: I meant you being an idiot and "the first thing apply_migration_context" does :) | |
| 19:45:12 | artom | Ah, in that case, I came to the first half of that realization a long time ago :P | |
| 19:46:03 | dansmith | hah | |
| 19:47:55 | artom | Waaay ahead of you there buddy :) | |
| 19:56:09 | artom | The whole migration context is a red herring | |
| 19:56:13 | artom | It's applied correctly | |
| 19:56:22 | artom | What's being clobbered is the numa_topology | |
| 19:56:49 | artom | Because while the apply_migration_context() saves the new one to the instance from the mig_cxtx, there's a save() later when the source cleans up | |
| 19:57:01 | artom | And that instance object still has the original numa_topology | |
| 20:00:28 | openstackgerrit | Merged openstack/nova master: vif: Remove dead minimum libvirt checks https://review.opendev.org/666814 | |
| 20:08:24 | artom | BOOM | |
| 20:13:02 | openstackgerrit | Artom Lifshitz proposed openstack/nova master: [WIP-until-series-is-ready] Introduce live_migration_claim() https://review.opendev.org/635669 | |
| 20:13:03 | openstackgerrit | Artom Lifshitz proposed openstack/nova master: New objects for NUMA live migration https://review.opendev.org/634827 | |
| 20:13:03 | openstackgerrit | Artom Lifshitz proposed openstack/nova master: LM: add support for sending NUMAMigrateData to the source https://review.opendev.org/634828 | |
| 20:13:04 | openstackgerrit | Artom Lifshitz proposed openstack/nova master: LM: add support for updating NUMA-related XML on the source https://review.opendev.org/635229 | |
| 20:13:04 | openstackgerrit | Artom Lifshitz proposed openstack/nova master: RPC changes to prepare for NUMA live migration https://review.opendev.org/634605 | |
| 20:13:05 | openstackgerrit | Artom Lifshitz proposed openstack/nova master: NUMA live migration support https://review.opendev.org/634606 | |
| 20:13:05 | openstackgerrit | Artom Lifshitz proposed openstack/nova master: Deprecate CONF.workarounds.enable_numa_live_migration https://review.opendev.org/640021 | |
| 20:13:29 | artom | And with that perfect timing, it's daycare time | |