OS-7581: metadata daemon not detecting VM status changes


Issue Type:Bug
Priority:4 - Normal
Created at:2019-02-14T16:51:50.355Z
Updated at:2019-02-14T18:05:34.292Z


Created by:Former user
Reported by:Former user
Assigned to:Former user


Fixed: A fix for this issue is checked into the tree and tested.
(Resolution Date: 2019-02-14T18:05:34.277Z)

Fix Versions

2019-02-28 Mind Grapes (Release Date: 2019-02-28)


Based off of: https://github.com/joyent/smartos-live/issues/828


Comment by Former user
Created at 2019-02-14T16:59:21.070Z

patchset 1: tested by running `/usr/vm/test/runtests` to completion without error, and ensuring that the metadata service had not crashed during that process.

also, I created a KVM instance, and then stopped and started it multiple times while tailing the metadata logs to ensure that the state changes were picked up immediately.

Comment by Todd Whiteman
Created at 2019-02-14T17:32:55.606Z

Curious, are there tests for this in "/usr/vm/test/runtests", or could there be?

Comment by Former user
Created at 2019-02-14T17:35:28.928Z

@accountid:70121:a36ea101-b8c9-4f3d-825e-334bc077ca5e So I thought about this, and I'm not sure exactly how that could be done. Basically, before this bug fix, HVM's would get picked up by metadata when it does it's "reset" every 1 minute (it scans for any changes it may have missed). This means that when a KVM instance (for example) starts, or stops, between 0-60 seconds it will be caught by metadata. It's hard to know exactly why metadata responded to a state change (from the interval timer, from an event, etc.) from the outside (the context of the tests). Any test I could envision would suffer a race condition as a result, and not be 100% accurate.

Comment by Jira Bot
Created at 2019-02-14T18:04:50.783Z

smartos-live commit 10f94f74af8aab34527fae645bbf25b962e10f7f (branch master, by Dave Eddy)

OS-7581 metadata daemon not detecting VM status changes
Reviewed by: Todd Whiteman <todd.whiteman@joyent.com>
Approved by: Todd Whiteman <todd.whiteman@joyent.com>