)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"140bf25ebb5db7457995fe0d309fe8c8b1ef3b23","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"the parameter filter_class_names from funciton get_filtered_hosts"},{"line_number":10,"context_line":"is not assigned values, so we always use the filters from"},{"line_number":11,"context_line":"CONF.scheduler_default_filters."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I089fca7e6fa07e4c6e84c39ee9a6e371c763d839"},{"line_number":14,"context_line":"Closes-Bug:#1403020"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"3a961159_10884bc5","line":11,"updated":"2015-01-05 16:48:41.000000000","message":"IMHO your commit message is not explaining what is the problem and how you plan to fix it.","commit_id":"dbe8cbac01357e464af2dd6cbfceaeeefd236acd"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"87e3649995a6234282c29fc9bfa90c0634b74c42","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Currently,we always use the filters from CONF.scheduler_default_filters."},{"line_number":10,"context_line":"the filter_class_names parameter in method get_filtered_hosts from class"},{"line_number":11,"context_line":"HostManager is never used.I think that we can removed this parameter."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I089fca7e6fa07e4c6e84c39ee9a6e371c763d839"},{"line_number":14,"context_line":"Closes-Bug:#1403020"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"bab921fb_22019905","line":12,"updated":"2015-04-27 07:39:21.000000000","message":"So a doc tag will be needed here.","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b47d46a47089f04ae5d635cd25f04b9576c551bc","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Currently,we always use the filters from CONF.scheduler_default_filters."},{"line_number":10,"context_line":"the filter_class_names parameter in method get_filtered_hosts from class"},{"line_number":11,"context_line":"HostManager is never used.I think that we can removed this parameter."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I089fca7e6fa07e4c6e84c39ee9a6e371c763d839"},{"line_number":14,"context_line":"Closes-Bug:#1403020"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"9abe1de1_a0a9e0e1","line":12,"in_reply_to":"9abe1de1_fa5f8573","updated":"2015-04-27 09:38:09.000000000","message":"Why ? It was never documented so I don\u0027t see where it needs to be updated. @Sahid, could you please point out the related docs that need to be fixed ?","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"a0aaaa3afdb509800a7b02fe4c45a268976d1856","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Currently,we always use the filters from CONF.scheduler_default_filters."},{"line_number":10,"context_line":"the filter_class_names parameter in method get_filtered_hosts from class"},{"line_number":11,"context_line":"HostManager is never used.I think that we can removed this parameter."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I089fca7e6fa07e4c6e84c39ee9a6e371c763d839"},{"line_number":14,"context_line":"Closes-Bug:#1403020"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"9abe1de1_fa5f8573","line":12,"in_reply_to":"bab921fb_22019905","updated":"2015-04-27 09:02:42.000000000","message":"sahid, thank you for reminding","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"d0039f1a86c31ce6b190f600490333ed85692dc2","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently,we always use the filters from CONF.scheduler_default_filters."},{"line_number":10,"context_line":"the filter_class_names parameter in method get_filtered_hosts from class"},{"line_number":11,"context_line":"HostManager is never used.I think that we can removed this parameter."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I089fca7e6fa07e4c6e84c39ee9a6e371c763d839"},{"line_number":14,"context_line":"Closes-Bug:#1403020"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"1aca2d91_a89d3f5b","line":11,"updated":"2015-05-06 07:05:30.000000000","message":"\"I think that we can removed this parameter.\" Hum... A commit message with \"think\", \"may\", \"perhaps\" seems to me not really clear - Yes you just do it.","commit_id":"52eda2a06eeb6c4e12e1c0986f11f635e412b85a"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"6e2df8182231e7e31ed426dbd0ca24a2ce43938b","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently,we always use the filters from CONF.scheduler_default_filters."},{"line_number":10,"context_line":"the filter_class_names parameter in method get_filtered_hosts from class"},{"line_number":11,"context_line":"HostManager is never used.I think that we can removed this parameter."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I089fca7e6fa07e4c6e84c39ee9a6e371c763d839"},{"line_number":14,"context_line":"Closes-Bug:#1403020"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"1aca2d91_bf71f2e2","line":11,"in_reply_to":"1aca2d91_a89d3f5b","updated":"2015-05-06 08:13:02.000000000","message":"thanks,sahid, you always give me some impressive advice.","commit_id":"52eda2a06eeb6c4e12e1c0986f11f635e412b85a"}],"nova/scheduler/filter_scheduler.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"109a7252fec942e7f4ee36666f78ccff60f16a98","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        for num in xrange(num_instances):"},{"line_number":136,"context_line":"            # Filter local hosts based on requirements ..."},{"line_number":137,"context_line":"            hosts \u003d self.host_manager.get_filtered_hosts(hosts,"},{"line_number":138,"context_line":"                filter_properties, index\u003dnum)"},{"line_number":139,"context_line":"            if not hosts:"},{"line_number":140,"context_line":"                # Can\u0027t get any more locally."},{"line_number":141,"context_line":"                break"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a961159_f2df1238","line":138,"updated":"2014-12-21 12:32:56.000000000","message":"this change is not related","commit_id":"df3896ea412b65b3dbc79abacc523d9cb45ee6e3"},{"author":{"_account_id":8412,"name":"Mike Durnosvistov","email":"glacierr.dev@gmail.com","username":"mdurnosvistov"},"change_message_id":"9cbfa62d721aa72fb700337a4d1d3adf4b1e14b3","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        for num in xrange(num_instances):"},{"line_number":136,"context_line":"            # Filter local hosts based on requirements ..."},{"line_number":137,"context_line":"            hosts \u003d self.host_manager.get_filtered_hosts(hosts,"},{"line_number":138,"context_line":"                 filter_properties, index\u003dnum)"},{"line_number":139,"context_line":"            if not hosts:"},{"line_number":140,"context_line":"                # Can\u0027t get any more locally."},{"line_number":141,"context_line":"                break"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a961159_727c9eec","line":138,"updated":"2014-12-26 12:35:28.000000000","message":"Just leave it as in `master`. It\u0027s unrelated changes as said @Gary.","commit_id":"8a8bef8e8f575d2b5810cd197192dd977f766edb"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"5897b7202491c697e1b431961576f4631ed459d3","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        for num in xrange(num_instances):"},{"line_number":136,"context_line":"            # Filter local hosts based on requirements ..."},{"line_number":137,"context_line":"            hosts \u003d self.host_manager.get_filtered_hosts(hosts,"},{"line_number":138,"context_line":"                filter_properties, index\u003dnum)"},{"line_number":139,"context_line":"            if not hosts:"},{"line_number":140,"context_line":"                # Can\u0027t get any more locally."},{"line_number":141,"context_line":"                break"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_b39fde64","line":138,"updated":"2014-12-29 00:58:55.000000000","message":"this is unrelated change.","commit_id":"dbe8cbac01357e464af2dd6cbfceaeeefd236acd"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"140bf25ebb5db7457995fe0d309fe8c8b1ef3b23","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        for num in xrange(num_instances):"},{"line_number":136,"context_line":"            # Filter local hosts based on requirements ..."},{"line_number":137,"context_line":"            hosts \u003d self.host_manager.get_filtered_hosts(hosts,"},{"line_number":138,"context_line":"                filter_properties, index\u003dnum)"},{"line_number":139,"context_line":"            if not hosts:"},{"line_number":140,"context_line":"                # Can\u0027t get any more locally."},{"line_number":141,"context_line":"                break"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_70f6ef5e","line":138,"in_reply_to":"3a961159_b39fde64","updated":"2015-01-05 16:48:41.000000000","message":"+1","commit_id":"dbe8cbac01357e464af2dd6cbfceaeeefd236acd"}],"nova/scheduler/host_manager.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"109a7252fec942e7f4ee36666f78ccff60f16a98","unresolved":false,"context_lines":[{"line_number":364,"context_line":"                        \"\u0027force_nodes\u0027 value of \u0027%s\u0027\")"},{"line_number":365,"context_line":"            LOG.audit(msg % forced_nodes_str)"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"        filter_class_names \u003d filter_properties.get(\u0027filter_class_names\u0027, None)"},{"line_number":368,"context_line":"        filters \u003d self._choose_host_filters(filter_class_names)"},{"line_number":369,"context_line":"        ignore_hosts \u003d filter_properties.get(\u0027ignore_hosts\u0027, [])"},{"line_number":370,"context_line":"        force_hosts \u003d filter_properties.get(\u0027force_hosts\u0027, [])"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a961159_12e81ee1","line":367,"updated":"2014-12-21 12:32:56.000000000","message":"you are over riding the input parameter here - https://github.com/openstack/nova/blob/master/nova/scheduler/host_manager.py#L321","commit_id":"df3896ea412b65b3dbc79abacc523d9cb45ee6e3"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"5897b7202491c697e1b431961576f4631ed459d3","unresolved":false,"context_lines":[{"line_number":363,"context_line":"                        \"\u0027force_nodes\u0027 value of \u0027%s\u0027\")"},{"line_number":364,"context_line":"            LOG.audit(msg % forced_nodes_str)"},{"line_number":365,"context_line":""},{"line_number":366,"context_line":"        filter_class_names \u003d filter_properties.get(\u0027filter_class_names\u0027, None)"},{"line_number":367,"context_line":"        filters \u003d self._choose_host_filters(filter_class_names)"},{"line_number":368,"context_line":"        ignore_hosts \u003d filter_properties.get(\u0027ignore_hosts\u0027, [])"},{"line_number":369,"context_line":"        force_hosts \u003d filter_properties.get(\u0027force_hosts\u0027, [])"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_739d7666","line":366,"updated":"2014-12-29 00:58:55.000000000","message":"you expect \u0027filter_class_names\u0027 passed from scheduler_hints? I\u0027m not sure we can just add new scheuduler hint like this. We should think about whether user can choice which filter want to use, or that only can controlled by operator. Even we accept that, the v2.1 api support json-schema, the if the new parameter added, the json-schema need updated.","commit_id":"dbe8cbac01357e464af2dd6cbfceaeeefd236acd"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"140bf25ebb5db7457995fe0d309fe8c8b1ef3b23","unresolved":false,"context_lines":[{"line_number":363,"context_line":"                        \"\u0027force_nodes\u0027 value of \u0027%s\u0027\")"},{"line_number":364,"context_line":"            LOG.audit(msg % forced_nodes_str)"},{"line_number":365,"context_line":""},{"line_number":366,"context_line":"        filter_class_names \u003d filter_properties.get(\u0027filter_class_names\u0027, None)"},{"line_number":367,"context_line":"        filters \u003d self._choose_host_filters(filter_class_names)"},{"line_number":368,"context_line":"        ignore_hosts \u003d filter_properties.get(\u0027ignore_hosts\u0027, [])"},{"line_number":369,"context_line":"        force_hosts \u003d filter_properties.get(\u0027force_hosts\u0027, [])"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_0bae60e7","line":366,"in_reply_to":"3a961159_739d7666","updated":"2015-01-05 16:48:41.000000000","message":"No, please don\u0027t expect something coming from filt_props, it will never happen as we agreed to *not* pass info about classes.\n\nHere, I would rather remove the argument in get_filtered_hosts and call _choose_host_filters with an empty value.","commit_id":"dbe8cbac01357e464af2dd6cbfceaeeefd236acd"},{"author":{"_account_id":6835,"name":"Kun Huang","email":"gareth@openstacker.org","username":"academicgareth"},"change_message_id":"d927f4a04fd309a0edae943239da351c863d8d33","unresolved":false,"context_lines":[{"line_number":45,"context_line":"            help\u003d\u0027Filter classes available to the scheduler which may \u0027"},{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":50,"context_line":"                default\u003d["},{"line_number":51,"context_line":"                  \u0027RetryFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aaa499b_00103fa7","line":48,"updated":"2015-04-14 07:36:36.000000000","message":"There is a problem:\n\nWe often uses some values as \"default\", and let users config their favorite in some way (config file for example). So the \"filter_class_names\" was designed as users\u0027 input to overwrite default values. However, the default value of \"scheduler_default_filters\" have provide default values. So the \"filter_class_names\" is 100% redundant. \n\nThe mistake is that \"scheduler_default_filters\" is misleading. The value of \"scheduler_default_filters\" is real one, not default one. It should be \"scheduler_host_filters\" at least.\n\nAs a result, we need a compatible way for renaming this.","commit_id":"283043e1a557123453afbaa3f72cef17d3e203e9"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"7467deab376fcc0d4c77b77b9e7c357243fdab33","unresolved":false,"context_lines":[{"line_number":45,"context_line":"            help\u003d\u0027Filter classes available to the scheduler which may \u0027"},{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":50,"context_line":"                default\u003d["},{"line_number":51,"context_line":"                  \u0027RetryFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aaa499b_13e89bb3","line":48,"in_reply_to":"7aaa499b_00103fa7","updated":"2015-04-14 08:02:44.000000000","message":"yeah, the \"scheduler_default_filters\" is really misleading, but I think this is another issue.thanks.","commit_id":"283043e1a557123453afbaa3f72cef17d3e203e9"},{"author":{"_account_id":6835,"name":"Kun Huang","email":"gareth@openstacker.org","username":"academicgareth"},"change_message_id":"9e4602a81a8fe9bbba1f4052ebff5d4f709f5316","unresolved":false,"context_lines":[{"line_number":45,"context_line":"            help\u003d\u0027Filter classes available to the scheduler which may \u0027"},{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":50,"context_line":"                default\u003d["},{"line_number":51,"context_line":"                  \u0027RetryFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aaa499b_5675f195","line":48,"in_reply_to":"7aaa499b_13e89bb3","updated":"2015-04-14 08:14:29.000000000","message":"I prefer to fix this in this patch, because \u0027xxx is never used, so we should remove it\u0027 is not convincing. How do you know this argument or interface will not be used in future?\n\nThe truth is that the job of assigning default scheduler host filter has been done here. But scheduler_default_filters is misleading. At least, you need add a TODO message here. Please don\u0027t ignore it.","commit_id":"283043e1a557123453afbaa3f72cef17d3e203e9"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"c700bdf4e8d088cfd07eadb2adaf3fb159378894","unresolved":false,"context_lines":[{"line_number":45,"context_line":"            help\u003d\u0027Filter classes available to the scheduler which may \u0027"},{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":50,"context_line":"                default\u003d["},{"line_number":51,"context_line":"                  \u0027RetryFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aaa499b_42806046","line":48,"in_reply_to":"7aaa499b_5675f195","updated":"2015-04-15 06:53:09.000000000","message":"yeah, I will add a TODO message. maybe, we need to  think out a universal and compatible way for renaming, Maybe, there are many in-use configuration items misleading.","commit_id":"283043e1a557123453afbaa3f72cef17d3e203e9"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"79bdf92f0e3a7fd29efc0f0fcce501b56f679184","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":50,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":51,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":52,"context_line":"                default\u003d["}],"source_content_type":"text/x-python","patch_set":10,"id":"dac4157f_7110ce01","line":49,"updated":"2015-04-22 07:29:52.000000000","message":"Not sure we need to rename it, but a least the help message need to be updated here.","commit_id":"2838b8ede09bdcffe7fe1cc403594ee41c2dcc07"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"d0c1f760da18f68144f25ebe7877c822b004a0ce","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":50,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":51,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":52,"context_line":"                default\u003d["}],"source_content_type":"text/x-python","patch_set":10,"id":"bab921fb_d1101151","line":49,"in_reply_to":"bab921fb_1399f46e","updated":"2015-04-23 07:01:46.000000000","message":"Ok so we can keep the todo, i just think it\u0027s a pain to update a config name :)","commit_id":"2838b8ede09bdcffe7fe1cc403594ee41c2dcc07"},{"author":{"_account_id":6835,"name":"Kun Huang","email":"gareth@openstacker.org","username":"academicgareth"},"change_message_id":"8cc126f139b70271a57fd8306906f8f11640a095","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":50,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":51,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":52,"context_line":"                default\u003d["}],"source_content_type":"text/x-python","patch_set":10,"id":"bab921fb_b4558bc7","line":49,"in_reply_to":"bab921fb_d1101151","updated":"2015-04-23 07:44:48.000000000","message":"+1 for keeping the TODO and hope updating this would be easy in future","commit_id":"2838b8ede09bdcffe7fe1cc403594ee41c2dcc07"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"71deecb272d329770d87d1befb6b6019d0e1fa21","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":50,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":51,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":52,"context_line":"                default\u003d["}],"source_content_type":"text/x-python","patch_set":10,"id":"bab921fb_1399f46e","line":49,"in_reply_to":"dac4157f_7110ce01","updated":"2015-04-23 03:54:15.000000000","message":"Currently, it is a good advice for modifying the help message. But I think the name has a little misleading.","commit_id":"2838b8ede09bdcffe7fe1cc403594ee41c2dcc07"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"79bdf92f0e3a7fd29efc0f0fcce501b56f679184","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller may specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":10,"id":"dac4157f_b100a602","line":415,"updated":"2015-04-22 07:29:52.000000000","message":"So this need to be updated.","commit_id":"2838b8ede09bdcffe7fe1cc403594ee41c2dcc07"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"71deecb272d329770d87d1befb6b6019d0e1fa21","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller may specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":10,"id":"bab921fb_13b0d4dc","line":415,"in_reply_to":"dac4157f_b100a602","updated":"2015-04-23 03:54:15.000000000","message":"yeah, this place really need to be updated. thanks.","commit_id":"2838b8ede09bdcffe7fe1cc403594ee41c2dcc07"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"54fe7d3d8c623c038f9a179488dff397230dd659","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":50,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":51,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":52,"context_line":"                default\u003d["}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_069614f0","line":49,"updated":"2015-04-24 07:23:11.000000000","message":"So now we want probably more than just rename scheduler_default_filters. Can you give some words about removing \"scheduler_available_filters\".","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b0697796558cfd1272ccc2a9907242e34b9177da","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"},{"line_number":47,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":48,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":49,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":50,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":51,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":52,"context_line":"                default\u003d["}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_566f0892","line":49,"in_reply_to":"bab921fb_069614f0","updated":"2015-04-24 12:50:52.000000000","message":"I think it needs to be done in a separate patch, because it requires to deprecate an Opt","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":8276,"name":"kiwik","email":"chenrui.momo@gmail.com","username":"kiwik"},"change_message_id":"3c9a54df4615fc28ae1ad66ed8281ed18c0efef5","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_f90f3edf","line":415,"updated":"2015-04-24 08:48:42.000000000","message":"I think two issues exist here.\n* the args \u0027filter_class_names\u0027 make no sense.\n* \u0027scheduler_available_filters\u0027 and \u0027scheduler_default_filters\u0027 options make users confusions.\n\nWhy don\u0027t we split to two patch/bp to solve them? it\u0027s more clear and easy to reviewing.","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"516124361f61c6970c148b26733ee48f269801c3","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_1b6ea2c9","line":415,"updated":"2015-04-23 09:56:14.000000000","message":"The operator configures this list so i\u0027m not sure this docstring is really useful, actually the method itself.\n\nThinking again, there are 2 options:\nscheduler_available_filters and scheduler_default_filters since now we have removed the way to let user request a specific filter from the list scheduler_available_filters I think we can remove one those options.\n\nOperator only have to declare which filters to use for the scheduler.\n\nProbably deprecate/remove: scheduler_available_filters","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"54fe7d3d8c623c038f9a179488dff397230dd659","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_a6d408bd","line":415,"in_reply_to":"bab921fb_1b39d441","updated":"2015-04-24 07:23:11.000000000","message":"@Lingxian: I\u0027m not sure to understand, you mean links in the code ?\n@zhangtrlon: I guess to have a blueprint about this is reasonable, can you just update the TODO.","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"ba4fe04f99eced3e082ee9ccea92fea660bb4fe4","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_95ba5622","line":415,"in_reply_to":"bab921fb_1b6ea2c9","updated":"2015-04-24 01:13:46.000000000","message":"I think that the two options should not be removed, because the operator spells mistakes very likely and making a check is \nvery reasonable here.","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":6732,"name":"Lingxian Kong","email":"anlin.kong@gmail.com","username":"kong"},"change_message_id":"1a38119b750544810422693fd8012cd2ab8a8ba7","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_5dbd0467","line":415,"in_reply_to":"bab921fb_1b6ea2c9","updated":"2015-04-24 02:44:19.000000000","message":"hi, sahid, are there any links for what you said about the removal?","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"8534bbb589687be1dc9786879368a72a7f10faec","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_d0a3e7b0","line":415,"in_reply_to":"bab921fb_56f5c880","updated":"2015-04-25 09:39:33.000000000","message":"hi,Sylvain. removing scheduler_available_filters can really cause some problems. But I think we can remove the parameter filter_classe_names safely. To use the filter_classe_names,\nwe have went on some discussion in the patch set 5. thanks.","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"716c3e711217f36c1b6d5550d397ed2e8cebd12b","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_1b39d441","line":415,"in_reply_to":"bab921fb_5dbd0467","updated":"2015-04-24 03:24:15.000000000","message":"sahid, thinking again,I agree with you, the two options are really confusing and there is some duplicate in meaning. Maybe, we need a spec to optimize such problems for scheduler after this patch. thanks","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":6732,"name":"Lingxian Kong","email":"anlin.kong@gmail.com","username":"kong"},"change_message_id":"62a070d819432d57596baea79b4ef8ed6c08ae25","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_a79c025e","line":415,"in_reply_to":"bab921fb_a6d408bd","updated":"2015-04-24 08:31:02.000000000","message":"\u0027...since now we have removed the way to let user request a specific filter from the list scheduler_available_filters...\u0027\n\nhi sahid, i mean was there any discussion or blueprint about the removal you mentioned?","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b0697796558cfd1272ccc2a9907242e34b9177da","unresolved":false,"context_lines":[{"line_number":412,"context_line":"        utils.spawn_n(_async_init_instance_info)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":415,"context_line":"        \"\"\"Since the caller specify which filters to use we need"},{"line_number":416,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":417,"context_line":"        function checks the filter names against a predefined set"},{"line_number":418,"context_line":"        of acceptable filters."}],"source_content_type":"text/x-python","patch_set":11,"id":"bab921fb_56f5c880","line":415,"in_reply_to":"bab921fb_f90f3edf","updated":"2015-04-24 12:50:52.000000000","message":"I disagree with sahid about removing scheduler_available_filters. I think there is a confusion between filter_classe_names that was a possibily for a separate Scheduler driver to pass a different list of filters to the existing HostManager, and both conf flags mentioned before that are used to set which filters are provided and which filters are in use.\n\nThanks to these, it\u0027s really easy to provide out-of-tree filters by just mentioning the distinct full path of the package in scheduler_available_filters like \n\n  scheduler_available_filters +\u003d myownpackage.filters.MyFakeFilter\n\nI think removing that possibility would be like sending a bad signal to operators IMHO.\n\n\n\n\u003d\u003d\u003d\u003d\nSaying that, I think we can refactor the docstring to replace the word \"callers\" (which is referring to a Python object) by the word \"operators\"","commit_id":"178c8c923fae739a9575722eb3128d59111a9207"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"87e3649995a6234282c29fc9bfa90c0634b74c42","unresolved":false,"context_lines":[{"line_number":40,"context_line":"from nova.virt import hardware"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"host_manager_opts \u003d ["},{"line_number":43,"context_line":"    cfg.MultiStrOpt(\u0027scheduler_available_filters\u0027,"},{"line_number":44,"context_line":"            default\u003d[\u0027nova.scheduler.filters.all_filters\u0027],"},{"line_number":45,"context_line":"            help\u003d\u0027Filter classes available to the scheduler which may \u0027"},{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"}],"source_content_type":"text/x-python","patch_set":12,"id":"bab921fb_67a8c320","side":"PARENT","line":43,"updated":"2015-04-27 07:39:21.000000000","message":"Actually this is now no more necessary I would recommend to deprecate this option, then passe \u0027filters.all_filters\u0027 directly to the attribute filter_classes in the __init__ method of HostManager. This will be used to check filters configured to the operators.","commit_id":"c8caebfcbae404f1be26448f163f46e47f7f9c00"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b47d46a47089f04ae5d635cd25f04b9576c551bc","unresolved":false,"context_lines":[{"line_number":40,"context_line":"from nova.virt import hardware"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"host_manager_opts \u003d ["},{"line_number":43,"context_line":"    cfg.MultiStrOpt(\u0027scheduler_available_filters\u0027,"},{"line_number":44,"context_line":"            default\u003d[\u0027nova.scheduler.filters.all_filters\u0027],"},{"line_number":45,"context_line":"            help\u003d\u0027Filter classes available to the scheduler which may \u0027"},{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abe1de1_6093c8a4","side":"PARENT","line":43,"in_reply_to":"9abe1de1_badc6d47","updated":"2015-04-27 09:38:09.000000000","message":"I\u0027m really *against* removing that","commit_id":"c8caebfcbae404f1be26448f163f46e47f7f9c00"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"a0aaaa3afdb509800a7b02fe4c45a268976d1856","unresolved":false,"context_lines":[{"line_number":40,"context_line":"from nova.virt import hardware"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"host_manager_opts \u003d ["},{"line_number":43,"context_line":"    cfg.MultiStrOpt(\u0027scheduler_available_filters\u0027,"},{"line_number":44,"context_line":"            default\u003d[\u0027nova.scheduler.filters.all_filters\u0027],"},{"line_number":45,"context_line":"            help\u003d\u0027Filter classes available to the scheduler which may \u0027"},{"line_number":46,"context_line":"                    \u0027be specified more than once.  An entry of \u0027"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abe1de1_badc6d47","side":"PARENT","line":43,"in_reply_to":"bab921fb_67a8c320","updated":"2015-04-27 09:02:42.000000000","message":"yeah, currently we can do it. But this way can reduce flexibility as Sylvain Bauza said in the Patch set 11.thanks.","commit_id":"c8caebfcbae404f1be26448f163f46e47f7f9c00"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"87e3649995a6234282c29fc9bfa90c0634b74c42","unresolved":false,"context_lines":[{"line_number":49,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":50,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":51,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":52,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":53,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":54,"context_line":"                default\u003d["},{"line_number":55,"context_line":"                  \u0027RetryFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":12,"id":"bab921fb_a727fbc8","line":52,"updated":"2015-04-27 07:39:21.000000000","message":"Hum... Actually you could do it now, just add new option here and deprecate this one.\n\n  # TODO(zhangtralon): This option has been deprecated in Liberty in favor of scheduler_filters\n  # Needs to be removed for M*\n  cfg.ListOpt(\u0027scheduler_default_filters\u0027, ...)\n  cfg.ListOpt(\u0027scheduler_filters\u0027, ...)\n\nThen it\u0027s easy to update the method \u0027_load_filters\u0027 to make the option scheduler_default_filters against scheduler_filters.","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"ce5039e4f2969c783dd961449084335c6537390f","unresolved":false,"context_lines":[{"line_number":49,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":50,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":51,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":52,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":53,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":54,"context_line":"                default\u003d["},{"line_number":55,"context_line":"                  \u0027RetryFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":12,"id":"3acd31a7_e1251109","line":52,"in_reply_to":"9abe1de1_c0f29406","updated":"2015-05-05 03:19:14.000000000","message":"yeah, we can do it in another patch, which make a lot of    people not understand the modify.","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b47d46a47089f04ae5d635cd25f04b9576c551bc","unresolved":false,"context_lines":[{"line_number":49,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":50,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":51,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":52,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":53,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":54,"context_line":"                default\u003d["},{"line_number":55,"context_line":"                  \u0027RetryFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abe1de1_c0f29406","line":52,"in_reply_to":"9abe1de1_fa2ae5e6","updated":"2015-04-27 09:38:09.000000000","message":"Again, restating my previous comments, that needs to be done on a separate change, not in that one IMHO.","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"4323fb15d125faff7431df7e2f2e4bca15bb3de3","unresolved":false,"context_lines":[{"line_number":49,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":50,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":51,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":52,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":53,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":54,"context_line":"                default\u003d["},{"line_number":55,"context_line":"                  \u0027RetryFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abe1de1_80affce2","line":52,"in_reply_to":"9abe1de1_fa2ae5e6","updated":"2015-04-27 09:34:57.000000000","message":"If you prefer to split the work, just do it, i just would like we do all of that work in the same \"time\"","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"a0aaaa3afdb509800a7b02fe4c45a268976d1856","unresolved":false,"context_lines":[{"line_number":49,"context_line":"                    \u0027\"nova.scheduler.filters.all_filters\" \u0027"},{"line_number":50,"context_line":"                    \u0027maps to all filters included with nova.\u0027),"},{"line_number":51,"context_line":"    # TODO(zhangtralon): The value of \"scheduler_default_filters\" is"},{"line_number":52,"context_line":"    #  real one, not default one. we need a compatible way for renaming it."},{"line_number":53,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":54,"context_line":"                default\u003d["},{"line_number":55,"context_line":"                  \u0027RetryFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abe1de1_fa2ae5e6","line":52,"in_reply_to":"bab921fb_a727fbc8","updated":"2015-04-27 09:02:42.000000000","message":"yeah, it is a good way.But I think that doing two works in a patch has some tweaks. I can try it.thanks","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"87e3649995a6234282c29fc9bfa90c0634b74c42","unresolved":false,"context_lines":[{"line_number":483,"context_line":"                        \"\u0027force_nodes\u0027 value of \u0027%s\u0027\")"},{"line_number":484,"context_line":"            LOG.info(msg % forced_nodes_str)"},{"line_number":485,"context_line":""},{"line_number":486,"context_line":"        filters \u003d self.default_filters"},{"line_number":487,"context_line":"        ignore_hosts \u003d filter_properties.get(\u0027ignore_hosts\u0027, [])"},{"line_number":488,"context_line":"        force_hosts \u003d filter_properties.get(\u0027force_hosts\u0027, [])"},{"line_number":489,"context_line":"        force_nodes \u003d filter_properties.get(\u0027force_nodes\u0027, [])"}],"source_content_type":"text/x-python","patch_set":12,"id":"bab921fb_a756db59","line":486,"updated":"2015-04-27 07:39:21.000000000","message":"This variable can be remove here, you just have to pass self.default_filters in the end of the method.","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b47d46a47089f04ae5d635cd25f04b9576c551bc","unresolved":false,"context_lines":[{"line_number":483,"context_line":"                        \"\u0027force_nodes\u0027 value of \u0027%s\u0027\")"},{"line_number":484,"context_line":"            LOG.info(msg % forced_nodes_str)"},{"line_number":485,"context_line":""},{"line_number":486,"context_line":"        filters \u003d self.default_filters"},{"line_number":487,"context_line":"        ignore_hosts \u003d filter_properties.get(\u0027ignore_hosts\u0027, [])"},{"line_number":488,"context_line":"        force_hosts \u003d filter_properties.get(\u0027force_hosts\u0027, [])"},{"line_number":489,"context_line":"        force_nodes \u003d filter_properties.get(\u0027force_nodes\u0027, [])"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abe1de1_40e7a440","line":486,"in_reply_to":"9abe1de1_3a93bdfc","updated":"2015-04-27 09:38:09.000000000","message":"Agreed","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"f85b4bed5e29d3214972765ca45aa60e911d540c","unresolved":false,"context_lines":[{"line_number":483,"context_line":"                        \"\u0027force_nodes\u0027 value of \u0027%s\u0027\")"},{"line_number":484,"context_line":"            LOG.info(msg % forced_nodes_str)"},{"line_number":485,"context_line":""},{"line_number":486,"context_line":"        filters \u003d self.default_filters"},{"line_number":487,"context_line":"        ignore_hosts \u003d filter_properties.get(\u0027ignore_hosts\u0027, [])"},{"line_number":488,"context_line":"        force_hosts \u003d filter_properties.get(\u0027force_hosts\u0027, [])"},{"line_number":489,"context_line":"        force_nodes \u003d filter_properties.get(\u0027force_nodes\u0027, [])"}],"source_content_type":"text/x-python","patch_set":12,"id":"9abe1de1_3a93bdfc","line":486,"in_reply_to":"bab921fb_a756db59","updated":"2015-04-27 09:08:15.000000000","message":"yeah, it is nice. thanks","commit_id":"5ab7c95ee463c03afa5207789b254f313efa02ef"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"2687cd1b8580f7d3bf9380546c8bb96ab97f2680","unresolved":false,"context_lines":[{"line_number":349,"context_line":"            self._init_instance_info()"},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"    def _load_filters(self):"},{"line_number":352,"context_line":"        return CONF.scheduler_filters"},{"line_number":353,"context_line":""},{"line_number":354,"context_line":"    def _init_aggregates(self):"},{"line_number":355,"context_line":"        elevated \u003d context_module.get_admin_context()"}],"source_content_type":"text/x-python","patch_set":14,"id":"3acd31a7_dd654a1e","line":352,"updated":"2015-05-05 13:07:48.000000000","message":"Actually until we are in liberty if \u0027scheduler_default_filters\u0027 is different than \u0027scheduler_filters\u0027 and \u0027scheduler_default_filters\u0027 does not use the default value - We  should to use \u0027scheduler_default_filters\u0027 and Warn something to the operator.","commit_id":"aa73d4b550cc499f3abc94cacff04abdc146d766"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"d06a57fbf4c835446d774d9ea98f948ed199c89c","unresolved":false,"context_lines":[{"line_number":349,"context_line":"            self._init_instance_info()"},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"    def _load_filters(self):"},{"line_number":352,"context_line":"        return CONF.scheduler_filters"},{"line_number":353,"context_line":""},{"line_number":354,"context_line":"    def _init_aggregates(self):"},{"line_number":355,"context_line":"        elevated \u003d context_module.get_admin_context()"}],"source_content_type":"text/x-python","patch_set":14,"id":"1aca2d91_73a3a09f","line":352,"in_reply_to":"3acd31a7_dd654a1e","updated":"2015-05-06 00:54:24.000000000","message":"oh..,thank your notice. About this, I think a lot. Maybe, it is reasonable to deal with it in another patch. I have register a bug.\nhttps://bugs.launchpad.net/nova/+bug/1449934","commit_id":"aa73d4b550cc499f3abc94cacff04abdc146d766"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"d0039f1a86c31ce6b190f600490333ed85692dc2","unresolved":false,"context_lines":[{"line_number":418,"context_line":""},{"line_number":419,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":420,"context_line":"        \"\"\"Since the caller may specify which filters to use we need"},{"line_number":421,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":422,"context_line":"        function checks the filter names against a predefined set"},{"line_number":423,"context_line":"        of acceptable filters."},{"line_number":424,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":15,"id":"1aca2d91_e8a577b5","side":"PARENT","line":421,"updated":"2015-05-06 07:05:30.000000000","message":"Well as already said since we are removing the aim for users to specify which filters they can use (never worked) which is one of the point of this comment and the option \u0027scheduler_available_filters\u0027\n(cf: provides a list of filters users can request) - The comment seems little bit odd now BUT I guess we can update that part when we will remove the option.","commit_id":"a85d45cc08eaaedad2ebe8427203d4866d17172a"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"6e2df8182231e7e31ed426dbd0ca24a2ce43938b","unresolved":false,"context_lines":[{"line_number":418,"context_line":""},{"line_number":419,"context_line":"    def _choose_host_filters(self, filter_cls_names):"},{"line_number":420,"context_line":"        \"\"\"Since the caller may specify which filters to use we need"},{"line_number":421,"context_line":"        to have an authoritative list of what is permissible. This"},{"line_number":422,"context_line":"        function checks the filter names against a predefined set"},{"line_number":423,"context_line":"        of acceptable filters."},{"line_number":424,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":15,"id":"1aca2d91_3f2cc2aa","side":"PARENT","line":421,"in_reply_to":"1aca2d91_e8a577b5","updated":"2015-05-06 08:13:02.000000000","message":"ok, we update it when we remove  the option \u0027scheduler_available_filters\u0027.","commit_id":"a85d45cc08eaaedad2ebe8427203d4866d17172a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"295e72ad006c3a65a96289f223e93b95fe6a60bb","unresolved":false,"context_lines":[{"line_number":441,"context_line":"        return good_filters"},{"line_number":442,"context_line":""},{"line_number":443,"context_line":"    def get_filtered_hosts(self, hosts, filter_properties,"},{"line_number":444,"context_line":"            filter_class_names\u003dNone, index\u003d0):"},{"line_number":445,"context_line":"        \"\"\"Filter hosts and return only ones passing all filters.\"\"\""},{"line_number":446,"context_line":""},{"line_number":447,"context_line":"        def _strip_ignore_hosts(host_map, hosts_to_ignore):"}],"source_content_type":"text/x-python","patch_set":16,"id":"5ad58531_dcbef9d3","side":"PARENT","line":444,"updated":"2015-05-11 21:39:51.000000000","message":"Since we\u0027re not supporting stable internal APIs, I\u0027m fine with that change but it would probably need to be revered if a new SchedulerDriver would call the HostManager differently.","commit_id":"a85d45cc08eaaedad2ebe8427203d4866d17172a"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"320ada9e7c1133b2c4126ac96aee0f917b59525a","unresolved":false,"context_lines":[{"line_number":440,"context_line":"            raise exception.SchedulerHostFilterNotFound(filter_name\u003dmsg)"},{"line_number":441,"context_line":"        return good_filters"},{"line_number":442,"context_line":""},{"line_number":443,"context_line":"    def get_filtered_hosts(self, hosts, filter_properties, index\u003d0):"},{"line_number":444,"context_line":"        \"\"\"Filter hosts and return only ones passing all filters.\"\"\""},{"line_number":445,"context_line":""},{"line_number":446,"context_line":"        def _strip_ignore_hosts(host_map, hosts_to_ignore):"}],"source_content_type":"text/x-python","patch_set":17,"id":"9a0c5dc1_4ded56ee","line":443,"updated":"2015-05-13 18:19:49.000000000","message":"the host manager is (for better or worse) a pluggable point, so by changing this you\u0027re potentially breaking anyone that uses this function.\n\nI really think we should be dropping the plug point, but ironic uses it right now. Ideally, we\u0027d replace this with something that selects the right host manager when ironic is in use instead of requiring the admin to know and set this properly.\n\nBut, I don\u0027t see any real gain by deleting this code so long as it\u0027s quasi-public. I\u0027m +100 on deprecating that plug point and removing this along with the plug point after suitable deprecation.","commit_id":"11c37b3c5fcbd1baa4ac5b9279ba5f2bbdc30a0a"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"5eae00fa1ded4c5c42219bc7eb913578fab9cdb1","unresolved":false,"context_lines":[{"line_number":440,"context_line":"            raise exception.SchedulerHostFilterNotFound(filter_name\u003dmsg)"},{"line_number":441,"context_line":"        return good_filters"},{"line_number":442,"context_line":""},{"line_number":443,"context_line":"    def get_filtered_hosts(self, hosts, filter_properties, index\u003d0):"},{"line_number":444,"context_line":"        \"\"\"Filter hosts and return only ones passing all filters.\"\"\""},{"line_number":445,"context_line":""},{"line_number":446,"context_line":"        def _strip_ignore_hosts(host_map, hosts_to_ignore):"}],"source_content_type":"text/x-python","patch_set":17,"id":"7a016987_e3569a05","line":443,"in_reply_to":"9a0c5dc1_4ded56ee","updated":"2015-05-14 12:49:10.000000000","message":"you mean that the right host mananger can be selected based on  requests? That should be another thing, this change just a small optimize.","commit_id":"11c37b3c5fcbd1baa4ac5b9279ba5f2bbdc30a0a"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"320ada9e7c1133b2c4126ac96aee0f917b59525a","unresolved":false,"context_lines":[{"line_number":512,"context_line":"        return self.filter_handler.get_filtered_objects(self.default_filters,"},{"line_number":513,"context_line":"                                                        hosts,"},{"line_number":514,"context_line":"                                                        filter_properties,"},{"line_number":515,"context_line":"                                                        index)"},{"line_number":516,"context_line":""},{"line_number":517,"context_line":"    def get_weighed_hosts(self, hosts, weight_properties):"},{"line_number":518,"context_line":"        \"\"\"Weigh the hosts.\"\"\""}],"source_content_type":"text/x-python","patch_set":17,"id":"9a0c5dc1_2d27c2b7","line":515,"updated":"2015-05-13 18:19:49.000000000","message":"This is an unrelated change, right? If so, please avoid making this change.","commit_id":"11c37b3c5fcbd1baa4ac5b9279ba5f2bbdc30a0a"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"5eae00fa1ded4c5c42219bc7eb913578fab9cdb1","unresolved":false,"context_lines":[{"line_number":512,"context_line":"        return self.filter_handler.get_filtered_objects(self.default_filters,"},{"line_number":513,"context_line":"                                                        hosts,"},{"line_number":514,"context_line":"                                                        filter_properties,"},{"line_number":515,"context_line":"                                                        index)"},{"line_number":516,"context_line":""},{"line_number":517,"context_line":"    def get_weighed_hosts(self, hosts, weight_properties):"},{"line_number":518,"context_line":"        \"\"\"Weigh the hosts.\"\"\""}],"source_content_type":"text/x-python","patch_set":17,"id":"7a016987_8365a6e2","line":515,"in_reply_to":"9a0c5dc1_2d27c2b7","updated":"2015-05-14 12:49:10.000000000","message":"the filters is changed to self.default_filters.","commit_id":"11c37b3c5fcbd1baa4ac5b9279ba5f2bbdc30a0a"}],"nova/tests/unit/scheduler/test_host_manager.py":[{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"a305fea1b4690150531c4af14045b048ea6427ea","unresolved":false,"context_lines":[{"line_number":222,"context_line":"        self._mock_get_filtered_hosts(info)"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"        result \u003d self.host_manager.get_filtered_hosts(self.fake_hosts,"},{"line_number":225,"context_line":"                fake_properties, filter_class_names\u003dspecified_filters)"},{"line_number":226,"context_line":"        self._verify_result(info, result)"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def test_get_filtered_hosts_with_ignore(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aaa499b_c09ff74e","side":"PARENT","line":225,"updated":"2015-04-14 07:36:31.000000000","message":"I think this test shouldn\u0027t be removed, just not pass the filter_class_names is ok.","commit_id":"c8caebfcbae404f1be26448f163f46e47f7f9c00"},{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"f973cf8f8cb488f0d3cfff6d52f35fcb9b4feacb","unresolved":false,"context_lines":[{"line_number":222,"context_line":"        self._mock_get_filtered_hosts(info)"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"        result \u003d self.host_manager.get_filtered_hosts(self.fake_hosts,"},{"line_number":225,"context_line":"                fake_properties, filter_class_names\u003dspecified_filters)"},{"line_number":226,"context_line":"        self._verify_result(info, result)"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def test_get_filtered_hosts_with_ignore(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aaa499b_6b833f05","side":"PARENT","line":225,"in_reply_to":"7aaa499b_73e11f9a","updated":"2015-04-15 02:05:05.000000000","message":"sure, it will be right.","commit_id":"c8caebfcbae404f1be26448f163f46e47f7f9c00"},{"author":{"_account_id":11530,"name":"zhangtralon","email":"ztralon@hotmail.com","username":"zhangtralon"},"change_message_id":"7467deab376fcc0d4c77b77b9e7c357243fdab33","unresolved":false,"context_lines":[{"line_number":222,"context_line":"        self._mock_get_filtered_hosts(info)"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"        result \u003d self.host_manager.get_filtered_hosts(self.fake_hosts,"},{"line_number":225,"context_line":"                fake_properties, filter_class_names\u003dspecified_filters)"},{"line_number":226,"context_line":"        self._verify_result(info, result)"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def test_get_filtered_hosts_with_ignore(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aaa499b_73e11f9a","side":"PARENT","line":225,"in_reply_to":"7aaa499b_c09ff74e","updated":"2015-04-14 08:02:44.000000000","message":"This case just tests the filter_class_names, if the filter_class_names is removed, we can remove it safely. thanks","commit_id":"c8caebfcbae404f1be26448f163f46e47f7f9c00"}],"nova/tests/unit/scheduler/test_ironic_host_manager.py":[{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"a305fea1b4690150531c4af14045b048ea6427ea","unresolved":false,"context_lines":[{"line_number":310,"context_line":"        self._mock_get_filtered_hosts(info)"},{"line_number":311,"context_line":""},{"line_number":312,"context_line":"        result \u003d self.host_manager.get_filtered_hosts(self.fake_hosts,"},{"line_number":313,"context_line":"                fake_properties, filter_class_names\u003dspecified_filters)"},{"line_number":314,"context_line":"        self._verify_result(info, result)"},{"line_number":315,"context_line":""},{"line_number":316,"context_line":"    def test_get_filtered_hosts_with_ignore(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"7aaa499b_20e8dbb3","side":"PARENT","line":313,"updated":"2015-04-14 07:36:31.000000000","message":"Shouldn\u0027t remove this test.Just remove filter_class_names.","commit_id":"c8caebfcbae404f1be26448f163f46e47f7f9c00"}]}
