)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"9e1e285b157954f16ad03cfcb224e8e5b6d0efd5","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Speed up scheduler filters a tiny bit (isolated_hosts_filter)"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"If the isolated_hosts_filter is badly configured, it\u0027ll run a little"},{"line_number":10,"context_line":"faster now."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"It\u0027s faster to do that single CONF.lookup and find things are bad, than"},{"line_number":13,"context_line":"to do all those other dict lookups first, then find we\u0027re badly"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAOn%2F%2Fuik%3D","line":10,"updated":"2013-04-25 22:06:53.000000000","message":"Do we care about speeding up a badly configured filter?  We should only care about performance for a properly configured filter.","commit_id":"41c6bc666fa48bf9449106977956e7f64ee0a348"},{"author":{"_account_id":4419,"name":"Matthew Sherborne","email":"msherborne+openstack@gmail.com","username":"msherborne+openstack"},"change_message_id":"f21de4be2e167dbb8a2b77901de75f0ca286c2d7","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Speed up scheduler filters a tiny bit (isolated_hosts_filter)"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"If the isolated_hosts_filter is badly configured, it\u0027ll run a little"},{"line_number":10,"context_line":"faster now."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"It\u0027s faster to do that single CONF.lookup and find things are bad, than"},{"line_number":13,"context_line":"to do all those other dict lookups first, then find we\u0027re badly"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAOn%2F%2FuYA%3D","line":10,"in_reply_to":"AAAAOn%2F%2Fuik%3D","updated":"2013-04-26 02:17:24.000000000","message":"Good point. I had assumed that the default configuration enabled all filters and configured none, so that this would speed up the default install, but it turns out that\u0027s not the case.\n\nI\u0027ll refocus the patch on defining the undefined behaviour of having \u003c2 config options set.","commit_id":"41c6bc666fa48bf9449106977956e7f64ee0a348"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"9e1e285b157954f16ad03cfcb224e8e5b6d0efd5","unresolved":false,"context_lines":[{"line_number":17,"context_line":" * In the past if there was a list of isolated_images in the config, and"},{"line_number":18,"context_line":"   no hosts, it would never allow a build with one of those images."},{"line_number":19,"context_line":" * After this patch, ommitting a list of hosts is assumed to be a bad"},{"line_number":20,"context_line":"   configuration, and the filter will allow all builds"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Change-Id: Ibe6725e39a771b31fdf49513335275deba33e96b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAOn%2F%2FuiY%3D","line":20,"updated":"2013-04-25 22:06:53.000000000","message":"I don\u0027t like the idea of hiding bad configurations from the user.  I would rather make it explicit to the user that they did something wrong then hide the problem.","commit_id":"41c6bc666fa48bf9449106977956e7f64ee0a348"},{"author":{"_account_id":4419,"name":"Matthew Sherborne","email":"msherborne+openstack@gmail.com","username":"msherborne+openstack"},"change_message_id":"f21de4be2e167dbb8a2b77901de75f0ca286c2d7","unresolved":false,"context_lines":[{"line_number":17,"context_line":" * In the past if there was a list of isolated_images in the config, and"},{"line_number":18,"context_line":"   no hosts, it would never allow a build with one of those images."},{"line_number":19,"context_line":" * After this patch, ommitting a list of hosts is assumed to be a bad"},{"line_number":20,"context_line":"   configuration, and the filter will allow all builds"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Change-Id: Ibe6725e39a771b31fdf49513335275deba33e96b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAOn%2F%2FuX8%3D","line":20,"in_reply_to":"AAAAOn%2F%2FuiY%3D","updated":"2013-04-26 02:17:24.000000000","message":"In the next upload, I leave the behaviour the same, and just add tests and make things a bit faster.\n\nI would like to see some other people\u0027s opinions on the meaning of:\n\n * isolated_hosts is defined but no images\n    I think this should raise an error. A different, more efficient mechanism should be used for just disabling hosts, like the services api.\n * isolated_images is defined but no hosts\n    I think this should raise an exception too. I\u0027m sure there are more efficient mechanisms for disabling images.","commit_id":"41c6bc666fa48bf9449106977956e7f64ee0a348"}],"nova/scheduler/filters/isolated_hosts_filter.py":[{"author":{"_account_id":2033,"name":"Belmiro Moreira","email":"moreira.belmiro.email.lists@gmail.com","username":"moreira-belmiro-email-lists"},"change_message_id":"64562a4b7ca811f916a12f5c3c60e7dbb823d322","unresolved":false,"context_lines":[{"line_number":38,"context_line":"            return"},{"line_number":39,"context_line":"        isolated_hosts \u003d CONF.isolated_hosts"},{"line_number":40,"context_line":"        if not isolated_hosts:"},{"line_number":41,"context_line":"            return"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"        spec \u003d filter_properties.get(\u0027request_spec\u0027, {})"},{"line_number":44,"context_line":"        props \u003d spec.get(\u0027instance_properties\u0027, {})"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2Fzqk%3D","line":41,"updated":"2013-04-22 18:48:06.000000000","message":"Seems ok to me but why not reduce even more the number of code lines with like something: \nif not CONF.isolated_images or CONF.isolated_hosts:\n   return\n\nand keep unchanged the last 2 lines.","commit_id":"3839c1c5128e5ad8232d05afa47b9b35362d7ff1"},{"author":{"_account_id":4419,"name":"Matthew Sherborne","email":"msherborne+openstack@gmail.com","username":"msherborne+openstack"},"change_message_id":"0972e96a4f01373fa18cb73565b626449bc9d8a2","unresolved":false,"context_lines":[{"line_number":38,"context_line":"            return"},{"line_number":39,"context_line":"        isolated_hosts \u003d CONF.isolated_hosts"},{"line_number":40,"context_line":"        if not isolated_hosts:"},{"line_number":41,"context_line":"            return"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"        spec \u003d filter_properties.get(\u0027request_spec\u0027, {})"},{"line_number":44,"context_line":"        props \u003d spec.get(\u0027instance_properties\u0027, {})"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FzIU%3D","line":41,"in_reply_to":"AAAAOn%2F%2Fzqk%3D","updated":"2013-04-22 22:22:59.000000000","message":"I\u0027m going in favor of more lines but better efficiency.\n\nOn line 37, checking a local variable is slightly quicker than doing a lookup on CONF (line 39), which is a hash table lookup.\n\nIf I were to set the \u0027isolated_hosts\u0027 variable first, that would be doing a lookup that would be unnecessary if \u0027isolated_images\u0027 was not set.\n\nThe most likely case of misconfiguration is that both CONF settings don\u0027t exist and that \u0027all\u0027 filters are enabled. As this code will be run for every host, for every build/migrate operation, having it just check one CONF setting should be the most efficient without going the extra step of removing itself from the list of filters for the rest of the runtime.\n\nI would like for it to remove itself from the list of filters for the current run, but I\u0027m not clear on an easy way to do this right now.","commit_id":"3839c1c5128e5ad8232d05afa47b9b35362d7ff1"},{"author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"change_message_id":"7cdbb1fdb2d1fb8d13864a84648cbe8b52ea7eec","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        isolated_hosts \u003d CONF.isolated_hosts"},{"line_number":44,"context_line":"        if not isolated_hosts:"},{"line_number":45,"context_line":"            # Assuming bad configuration. Filter is disabled, allow all hosts"},{"line_number":46,"context_line":"            return True"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        spec \u003d filter_properties.get(\u0027request_spec\u0027, {})"},{"line_number":49,"context_line":"        props \u003d spec.get(\u0027instance_properties\u0027, {})"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOn%2F%2Fy9M%3D","line":46,"updated":"2013-04-23 01:10:37.000000000","message":"This is still a change in behavior, technically.  You could have a list of isolated hosts and an empty list of isloated images.  This code changes the behavior for that case.  Configuring it that way temporarily could make sense.","commit_id":"6df56042e7dd86180d2a913092bfa0197dcb1778"}]}
