)]}'
{"specs/stein/approved/flavor-extra-spec-image-property-validation.rst":[{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"ee696d72bcabfcd9ead0f56ace43ac5777a94dc2","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"We\u0027d need to do this anywhere the flavor or image changes, so basically"},{"line_number":37,"context_line":"instance creation, rebuild, and resize."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":".. note:: Only things that are not driver-specific are validated."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_86765392","line":38,"updated":"2018-11-16 23:16:19.000000000","message":"I think you could highlight that this would be basically renaming _check_requested_image() to something more generic, modifying it to check more things, and calling it from all three operations.","commit_id":"dbc2a2add3d6412c41ecb0f183fc882c7db3a95e"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"29747d6daca801b60ddfe042165365eb06c296af","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"We\u0027d need to do this anywhere the flavor or image changes, so basically"},{"line_number":37,"context_line":"instance creation, rebuild, and resize."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":".. note:: Only things that are not driver-specific are validated."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_21485e87","line":38,"in_reply_to":"3f79a3b5_86765392","updated":"2018-11-20 19:54:27.000000000","message":"Done","commit_id":"dbc2a2add3d6412c41ecb0f183fc882c7db3a95e"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"ee696d72bcabfcd9ead0f56ace43ac5777a94dc2","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"None"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"REST API impact"},{"line_number":53,"context_line":"---------------"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"None"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Security impact"},{"line_number":58,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_8652d3d9","line":55,"range":{"start_line":52,"start_character":0,"end_line":55,"end_character":4},"updated":"2018-11-16 23:16:19.000000000","message":"The API experts will need to weigh in here, but it seems likely that we might end up returning exc.HTTPBadRequest for more cases than we did before (although it *is* already listed as a possible error code for all three of create/rebuild/resize).","commit_id":"dbc2a2add3d6412c41ecb0f183fc882c7db3a95e"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"29747d6daca801b60ddfe042165365eb06c296af","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"None"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"REST API impact"},{"line_number":53,"context_line":"---------------"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"None"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Security impact"},{"line_number":58,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_8ca7290b","line":55,"range":{"start_line":52,"start_character":0,"end_line":55,"end_character":4},"in_reply_to":"3f79a3b5_8652d3d9","updated":"2018-11-20 19:54:27.000000000","message":"Done, I will use 4xx errors to be more generic.","commit_id":"dbc2a2add3d6412c41ecb0f183fc882c7db3a95e"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"ee696d72bcabfcd9ead0f56ace43ac5777a94dc2","unresolved":false,"context_lines":[{"line_number":102,"context_line":"Work Items"},{"line_number":103,"context_line":"----------"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"* Make changes in nova compute."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"Dependencies"},{"line_number":108,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_a60a6fcd","line":105,"range":{"start_line":105,"start_character":18,"end_line":105,"end_character":31},"updated":"2018-11-16 23:16:19.000000000","message":"\"nova\" and \"compute\" are equivalent, and the changes wouldn\u0027t be in \"nova-compute\".\n\nThis would be more clear if it specified exactly what file the changes would be in.\n\nPresumably there will also be work items to update/add unit tests, maybe update the documentation, maybe add a release note?","commit_id":"dbc2a2add3d6412c41ecb0f183fc882c7db3a95e"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"82b8361f8f69b164ffd5d2d0b5c4861c38d3acea","unresolved":false,"context_lines":[{"line_number":102,"context_line":"Work Items"},{"line_number":103,"context_line":"----------"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"* Make changes in nova compute."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"Dependencies"},{"line_number":108,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_4ca5919f","line":105,"range":{"start_line":105,"start_character":18,"end_line":105,"end_character":31},"in_reply_to":"3f79a3b5_a60a6fcd","updated":"2018-11-20 19:54:53.000000000","message":"Done","commit_id":"dbc2a2add3d6412c41ecb0f183fc882c7db3a95e"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"5129493547385d8da7a77691b3cdf29f135ed10a","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"As an end user I would like to have instant feedback if flavor extra spec or"},{"line_number":25,"context_line":"image properties are not valid or they are not compatible with each other so"},{"line_number":26,"context_line":"I can correct my configuration and retry the operation."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_ccc9a124","line":26,"updated":"2018-11-20 20:06:17.000000000","message":"Whether or not something is valid or not is quite deployment-specific. Can you give some examples here of what you consider to be generically-applicable validations of this metadata?","commit_id":"b964d28b8c128258c7cc3dd87bd3307832817141"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"73a60b7b55cbb95bed9b5315a817d6b0d8c136e8","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"As an end user I would like to have instant feedback if flavor extra spec or"},{"line_number":25,"context_line":"image properties are not valid or they are not compatible with each other so"},{"line_number":26,"context_line":"I can correct my configuration and retry the operation."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_cf660c28","line":26,"in_reply_to":"3f79a3b5_3e1cc263","updated":"2018-11-27 17:10:43.000000000","message":"Actually will add new validations. Putting the spec to WIP until I figure out the details.","commit_id":"b964d28b8c128258c7cc3dd87bd3307832817141"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"8899a367fe1ecd18c12a3b7e05dc335782387d8d","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"As an end user I would like to have instant feedback if flavor extra spec or"},{"line_number":25,"context_line":"image properties are not valid or they are not compatible with each other so"},{"line_number":26,"context_line":"I can correct my configuration and retry the operation."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_3e1cc263","line":26,"in_reply_to":"3f79a3b5_57b2ca96","updated":"2018-11-23 19:11:15.000000000","message":"This spec intends to address the 3rd type: validate the combination of extra spec and image property.\nThe main purpose of this spec is to introduce a framework: a common function to validate flavor/image combination that is invoked during instance creation/rebuild/resize, so that in the future when a new combination need to be validated, it can be added in a consistent way. For now I don\u0027t see any new validations to be introduce from this spec.","commit_id":"b964d28b8c128258c7cc3dd87bd3307832817141"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"07dc46d4ef1d87ff863e042c93480b08b2857b06","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"As an end user I would like to have instant feedback if flavor extra spec or"},{"line_number":25,"context_line":"image properties are not valid or they are not compatible with each other so"},{"line_number":26,"context_line":"I can correct my configuration and retry the operation."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_57b2ca96","line":26,"in_reply_to":"3f79a3b5_8c6f29fa","updated":"2018-11-23 10:55:21.000000000","message":"There are different validations:\n* does a flavor extra_spec meaningful for a given deployment? (e.g. hw:numa_nodes is meaningless if NumaTopologyFilter is not enabled in the scheduler)\n* does meaningful extra_spec has a valid value? (e.g.: the value of the hw:numa_nodes needs to be an positive integer)\n* does an extra spec\u0027s value is contradicting with other extra_spec values or image propery values? (like in the memory_mby vs. min_ram example.\n\nWhat type of validations this spec proposes?\n\nAlso it would be good to know about the exact validations  this spec wants to introduce / move so that we can judge when the implementation of this spec is finished or what is still needs to be implemented before the spec can be closed.","commit_id":"b964d28b8c128258c7cc3dd87bd3307832817141"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"d404a524b0fe0f6c67f78beca89b27eb2690afc9","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"As an end user I would like to have instant feedback if flavor extra spec or"},{"line_number":25,"context_line":"image properties are not valid or they are not compatible with each other so"},{"line_number":26,"context_line":"I can correct my configuration and retry the operation."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_8c6f29fa","line":26,"in_reply_to":"3f79a3b5_ccc9a124","updated":"2018-11-20 20:11:43.000000000","message":"An example to validation the flavor/image combination:\nhttps://git.openstack.org/cgit/openstack/nova/tree/nova/compute/api.py#n545","commit_id":"b964d28b8c128258c7cc3dd87bd3307832817141"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"07dc46d4ef1d87ff863e042c93480b08b2857b06","unresolved":false,"context_lines":[{"line_number":39,"context_line":"_checks_for_create_and_rebuild(), modify it to check more things and call it"},{"line_number":40,"context_line":"from all three operations: creation, rebuild, and resize."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not driver-specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_775ca657","line":42,"range":{"start_line":42,"start_character":35,"end_line":42,"end_character":41},"updated":"2018-11-23 10:55:21.000000000","message":"virt driver?","commit_id":"b964d28b8c128258c7cc3dd87bd3307832817141"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"8899a367fe1ecd18c12a3b7e05dc335782387d8d","unresolved":false,"context_lines":[{"line_number":39,"context_line":"_checks_for_create_and_rebuild(), modify it to check more things and call it"},{"line_number":40,"context_line":"from all three operations: creation, rebuild, and resize."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not driver-specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_fe316aef","line":42,"range":{"start_line":42,"start_character":35,"end_line":42,"end_character":41},"in_reply_to":"3f79a3b5_775ca657","updated":"2018-11-23 19:11:15.000000000","message":"Done","commit_id":"b964d28b8c128258c7cc3dd87bd3307832817141"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"07dc46d4ef1d87ff863e042c93480b08b2857b06","unresolved":false,"context_lines":[{"line_number":125,"context_line":"Documentation Impact"},{"line_number":126,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"None"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"References"},{"line_number":131,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_3762ae15","line":128,"range":{"start_line":128,"start_character":0,"end_line":128,"end_character":4},"updated":"2018-11-23 10:55:21.000000000","message":"The API ref needs to be updated if new 4xx errors are returned.","commit_id":"b964d28b8c128258c7cc3dd87bd3307832817141"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"8899a367fe1ecd18c12a3b7e05dc335782387d8d","unresolved":false,"context_lines":[{"line_number":125,"context_line":"Documentation Impact"},{"line_number":126,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"None"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"References"},{"line_number":131,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_7e4b1a5d","line":128,"range":{"start_line":128,"start_character":0,"end_line":128,"end_character":4},"in_reply_to":"3f79a3b5_3762ae15","updated":"2018-11-23 19:11:15.000000000","message":"No new validations are being introduced so there is no new 4xx errors.","commit_id":"b964d28b8c128258c7cc3dd87bd3307832817141"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"5b0300673949f80a799c17b9cc8037f53fb57b5e","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"As an end user I would like to have instant feedback if flavor extra spec or"},{"line_number":25,"context_line":"image properties are not valid or they are not compatible with each other so"},{"line_number":26,"context_line":"I can correct my configuration and retry the operation."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_e2bf41fa","line":26,"updated":"2018-11-28 18:48:12.000000000","message":"As requested in previous revision, please add actual specific examples of the kinds of flavor and image metadata that you would want to validate.\n\nDon\u0027t give me a link. :) Please list some examples in this spec.","commit_id":"12c5d08d9f3226cce9a18e0e02b21cda2be388f6"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"6b39f2fe4eab27223cf44c63746bd7ac27dba07f","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"As an end user I would like to have instant feedback if flavor extra spec or"},{"line_number":25,"context_line":"image properties are not valid or they are not compatible with each other so"},{"line_number":26,"context_line":"I can correct my configuration and retry the operation."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_bf079020","line":26,"in_reply_to":"3f79a3b5_940f6b2b","updated":"2018-12-18 22:12:01.000000000","message":"Added under proposed change.","commit_id":"12c5d08d9f3226cce9a18e0e02b21cda2be388f6"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"f2ca712c202541da7fe056c8efc07dd6fdc9917a","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"As an end user I would like to have instant feedback if flavor extra spec or"},{"line_number":25,"context_line":"image properties are not valid or they are not compatible with each other so"},{"line_number":26,"context_line":"I can correct my configuration and retry the operation."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_940f6b2b","line":26,"in_reply_to":"3f79a3b5_e2bf41fa","updated":"2018-12-13 21:09:05.000000000","message":"Some suggestions:\n1) call hardware.numa_get_constraints to validate all the various numa-related things.  This is currently done only on _create_instance(), should be done for resize/rebuild as well.\n2) ensure that the cpu policy, cpu thread policy, and emulator thread policy values are valid\n3) validate the realtime mask\n4) validate the number of serial ports\n5) validate the cpu topology constraints\n6) validate the \"quota:*\" settings in the flavor\n7) validate the watchdog action\n8) validate the hw_rng settings\n\netc, etc.\n\nBasically anything listed at https://docs.openstack.org/nova/latest/user/flavors.html","commit_id":"12c5d08d9f3226cce9a18e0e02b21cda2be388f6"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"20e27726c06468b88102a23daa3847855c54341b","unresolved":false,"context_lines":[{"line_number":39,"context_line":"_checks_for_create_and_rebuild(), modify it to check more things and call it"},{"line_number":40,"context_line":"from all three operations: creation, rebuild, and resize."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3f79a3b5_fa6d16ce","line":42,"range":{"start_line":42,"start_character":10,"end_line":42,"end_character":70},"updated":"2018-12-18 22:20:06.000000000","message":"In this case we could remove the hw_rng and watchdog validation as they\u0027re both libvirt specific.  Also, I think some of the quota settings are specific to the vmware virt driver.","commit_id":"9a148005dc59ea40e0aa8a76d616445a7a00107a"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"4440cf017caef9827ad9362a67de0d36afb02fa2","unresolved":false,"context_lines":[{"line_number":39,"context_line":"_checks_for_create_and_rebuild(), modify it to check more things and call it"},{"line_number":40,"context_line":"from all three operations: creation, rebuild, and resize."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3f79a3b5_152543ad","line":42,"range":{"start_line":42,"start_character":10,"end_line":42,"end_character":70},"in_reply_to":"3f79a3b5_fa6d16ce","updated":"2018-12-18 23:07:16.000000000","message":"Done","commit_id":"9a148005dc59ea40e0aa8a76d616445a7a00107a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b865b334d725182a2a960750a4c7c917b653d689","unresolved":false,"context_lines":[{"line_number":31,"context_line":"We want to validate the combination of the flavor extra-specs and image"},{"line_number":32,"context_line":"properties as early as possible once they\u0027re both known."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"If validation fails then synchronously return error to user."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"We\u0027d need to do this anywhere the flavor or image changes, so basically"},{"line_number":37,"context_line":"instance creation, rebuild, and resize. More precisely, rename"}],"source_content_type":"text/x-rst","patch_set":6,"id":"dfd5e7cf_7e4ad355","line":34,"range":{"start_line":34,"start_character":25,"end_line":34,"end_character":60},"updated":"2019-01-08 17:37:15.000000000","message":"yeah, super important I agree","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"1e21f50dbb0c4f9ff41581967e12dd1d9cdea2f4","unresolved":false,"context_lines":[{"line_number":39,"context_line":"_checks_for_create_and_rebuild(), modify it to check more things and call it"},{"line_number":40,"context_line":"from all three operations: creation, rebuild, and resize."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"}],"source_content_type":"text/x-rst","patch_set":6,"id":"1f769fc5_67cbf571","line":42,"range":{"start_line":42,"start_character":10,"end_line":42,"end_character":70},"updated":"2019-01-02 17:46:28.000000000","message":"++, since virt driver-specific validations would necessitate having to do the validation post-scheduling, which would make the whole exercise in synchronous error reporting futile.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1edbf1b37a2a6fbdcd8d8febc02beddd72ff1d9b","unresolved":false,"context_lines":[{"line_number":39,"context_line":"_checks_for_create_and_rebuild(), modify it to check more things and call it"},{"line_number":40,"context_line":"from all three operations: creation, rebuild, and resize."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_3d63ffde","line":42,"range":{"start_line":42,"start_character":10,"end_line":42,"end_character":70},"in_reply_to":"1f769fc5_67cbf571","updated":"2019-01-04 17:00:04.000000000","message":"operators are free to define arbitray extra specs for use with the AggregateInstanceExtraSpecsFilter too so limiting validation to well know non virt specific set makes sense provided we ignore addtional extra specs that are present.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b865b334d725182a2a960750a4c7c917b653d689","unresolved":false,"context_lines":[{"line_number":39,"context_line":"_checks_for_create_and_rebuild(), modify it to check more things and call it"},{"line_number":40,"context_line":"from all three operations: creation, rebuild, and resize."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"}],"source_content_type":"text/x-rst","patch_set":6,"id":"dfd5e7cf_5ea02ff5","line":42,"range":{"start_line":42,"start_character":10,"end_line":42,"end_character":70},"in_reply_to":"ffd0ebdf_3d63ffde","updated":"2019-01-08 17:37:15.000000000","message":"Yeah, and FWIW, I don\u0027t really like specific virt-driver flavor extra specs. Why not those specs couldn\u0027t be the same between all our virt drivers ? Of course, if some feature would be only supported by a virt driver, that\u0027s not a problem.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"4ceeb271323930bbd86fd01cf1f2b59295e0ef23","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"},{"line_number":46,"context_line":"  things. This is currently done only on _create_instance(), should be done for"},{"line_number":47,"context_line":"  resize/rebuild as well."}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_0007b91e","line":44,"updated":"2019-01-04 08:24:16.000000000","message":"See the doc built as a result [2]. Needs a space line here.\n\n[2] http://logs.openstack.org/42/618542/6/check/openstack-tox-docs/6668ca7/html/specs/stein/approved/flavor-extra-spec-image-property-validation.html.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"5a1d155fe4c37ec19d08c60c25efa8d8dcc0d245","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"},{"line_number":46,"context_line":"  things. This is currently done only on _create_instance(), should be done for"},{"line_number":47,"context_line":"  resize/rebuild as well."}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_a8c24b84","line":44,"in_reply_to":"ffd0ebdf_0007b91e","updated":"2019-01-04 17:06:00.000000000","message":"\u003e See the doc built as a result [2]. Needs a space line here.\n \u003e \n \u003e [2] http://logs.openstack.org/42/618542/6/check/openstack-tox-docs/6668ca7/html/specs/stein/approved/flavor-extra-spec-image-property-validation.html.\n\nWill do a follow up if there are no other changes needed.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1edbf1b37a2a6fbdcd8d8febc02beddd72ff1d9b","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"},{"line_number":46,"context_line":"  things. This is currently done only on _create_instance(), should be done for"},{"line_number":47,"context_line":"  resize/rebuild as well."}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_bd560f06","line":44,"in_reply_to":"ffd0ebdf_0007b91e","updated":"2019-01-04 17:00:04.000000000","message":"technically you are right but its a nit that could be fixed later.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"11511331387bd26801a8e66f70b97ed414337eff","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"},{"line_number":46,"context_line":"  things. This is currently done only on _create_instance(), should be done for"},{"line_number":47,"context_line":"  resize/rebuild as well."}],"source_content_type":"text/x-rst","patch_set":6,"id":"dfd5e7cf_7750e833","line":44,"in_reply_to":"ffd0ebdf_a8c24b84","updated":"2019-01-05 04:51:13.000000000","message":"Ack. Removed my downvote.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1edbf1b37a2a6fbdcd8d8febc02beddd72ff1d9b","unresolved":false,"context_lines":[{"line_number":42,"context_line":".. note:: Only things that are not virt driver specific are validated."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Examples of validations to be added [1]_:"},{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"},{"line_number":46,"context_line":"  things. This is currently done only on _create_instance(), should be done for"},{"line_number":47,"context_line":"  resize/rebuild as well."},{"line_number":48,"context_line":"* Ensure that the cpu policy, cpu thread policy and emulator thread policy"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_9de30b06","line":45,"range":{"start_line":45,"start_character":6,"end_line":45,"end_character":36},"updated":"2019-01-04 17:00:04.000000000","message":"technically only the hw:numa_nodes extra spec is supported by multiple hyperviorse so we shouold not avalidate\nthe hw:numa_cpus.* or hw:numa_mem.* extra specs\nif we do validate them we should only emit a warning as other virt driver are not required to support them.\n\nthat siad if we limit the validation to jsut makeing sure the flavor extra specs does not conflict with the image metadata equivalent then i think its fine to validate them.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1edbf1b37a2a6fbdcd8d8febc02beddd72ff1d9b","unresolved":false,"context_lines":[{"line_number":45,"context_line":"* Call hardware.numa_get_constraints to validate all the various numa-related"},{"line_number":46,"context_line":"  things. This is currently done only on _create_instance(), should be done for"},{"line_number":47,"context_line":"  resize/rebuild as well."},{"line_number":48,"context_line":"* Ensure that the cpu policy, cpu thread policy and emulator thread policy"},{"line_number":49,"context_line":"  values are valid."},{"line_number":50,"context_line":"* Validate the realtime mask."},{"line_number":51,"context_line":"* Validate the number of serial ports."}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_5dc6036a","line":48,"range":{"start_line":48,"start_character":30,"end_line":48,"end_character":74},"updated":"2019-01-04 17:00:04.000000000","message":"technnically thses are libvirt specific also be if we are jsut validating that the values are in the set of allowed vlaues then it shoudl be fine.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1edbf1b37a2a6fbdcd8d8febc02beddd72ff1d9b","unresolved":false,"context_lines":[{"line_number":47,"context_line":"  resize/rebuild as well."},{"line_number":48,"context_line":"* Ensure that the cpu policy, cpu thread policy and emulator thread policy"},{"line_number":49,"context_line":"  values are valid."},{"line_number":50,"context_line":"* Validate the realtime mask."},{"line_number":51,"context_line":"* Validate the number of serial ports."},{"line_number":52,"context_line":"* Validate the cpu topology constraints."},{"line_number":53,"context_line":"* Validate the ``quota:*``settings (that are not virt driver specific) in the"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_9dab0bd5","line":50,"range":{"start_line":50,"start_character":15,"end_line":50,"end_character":28},"updated":"2019-01-04 17:00:04.000000000","message":"thechnicall this is libvirt specific in that no other virt driver suppots realtime instances.\n\nwe should be able to do basic validation such as checkign we \ndont mask in or out more cores then there are vcpus in the flavour but we should not assert any other behavior.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"1e21f50dbb0c4f9ff41581967e12dd1d9cdea2f4","unresolved":false,"context_lines":[{"line_number":50,"context_line":"* Validate the realtime mask."},{"line_number":51,"context_line":"* Validate the number of serial ports."},{"line_number":52,"context_line":"* Validate the cpu topology constraints."},{"line_number":53,"context_line":"* Validate the ``quota:*``settings (that are not virt driver specific) in the"},{"line_number":54,"context_line":"  flavor."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Alternatives"},{"line_number":57,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"1f769fc5_8784110e","line":54,"range":{"start_line":53,"start_character":2,"end_line":54,"end_character":9},"updated":"2019-01-02 17:46:28.000000000","message":"can you be more specific on this one? perhaps give an example of a *non-virt-driver specific* quota setting?","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"a1677ea03177cf42d39f3b0901cb18418c85a1f3","unresolved":false,"context_lines":[{"line_number":50,"context_line":"* Validate the realtime mask."},{"line_number":51,"context_line":"* Validate the number of serial ports."},{"line_number":52,"context_line":"* Validate the cpu topology constraints."},{"line_number":53,"context_line":"* Validate the ``quota:*``settings (that are not virt driver specific) in the"},{"line_number":54,"context_line":"  flavor."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Alternatives"},{"line_number":57,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_b48e3a2c","line":54,"range":{"start_line":53,"start_character":2,"end_line":54,"end_character":9},"in_reply_to":"1f769fc5_8784110e","updated":"2019-01-03 21:23:22.000000000","message":"https://docs.openstack.org/nova/latest/user/flavors.html defines some \"quota:\" items in a generic way while others are defined as specific to a particular hypervisor.\n\nIn practice, I don\u0027t think any of them are supported by *all* hypervisors.  But we could conceivably validate any of them (even ones that are only supported by a subset of hypervisors) as long as different hypervisors don\u0027t have different rules for valid values.  (This would basically treat them as \"reserved\" keywords in the extra-specs even if the hypervisor the instance lands on doesn\u0027t care about them.)\n\nSo for something like \"cpu_shares\" it might make sense to ensure that the value is a positive integer regardless of hypervisor.  And for something like \"cpu_quota\" it might make sense to ensure that the value is an integer regardless of hypervisor.\n\nAlternately we could just remove this item from this list.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b865b334d725182a2a960750a4c7c917b653d689","unresolved":false,"context_lines":[{"line_number":52,"context_line":"* Validate the cpu topology constraints."},{"line_number":53,"context_line":"* Validate the ``quota:*``settings (that are not virt driver specific) in the"},{"line_number":54,"context_line":"  flavor."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Alternatives"},{"line_number":57,"context_line":"------------"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"dfd5e7cf_7e917399","line":55,"updated":"2019-01-08 17:37:15.000000000","message":"I\u0027m not sure we should be explicitly here about the validations, given we could find some others, so that\u0027s why I\u0027m fine with accepting this spec now even if we have some comments above.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"4ceeb271323930bbd86fd01cf1f2b59295e0ef23","unresolved":false,"context_lines":[{"line_number":66,"context_line":"REST API impact"},{"line_number":67,"context_line":"---------------"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Due to the new validations, users could face more 4xx errors for more cases"},{"line_number":70,"context_line":"than we did before in create/rebuild/resize operations."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Security impact"},{"line_number":73,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_5b3db6b9","line":70,"range":{"start_line":69,"start_character":0,"end_line":70,"end_character":55},"updated":"2019-01-04 08:24:16.000000000","message":"I think this is a change from \"a silent error\" to a \"crisp errror that clearly describes the inconsistency\" and therefore doesn\u0027t need microversion according to the flow chart in the contributor\u0027s doc [3], i.e. we can go the first \"yes\" path in the flow chart, right?\n\n[3] https://docs.openstack.org/nova/latest/contributor/microversions.html","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"26d295624d23f715cb6cd9250ee54e9270f74460","unresolved":false,"context_lines":[{"line_number":66,"context_line":"REST API impact"},{"line_number":67,"context_line":"---------------"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Due to the new validations, users could face more 4xx errors for more cases"},{"line_number":70,"context_line":"than we did before in create/rebuild/resize operations."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Security impact"},{"line_number":73,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"dfd5e7cf_706c5236","line":70,"range":{"start_line":69,"start_character":0,"end_line":70,"end_character":55},"in_reply_to":"dfd5e7cf_37a34052","updated":"2019-01-08 04:29:04.000000000","message":"i actully dont know if stephen is working on this.\ni also updated the bug with some context as its not actully a bug that they have inconsistent behavior.\n\nthey have the behavior that was originally expected as hw:cpu_policy was only ment to be supported in the flavor not in the image metadta and the behavior of hw:cpu_threads_policy is consistent with the spec.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b865b334d725182a2a960750a4c7c917b653d689","unresolved":false,"context_lines":[{"line_number":66,"context_line":"REST API impact"},{"line_number":67,"context_line":"---------------"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Due to the new validations, users could face more 4xx errors for more cases"},{"line_number":70,"context_line":"than we did before in create/rebuild/resize operations."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Security impact"},{"line_number":73,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"dfd5e7cf_7ebf33fb","line":70,"range":{"start_line":69,"start_character":0,"end_line":70,"end_character":55},"in_reply_to":"dfd5e7cf_706c5236","updated":"2019-01-08 17:37:15.000000000","message":"FWIW, we\u0027re not getting HTTP500 at the moment, we get HTTP202 (we accept to create the instance).\n\nThat said, I think it\u0027s valid for a better user experience to be more formal by not asking a microversion given the instance will eventually be in ERROR.\nSo that\u0027s not really changing the behaviour, right?\n\nBtw. see https://docs.openstack.org/nova/latest/contributor/microversions.html#when-do-i-need-a-new-microversion for documentation","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"955fc121fa881c3f7a9a7b19877caf10bc9741aa","unresolved":false,"context_lines":[{"line_number":66,"context_line":"REST API impact"},{"line_number":67,"context_line":"---------------"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Due to the new validations, users could face more 4xx errors for more cases"},{"line_number":70,"context_line":"than we did before in create/rebuild/resize operations."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Security impact"},{"line_number":73,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_a87a4b21","line":70,"range":{"start_line":69,"start_character":0,"end_line":70,"end_character":55},"in_reply_to":"ffd0ebdf_28897b74","updated":"2019-01-04 17:13:55.000000000","message":"if it is turning anything other then a 500 error into a 4xx you will need a microversion.\n\nyou only get an exemption for silent errors or 500 errors not any arbitary 5xx error form the microverions requirement.\n\nif it is retruning a status code other then 500 today we hit the thrid box \"Are we chainging what status code is returned?\" and we proceed directly to micorversion bump.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"5a1d155fe4c37ec19d08c60c25efa8d8dcc0d245","unresolved":false,"context_lines":[{"line_number":66,"context_line":"REST API impact"},{"line_number":67,"context_line":"---------------"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Due to the new validations, users could face more 4xx errors for more cases"},{"line_number":70,"context_line":"than we did before in create/rebuild/resize operations."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Security impact"},{"line_number":73,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_28897b74","line":70,"range":{"start_line":69,"start_character":0,"end_line":70,"end_character":55},"in_reply_to":"ffd0ebdf_5b3db6b9","updated":"2019-01-04 17:06:00.000000000","message":"\u003e I think this is a change from \"a silent error\" to a \"crisp errror\n \u003e that clearly describes the inconsistency\" and therefore doesn\u0027t\n \u003e need microversion according to the flow chart in the contributor\u0027s\n \u003e doc [3], i.e. we can go the first \"yes\" path in the flow chart,\n \u003e right?\n \u003e \n \u003e [3] https://docs.openstack.org/nova/latest/contributor/microversions.html\n\nRight, I think the new validations would turn either \"silent\" errors or 5xx errors into 4xx errors. In either case no microversion is needed.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1edbf1b37a2a6fbdcd8d8febc02beddd72ff1d9b","unresolved":false,"context_lines":[{"line_number":66,"context_line":"REST API impact"},{"line_number":67,"context_line":"---------------"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Due to the new validations, users could face more 4xx errors for more cases"},{"line_number":70,"context_line":"than we did before in create/rebuild/resize operations."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Security impact"},{"line_number":73,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_5da8431e","line":70,"range":{"start_line":69,"start_character":0,"end_line":70,"end_character":55},"in_reply_to":"ffd0ebdf_5b3db6b9","updated":"2019-01-04 17:00:04.000000000","message":"this should convert no valid host errors to explicit error so it should not resultin in any addtional failures but they should just fail sooner in the validation phase rather then in instance spawn. \n\nso we are going from no valid host error which is not a silent failure to an explcit failure so we would need a micorvirson based on that flow chart howver in general as we are changing the error however i belive no valid host requrns a 500 so i belive we can skip the micorversion by taking the second yes parth in the flow chart.\n\ndepending on the the specific way the vaules were invalid we may have also expcitly faild with there errors as we already to validation of some extraspecs in the compute node but id depend on which api you are talking about specifically.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"11511331387bd26801a8e66f70b97ed414337eff","unresolved":false,"context_lines":[{"line_number":66,"context_line":"REST API impact"},{"line_number":67,"context_line":"---------------"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Due to the new validations, users could face more 4xx errors for more cases"},{"line_number":70,"context_line":"than we did before in create/rebuild/resize operations."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Security impact"},{"line_number":73,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"dfd5e7cf_37a34052","line":70,"range":{"start_line":69,"start_character":0,"end_line":70,"end_character":55},"in_reply_to":"ffd0ebdf_63748436","updated":"2019-01-05 04:51:13.000000000","message":"Well, I\u0027ve found a related bug reported on [1] and it looks like there is at least one case where a VM is built without an error despite of the flavor-image inconsistency.  This is neither a 500-\u003e4xx fix or admin-only API. I guess you are going to change this kind of behavior as well in this spec, so we might need a microversion bump for this. Or, is the reported bug itself a \"silent error\" that the VM is built despite of the inconsistency? ... I hope so since it is bug fix and better to backport, but let\u0027s see what others think.\n\n[1] https://bugs.launchpad.net/nova/+bug/1628504","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"ec231dc8ab9f713a60e6fc1e6397239fa6e62021","unresolved":false,"context_lines":[{"line_number":66,"context_line":"REST API impact"},{"line_number":67,"context_line":"---------------"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Due to the new validations, users could face more 4xx errors for more cases"},{"line_number":70,"context_line":"than we did before in create/rebuild/resize operations."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Security impact"},{"line_number":73,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ffd0ebdf_63748436","line":70,"range":{"start_line":69,"start_character":0,"end_line":70,"end_character":55},"in_reply_to":"ffd0ebdf_a87a4b21","updated":"2019-01-04 17:55:03.000000000","message":"Good to know. Thanks Sean.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"11511331387bd26801a8e66f70b97ed414337eff","unresolved":false,"context_lines":[{"line_number":142,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":".. [1] https://docs.openstack.org/nova/latest/user/flavors.html"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"History"},{"line_number":147,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":148,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"dfd5e7cf_b78e50ce","line":145,"updated":"2019-01-05 04:51:13.000000000","message":"Could you add the link to the related bug https://bugs.launchpad.net/nova/+bug/1628504 if you think this is related?","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"},{"author":{"_account_id":28433,"name":"Jack Ding","email":"jackding@gmail.com","username":"jackding"},"change_message_id":"36794d5813a97e7b987ac6c3621d4dacc83f8cbb","unresolved":false,"context_lines":[{"line_number":142,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":".. [1] https://docs.openstack.org/nova/latest/user/flavors.html"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"History"},{"line_number":147,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":148,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"dfd5e7cf_0dedaeee","line":145,"in_reply_to":"dfd5e7cf_b78e50ce","updated":"2019-01-07 23:56:14.000000000","message":"Added the link to the blueprint for now. Thanks.","commit_id":"c33e1e6c943241f423606da6a95841a6755cedc3"}]}
