)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"a97488c01daed36478988e5232d88a3eecf0c4aa","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     ChangBo Guo(gcb) \u003ceric.guo@easystack.cn\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-05-05 21:37:02 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Filter out unactive compute firstly"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adjust filters\u0027 order for default value of options"},{"line_number":10,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1aca2d91_ce8999cc","line":7,"updated":"2015-05-06 11:58:39.000000000","message":"unactive \u003d\u003e inactive","commit_id":"8c3d16de6c6d46061b43407ac20f09ed07da0fe9"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"67e63cdf71ee88c76b45b9742130cf52ae8ca71f","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     ChangBo Guo(gcb) \u003ceric.guo@easystack.cn\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-05-05 21:37:02 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Filter out unactive compute firstly"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adjust filters\u0027 order for default value of options"},{"line_number":10,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1aca2d91_dd824d52","line":7,"in_reply_to":"1aca2d91_ce8999cc","updated":"2015-05-07 01:50:02.000000000","message":"Done","commit_id":"8c3d16de6c6d46061b43407ac20f09ed07da0fe9"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"a97488c01daed36478988e5232d88a3eecf0c4aa","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adjust filters\u0027 order for default value of options"},{"line_number":10,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"},{"line_number":11,"context_line":"to skip unactive compute node as soon as possible."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I7cd17cbcf037a9fb6c5389b1005c0c2501fe22f2"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1aca2d91_2ec12de5","line":11,"updated":"2015-05-06 11:58:39.000000000","message":"unactive \u003d\u003e insactive","commit_id":"8c3d16de6c6d46061b43407ac20f09ed07da0fe9"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"67e63cdf71ee88c76b45b9742130cf52ae8ca71f","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adjust filters\u0027 order for default value of options"},{"line_number":10,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"},{"line_number":11,"context_line":"to skip unactive compute node as soon as possible."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I7cd17cbcf037a9fb6c5389b1005c0c2501fe22f2"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1aca2d91_bd879160","line":11,"in_reply_to":"1aca2d91_2ec12de5","updated":"2015-05-07 01:50:02.000000000","message":"Done","commit_id":"8c3d16de6c6d46061b43407ac20f09ed07da0fe9"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"ef148d92885556386557c0826747a7eab9a0ee3b","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Adjust filters\u0027 order for default value of options"},{"line_number":10,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"},{"line_number":11,"context_line":"to skip unactive compute node as soon as possible."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I7cd17cbcf037a9fb6c5389b1005c0c2501fe22f2"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3acd31a7_f38ef5ce","line":12,"updated":"2015-05-05 13:58:18.000000000","message":"I do not know if we need a DocImpact here since you only change the order.","commit_id":"8c3d16de6c6d46061b43407ac20f09ed07da0fe9"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"67e63cdf71ee88c76b45b9742130cf52ae8ca71f","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Adjust filters\u0027 order for default value of options"},{"line_number":10,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"},{"line_number":11,"context_line":"to skip unactive compute node as soon as possible."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I7cd17cbcf037a9fb6c5389b1005c0c2501fe22f2"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1aca2d91_9d7cd573","line":12,"in_reply_to":"1aca2d91_ae741dcf","updated":"2015-05-07 01:50:02.000000000","message":"will add DocImpact flag","commit_id":"8c3d16de6c6d46061b43407ac20f09ed07da0fe9"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"a97488c01daed36478988e5232d88a3eecf0c4aa","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Adjust filters\u0027 order for default value of options"},{"line_number":10,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"},{"line_number":11,"context_line":"to skip unactive compute node as soon as possible."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I7cd17cbcf037a9fb6c5389b1005c0c2501fe22f2"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1aca2d91_ae741dcf","line":12,"in_reply_to":"3acd31a7_f38ef5ce","updated":"2015-05-06 11:58:39.000000000","message":"Yes, this requires a DocImpact flag","commit_id":"8c3d16de6c6d46061b43407ac20f09ed07da0fe9"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"6b4bc7f60eb1749127761661de0047057a54ac81","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adjust filters\u0027 order for default value of options"},{"line_number":10,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"},{"line_number":11,"context_line":"to skip inactive compute node as soon as possible."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"DocImpact: Make ComputeFilter as the first filter in options"},{"line_number":14,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"1aca2d91_6df5afc9","line":11,"updated":"2015-05-07 15:49:11.000000000","message":"The words here might need modification\nevery filter has a possiblity to filter hosts\nthe only difference is the ratio and the env\ne.g you got 10 servers and only 1 of them is capable for your deploy such as arch, in this case , ComputeCapabilitiesFilter might be the best one to be the first filter class\n\nso we may say in customer side , the most possible situation \nis compute host frequenent not available.","commit_id":"8d0aa78f7404f5faae215d3e26c8e8f4fce1b55b"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"f57c01942bae0a5a2d63cca8a53da26adb2f0fdb","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adjust filters\u0027 order for default value of options"},{"line_number":10,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"},{"line_number":11,"context_line":"to skip inactive compute node as soon as possible."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"DocImpact: Make ComputeFilter as the first filter in options"},{"line_number":14,"context_line":"scheduler_default_filters/baremetal_scheduler_default_filters"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9af37de9_78ca7551","line":11,"in_reply_to":"1aca2d91_6df5afc9","updated":"2015-05-10 10:43:33.000000000","message":"will add this.","commit_id":"8d0aa78f7404f5faae215d3e26c8e8f4fce1b55b"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"756fb0c0165bbcdfeec4cb1e055e0d4a030f615a","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Filter out inactive compute firstly"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In customer side, the most possible and frequent situation is"},{"line_number":10,"context_line":"that compute node isn\u0027t active, so adjust filters\u0027 order for"},{"line_number":11,"context_line":"default value of options scheduler_default_filters and"},{"line_number":12,"context_line":"baremetal_scheduler_default_filters to skip inactive compute"},{"line_number":13,"context_line":"node as soon as possible."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"5afe65bd_4dd77223","line":10,"updated":"2015-06-04 06:42:40.000000000","message":"I am not sure this is true for the average case. So I am not convinced it is worth changing the default order.","commit_id":"51a977b2e4c6f4c938de653791e1f1bf75da17ff"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"0ccfd4dab80c89a3b1a1bf1cabba74394c8445c2","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Filter out inactive compute firstly"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In customer side, the most possible and frequent situation is"},{"line_number":10,"context_line":"that compute node isn\u0027t active, so adjust filters\u0027 order for"},{"line_number":11,"context_line":"default value of options scheduler_default_filters and"},{"line_number":12,"context_line":"baremetal_scheduler_default_filters to skip inactive compute"},{"line_number":13,"context_line":"node as soon as possible."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"3afb71cf_7a3ed6b9","line":10,"in_reply_to":"5afe65bd_4dd77223","updated":"2015-06-05 02:16:33.000000000","message":"Checking compute service\u0027s state is always needed , this change is harmless, and can avoid  other unnecessary checking . That means the scheduler will  reduce n -1  time check ( n \u003d len(scheduler_default_filters)), when compute service is down.","commit_id":"51a977b2e4c6f4c938de653791e1f1bf75da17ff"}],"doc/source/filter_scheduler.rst":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"7975a8b610f14c8698bc2a3d5604d579c36cc71f","unresolved":false,"context_lines":[{"line_number":331,"context_line":"FilterScheduler.  The RamFilter, ComputeFilter, and MyFilter are used by"},{"line_number":332,"context_line":"default when no filters are specified in the request."},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"Each filter filters host in different ways like querying database or calculating."},{"line_number":335,"context_line":"That means different filter take different cost. Avoiding unnecessary costs can"},{"line_number":336,"context_line":"help improve scheduling performance. A better choice is that arrange the filter"},{"line_number":337,"context_line":"order of scheduler_default_filters according to their costs in reverse order."}],"source_content_type":"text/x-rst","patch_set":16,"id":"7a2fa921_790fe32e","line":334,"updated":"2015-10-11 16:52:15.000000000","message":"host \u003d\u003e hosts","commit_id":"ff3e8a478b4cfc6c1e67e98715b3af37f7806b77"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"7975a8b610f14c8698bc2a3d5604d579c36cc71f","unresolved":false,"context_lines":[{"line_number":331,"context_line":"FilterScheduler.  The RamFilter, ComputeFilter, and MyFilter are used by"},{"line_number":332,"context_line":"default when no filters are specified in the request."},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"Each filter filters host in different ways like querying database or calculating."},{"line_number":335,"context_line":"That means different filter take different cost. Avoiding unnecessary costs can"},{"line_number":336,"context_line":"help improve scheduling performance. A better choice is that arrange the filter"},{"line_number":337,"context_line":"order of scheduler_default_filters according to their costs in reverse order."}],"source_content_type":"text/x-rst","patch_set":16,"id":"7a2fa921_191caf69","line":334,"range":{"start_line":334,"start_character":20,"end_line":334,"end_character":24},"updated":"2015-10-11 16:52:15.000000000","message":"querying database \u003d\u003e querying a database","commit_id":"ff3e8a478b4cfc6c1e67e98715b3af37f7806b77"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"0d10c1fcde195fcdf50e297b24f909348d549302","unresolved":false,"context_lines":[{"line_number":331,"context_line":"FilterScheduler.  The RamFilter, ComputeFilter, and MyFilter are used by"},{"line_number":332,"context_line":"default when no filters are specified in the request."},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"Each filter filters host in different ways like querying database or calculating."},{"line_number":335,"context_line":"That means different filter take different cost. Avoiding unnecessary costs can"},{"line_number":336,"context_line":"help improve scheduling performance. A better choice is that arrange the filter"},{"line_number":337,"context_line":"order of scheduler_default_filters according to their costs in reverse order."}],"source_content_type":"text/x-rst","patch_set":16,"id":"5a2ca52d_23d04853","line":334,"in_reply_to":"7a2fa921_191caf69","updated":"2015-10-13 14:23:31.000000000","message":"Done","commit_id":"ff3e8a478b4cfc6c1e67e98715b3af37f7806b77"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"0d10c1fcde195fcdf50e297b24f909348d549302","unresolved":false,"context_lines":[{"line_number":331,"context_line":"FilterScheduler.  The RamFilter, ComputeFilter, and MyFilter are used by"},{"line_number":332,"context_line":"default when no filters are specified in the request."},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"Each filter filters host in different ways like querying database or calculating."},{"line_number":335,"context_line":"That means different filter take different cost. Avoiding unnecessary costs can"},{"line_number":336,"context_line":"help improve scheduling performance. A better choice is that arrange the filter"},{"line_number":337,"context_line":"order of scheduler_default_filters according to their costs in reverse order."}],"source_content_type":"text/x-rst","patch_set":16,"id":"5a2ca52d_43d54441","line":334,"in_reply_to":"7a2fa921_790fe32e","updated":"2015-10-13 14:23:31.000000000","message":"Done","commit_id":"ff3e8a478b4cfc6c1e67e98715b3af37f7806b77"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"7975a8b610f14c8698bc2a3d5604d579c36cc71f","unresolved":false,"context_lines":[{"line_number":332,"context_line":"default when no filters are specified in the request."},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"Each filter filters host in different ways like querying database or calculating."},{"line_number":335,"context_line":"That means different filter take different cost. Avoiding unnecessary costs can"},{"line_number":336,"context_line":"help improve scheduling performance. A better choice is that arrange the filter"},{"line_number":337,"context_line":"order of scheduler_default_filters according to their costs in reverse order."},{"line_number":338,"context_line":"For example, ComputeFilter is better before any resource calculating filters like"}],"source_content_type":"text/x-rst","patch_set":16,"id":"7a2fa921_39196b7a","line":335,"range":{"start_line":335,"start_character":21,"end_line":335,"end_character":47},"updated":"2015-10-11 16:52:15.000000000","message":"filter take different cost \u003d\u003e filters have different costs","commit_id":"ff3e8a478b4cfc6c1e67e98715b3af37f7806b77"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"0d10c1fcde195fcdf50e297b24f909348d549302","unresolved":false,"context_lines":[{"line_number":332,"context_line":"default when no filters are specified in the request."},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"Each filter filters host in different ways like querying database or calculating."},{"line_number":335,"context_line":"That means different filter take different cost. Avoiding unnecessary costs can"},{"line_number":336,"context_line":"help improve scheduling performance. A better choice is that arrange the filter"},{"line_number":337,"context_line":"order of scheduler_default_filters according to their costs in reverse order."},{"line_number":338,"context_line":"For example, ComputeFilter is better before any resource calculating filters like"}],"source_content_type":"text/x-rst","patch_set":16,"id":"5a2ca52d_c3487430","line":335,"in_reply_to":"7a2fa921_39196b7a","updated":"2015-10-13 14:23:31.000000000","message":"Done","commit_id":"ff3e8a478b4cfc6c1e67e98715b3af37f7806b77"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"7975a8b610f14c8698bc2a3d5604d579c36cc71f","unresolved":false,"context_lines":[{"line_number":333,"context_line":""},{"line_number":334,"context_line":"Each filter filters host in different ways like querying database or calculating."},{"line_number":335,"context_line":"That means different filter take different cost. Avoiding unnecessary costs can"},{"line_number":336,"context_line":"help improve scheduling performance. A better choice is that arrange the filter"},{"line_number":337,"context_line":"order of scheduler_default_filters according to their costs in reverse order."},{"line_number":338,"context_line":"For example, ComputeFilter is better before any resource calculating filters like"},{"line_number":339,"context_line":"RamFilter, CoreFilter."}],"source_content_type":"text/x-rst","patch_set":16,"id":"7a2fa921_991e7f5e","line":336,"updated":"2015-10-11 16:52:15.000000000","message":"is that arrange the filter \u003d\u003e not really sure what this means","commit_id":"ff3e8a478b4cfc6c1e67e98715b3af37f7806b77"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"0d10c1fcde195fcdf50e297b24f909348d549302","unresolved":false,"context_lines":[{"line_number":333,"context_line":""},{"line_number":334,"context_line":"Each filter filters host in different ways like querying database or calculating."},{"line_number":335,"context_line":"That means different filter take different cost. Avoiding unnecessary costs can"},{"line_number":336,"context_line":"help improve scheduling performance. A better choice is that arrange the filter"},{"line_number":337,"context_line":"order of scheduler_default_filters according to their costs in reverse order."},{"line_number":338,"context_line":"For example, ComputeFilter is better before any resource calculating filters like"},{"line_number":339,"context_line":"RamFilter, CoreFilter."}],"source_content_type":"text/x-rst","patch_set":16,"id":"5a2ca52d_a3ce9881","line":336,"in_reply_to":"7a2fa921_991e7f5e","updated":"2015-10-13 14:23:31.000000000","message":"Done","commit_id":"ff3e8a478b4cfc6c1e67e98715b3af37f7806b77"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"58a55e128a6b346d86d54e310c67ba30181ead87","unresolved":false,"context_lines":[{"line_number":339,"context_line":"FilterScheduler.  The RamFilter, ComputeFilter, and MyFilter are used by"},{"line_number":340,"context_line":"default when no filters are specified in the request."},{"line_number":341,"context_line":""},{"line_number":342,"context_line":"Each filter filters hosts in different ways like querying a database or calculating."},{"line_number":343,"context_line":"That means different filters have different costs. Avoiding unnecessary costs can"},{"line_number":344,"context_line":"help improve scheduling performance. We\u0027d better sort scheduler_default_filters items"},{"line_number":345,"context_line":"by their costs in reverse order. For example, ComputeFilter is better before any resource"}],"source_content_type":"text/x-rst","patch_set":20,"id":"3a7e1126_4b8c5e35","line":342,"updated":"2015-12-17 15:35:12.000000000","message":"No filter should ever query the database, at least not any more.","commit_id":"bdb9768ff0c125676a1e44014587732ddffc1beb"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"58a55e128a6b346d86d54e310c67ba30181ead87","unresolved":false,"context_lines":[{"line_number":343,"context_line":"That means different filters have different costs. Avoiding unnecessary costs can"},{"line_number":344,"context_line":"help improve scheduling performance. We\u0027d better sort scheduler_default_filters items"},{"line_number":345,"context_line":"by their costs in reverse order. For example, ComputeFilter is better before any resource"},{"line_number":346,"context_line":"calculating filters like RamFilter, CoreFilter."},{"line_number":347,"context_line":""},{"line_number":348,"context_line":"Weights"},{"line_number":349,"context_line":"-------"}],"source_content_type":"text/x-rst","patch_set":20,"id":"3a7e1126_8b732615","line":346,"updated":"2015-12-17 15:35:12.000000000","message":"I believe in most medium/large environments, the largest number of hosts being removed for the list, is what needs to be the focus.\n\nFew of the filters are now \"expensive\" in any sense, as I understand it. Although I haven\u0027t recently check that using this:\nhttps://github.com/openstack/nova/blob/master/nova/tests/unit/scheduler/test_caching_scheduler.py#L201\n\nIn small environments, the order will make little difference.","commit_id":"bdb9768ff0c125676a1e44014587732ddffc1beb"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"fbc0319a0fd74daea2787d7898b158daca1cb6f0","unresolved":false,"context_lines":[{"line_number":340,"context_line":"FilterScheduler.  The RamFilter, ComputeFilter, and MyFilter are used by"},{"line_number":341,"context_line":"default when no filters are specified in the request."},{"line_number":342,"context_line":""},{"line_number":343,"context_line":"Each filter filters hosts in different way and takes different cost. The order of"},{"line_number":344,"context_line":"``scheduler_default_filters`` affects scheduling performance. The general suggestion"},{"line_number":345,"context_line":"is that filter out invalid hosts as soon as possible to avoid unnecessary costs."},{"line_number":346,"context_line":"We can sort ``heduler_default_filters`` items by their costs in reverse order."}],"source_content_type":"text/x-rst","patch_set":21,"id":"3a7e1126_0781fac2","line":343,"updated":"2015-12-21 04:04:06.000000000","message":"Similar words(\u0027filter\u0027 and \u0027filters\u0027) are adjacent to each other.\n\u0027filters\u0027 had better be changed.\nFor example, \u0027selects\u0027, \u0027chooses\u0027, \u0027picks out\u0027 and so on.","commit_id":"07421df670ae077a5236162415b0a272e957295a"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"738f1d89cdfedc52f626ee54ad0a160fffcde253","unresolved":false,"context_lines":[{"line_number":340,"context_line":"FilterScheduler.  The RamFilter, ComputeFilter, and MyFilter are used by"},{"line_number":341,"context_line":"default when no filters are specified in the request."},{"line_number":342,"context_line":""},{"line_number":343,"context_line":"Each filter filters hosts in different way and takes different cost. The order of"},{"line_number":344,"context_line":"``scheduler_default_filters`` affects scheduling performance. The general suggestion"},{"line_number":345,"context_line":"is that filter out invalid hosts as soon as possible to avoid unnecessary costs."},{"line_number":346,"context_line":"We can sort ``heduler_default_filters`` items by their costs in reverse order."}],"source_content_type":"text/x-rst","patch_set":21,"id":"3a7e1126_190cfe39","line":343,"in_reply_to":"3a7e1126_0781fac2","updated":"2015-12-21 04:21:53.000000000","message":"Done","commit_id":"07421df670ae077a5236162415b0a272e957295a"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"fbc0319a0fd74daea2787d7898b158daca1cb6f0","unresolved":false,"context_lines":[{"line_number":343,"context_line":"Each filter filters hosts in different way and takes different cost. The order of"},{"line_number":344,"context_line":"``scheduler_default_filters`` affects scheduling performance. The general suggestion"},{"line_number":345,"context_line":"is that filter out invalid hosts as soon as possible to avoid unnecessary costs."},{"line_number":346,"context_line":"We can sort ``heduler_default_filters`` items by their costs in reverse order."},{"line_number":347,"context_line":"For example, ComputeFilter is better before any resource calculating filters"},{"line_number":348,"context_line":"like RamFilter, CoreFilter. We also need consider the scale of environments,"},{"line_number":349,"context_line":"AvailabilityZoneFilter is better before any capability or resource calculating filters,"}],"source_content_type":"text/x-rst","patch_set":21,"id":"3a7e1126_e7f70e89","line":346,"updated":"2015-12-21 04:04:06.000000000","message":"s/``heduler_default_filters``/``scheduler_default_filters``/","commit_id":"07421df670ae077a5236162415b0a272e957295a"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"738f1d89cdfedc52f626ee54ad0a160fffcde253","unresolved":false,"context_lines":[{"line_number":343,"context_line":"Each filter filters hosts in different way and takes different cost. The order of"},{"line_number":344,"context_line":"``scheduler_default_filters`` affects scheduling performance. The general suggestion"},{"line_number":345,"context_line":"is that filter out invalid hosts as soon as possible to avoid unnecessary costs."},{"line_number":346,"context_line":"We can sort ``heduler_default_filters`` items by their costs in reverse order."},{"line_number":347,"context_line":"For example, ComputeFilter is better before any resource calculating filters"},{"line_number":348,"context_line":"like RamFilter, CoreFilter. We also need consider the scale of environments,"},{"line_number":349,"context_line":"AvailabilityZoneFilter is better before any capability or resource calculating filters,"}],"source_content_type":"text/x-rst","patch_set":21,"id":"3a7e1126_d912f656","line":346,"in_reply_to":"3a7e1126_e7f70e89","updated":"2015-12-21 04:21:53.000000000","message":"Done","commit_id":"07421df670ae077a5236162415b0a272e957295a"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"beb1c20fc1ec7f5b87b485c68025bcb9dd69f8f9","unresolved":false,"context_lines":[{"line_number":340,"context_line":"FilterScheduler.  The RamFilter, ComputeFilter, and MyFilter are used by"},{"line_number":341,"context_line":"default when no filters are specified in the request."},{"line_number":342,"context_line":""},{"line_number":343,"context_line":"Each filter selects hosts in different way and takes different cost. The order of"},{"line_number":344,"context_line":"``scheduler_default_filters`` affects scheduling performance. The general suggestion"},{"line_number":345,"context_line":"is that filter out invalid hosts as soon as possible to avoid unnecessary costs."},{"line_number":346,"context_line":"We can sort ``scheduler_default_filters`` items by their costs in reverse order."}],"source_content_type":"text/x-rst","patch_set":22,"id":"3a7e1126_ef3d928f","line":343,"updated":"2015-12-21 13:07:57.000000000","message":"\"Each filter selects hosts in a different way and has different costs.\"","commit_id":"edb5c82564986e6a81da376457d5b87942a46012"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"beb1c20fc1ec7f5b87b485c68025bcb9dd69f8f9","unresolved":false,"context_lines":[{"line_number":342,"context_line":""},{"line_number":343,"context_line":"Each filter selects hosts in different way and takes different cost. The order of"},{"line_number":344,"context_line":"``scheduler_default_filters`` affects scheduling performance. The general suggestion"},{"line_number":345,"context_line":"is that filter out invalid hosts as soon as possible to avoid unnecessary costs."},{"line_number":346,"context_line":"We can sort ``scheduler_default_filters`` items by their costs in reverse order."},{"line_number":347,"context_line":"For example, ComputeFilter is better before any resource calculating filters"},{"line_number":348,"context_line":"like RamFilter, CoreFilter. We also need consider the scale of environments,"}],"source_content_type":"text/x-rst","patch_set":22,"id":"3a7e1126_8f408e08","line":345,"updated":"2015-12-21 13:07:57.000000000","message":"s/that/to/","commit_id":"edb5c82564986e6a81da376457d5b87942a46012"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"beb1c20fc1ec7f5b87b485c68025bcb9dd69f8f9","unresolved":false,"context_lines":[{"line_number":345,"context_line":"is that filter out invalid hosts as soon as possible to avoid unnecessary costs."},{"line_number":346,"context_line":"We can sort ``scheduler_default_filters`` items by their costs in reverse order."},{"line_number":347,"context_line":"For example, ComputeFilter is better before any resource calculating filters"},{"line_number":348,"context_line":"like RamFilter, CoreFilter. We also need consider the scale of environments,"},{"line_number":349,"context_line":"AvailabilityZoneFilter is better before any capability or resource calculating filters,"},{"line_number":350,"context_line":"especially in medium/large environments."},{"line_number":351,"context_line":""}],"source_content_type":"text/x-rst","patch_set":22,"id":"3a7e1126_af430a12","line":348,"updated":"2015-12-21 13:07:57.000000000","message":"s/need/need to/","commit_id":"edb5c82564986e6a81da376457d5b87942a46012"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"beb1c20fc1ec7f5b87b485c68025bcb9dd69f8f9","unresolved":false,"context_lines":[{"line_number":347,"context_line":"For example, ComputeFilter is better before any resource calculating filters"},{"line_number":348,"context_line":"like RamFilter, CoreFilter. We also need consider the scale of environments,"},{"line_number":349,"context_line":"AvailabilityZoneFilter is better before any capability or resource calculating filters,"},{"line_number":350,"context_line":"especially in medium/large environments."},{"line_number":351,"context_line":""},{"line_number":352,"context_line":"Weights"},{"line_number":353,"context_line":"-------"}],"source_content_type":"text/x-rst","patch_set":22,"id":"3a7e1126_4f4f0637","line":350,"updated":"2015-12-21 13:07:57.000000000","message":"In medium/large environments having AvailabilityZoneFilter before any capability or resource calculating filters can be useful.","commit_id":"edb5c82564986e6a81da376457d5b87942a46012"}],"nova/conf/scheduler.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"58a55e128a6b346d86d54e310c67ba30181ead87","unresolved":false,"context_lines":[{"line_number":30,"context_line":"bm_default_filter_opt \u003d cfg.ListOpt(\"baremetal_scheduler_default_filters\","},{"line_number":31,"context_line":"        default\u003d["},{"line_number":32,"context_line":"            \"RetryFilter\","},{"line_number":33,"context_line":"            \"AvailabilityZoneFilter\","},{"line_number":34,"context_line":"            \"ComputeFilter\","},{"line_number":35,"context_line":"            \"ComputeCapabilitiesFilter\","},{"line_number":36,"context_line":"            \"ImagePropertiesFilter\","}],"source_content_type":"text/x-python","patch_set":20,"id":"3a7e1126_ebdd0a43","side":"PARENT","line":33,"updated":"2015-12-17 15:35:12.000000000","message":"Similar to below, I think its correct to do the AZ filter first, as its likely to rule out the largest number of hosts.","commit_id":"7b70d232e5cf576978b4baa86e6f6083f0ad3e05"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"58a55e128a6b346d86d54e310c67ba30181ead87","unresolved":false,"context_lines":[{"line_number":59,"context_line":"          \"AvailabilityZoneFilter\","},{"line_number":60,"context_line":"          \"RamFilter\","},{"line_number":61,"context_line":"          \"DiskFilter\","},{"line_number":62,"context_line":"          \"ComputeFilter\","},{"line_number":63,"context_line":"          \"ComputeCapabilitiesFilter\","},{"line_number":64,"context_line":"          \"ImagePropertiesFilter\","},{"line_number":65,"context_line":"          \"ServerGroupAntiAffinityFilter\","}],"source_content_type":"text/x-python","patch_set":20,"id":"3a7e1126_6b6d9a97","side":"PARENT","line":62,"updated":"2015-12-17 15:35:12.000000000","message":"I think this is a better choice, as usually very few hosts are excluded by the compute filter, and its better to filter out as many hosts as possible first.","commit_id":"7b70d232e5cf576978b4baa86e6f6083f0ad3e05"}],"nova/scheduler/host_manager.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"97de57d9edd4802f134819f023626876eb43a29c","unresolved":false,"context_lines":[{"line_number":54,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":55,"context_line":"                default\u003d["},{"line_number":56,"context_line":"                  \u0027ComputeFilter\u0027,"},{"line_number":57,"context_line":"                  \u0027RetryFilter\u0027,"},{"line_number":58,"context_line":"                  \u0027AvailabilityZoneFilter\u0027,"},{"line_number":59,"context_line":"                  \u0027RamFilter\u0027,"},{"line_number":60,"context_line":"                  \u0027ComputeCapabilitiesFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":12,"id":"3a50d1a3_0afc87b6","line":57,"updated":"2015-07-28 22:02:37.000000000","message":"Sorry but I think we should leave the RetryFilter to be the first checked, since it\u0027s really needed for our optimistic scheduler.\n\nAlso, I wonder whether all of this is really needed. For sure, we can change that but that sounds nitpicking.","commit_id":"9859dd1c7b3a2d00e110eb5b76e93d3894551f8a"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"d672869efa10b21bd46a30c9291d52e52572713a","unresolved":false,"context_lines":[{"line_number":54,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":55,"context_line":"                default\u003d["},{"line_number":56,"context_line":"                  \u0027ComputeFilter\u0027,"},{"line_number":57,"context_line":"                  \u0027RetryFilter\u0027,"},{"line_number":58,"context_line":"                  \u0027AvailabilityZoneFilter\u0027,"},{"line_number":59,"context_line":"                  \u0027RamFilter\u0027,"},{"line_number":60,"context_line":"                  \u0027ComputeCapabilitiesFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":12,"id":"1a4dcd0f_8eeb50b0","line":57,"in_reply_to":"3a50d1a3_0afc87b6","updated":"2015-08-10 12:14:47.000000000","message":"Done","commit_id":"9859dd1c7b3a2d00e110eb5b76e93d3894551f8a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"495ce60ecd83591164a2efe60bc753b8a50a44db","unresolved":false,"context_lines":[{"line_number":52,"context_line":"    cfg.ListOpt(\u0027scheduler_default_filters\u0027,"},{"line_number":53,"context_line":"                default\u003d["},{"line_number":54,"context_line":"                  \u0027RetryFilter\u0027,"},{"line_number":55,"context_line":"                  \u0027ComputeFilter\u0027,"},{"line_number":56,"context_line":"                  \u0027AvailabilityZoneFilter\u0027,"},{"line_number":57,"context_line":"                  \u0027RamFilter\u0027,"},{"line_number":58,"context_line":"                  \u0027DiskFilter\u0027,"}],"source_content_type":"text/x-python","patch_set":16,"id":"9a1a9d01_1557baca","line":55,"updated":"2015-09-30 14:17:00.000000000","message":"The change sounds fishy but it makes sense from a default perspective in Devstack, I agree.","commit_id":"ff3e8a478b4cfc6c1e67e98715b3af37f7806b77"}],"nova/tests/unit/scheduler/test_host_manager.py":[{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"37e111d77008a70ea9a0d7886ec0262c97ebe3e3","unresolved":false,"context_lines":[{"line_number":122,"context_line":"    @mock.patch.object(host_manager.HostManager, \u0027_init_aggregates\u0027)"},{"line_number":123,"context_line":"    def test_default_filters_order(self, mock_init_agg, mock_init_inst):"},{"line_number":124,"context_line":"        # Reset default value"},{"line_number":125,"context_line":"        CONF.clear_override(\u0027scheduler_default_filters\u0027)"},{"line_number":126,"context_line":"        manager \u003d host_manager.HostManager()"},{"line_number":127,"context_line":"        default_filters \u003d manager.default_filters"},{"line_number":128,"context_line":"        self.assertEqual(8, len(default_filters))"}],"source_content_type":"text/x-python","patch_set":9,"id":"5afe65bd_05e43239","line":125,"updated":"2015-06-01 15:38:42.000000000","message":"this has side effect to make test failed?","commit_id":"b906375e5ff88f712e5dcd24bee343afe83c2375"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"c7d03fd4b2c0db74a57ef194710091af5d99e1fb","unresolved":false,"context_lines":[{"line_number":122,"context_line":"    @mock.patch.object(host_manager.HostManager, \u0027_init_aggregates\u0027)"},{"line_number":123,"context_line":"    def test_default_filters_order(self, mock_init_agg, mock_init_inst):"},{"line_number":124,"context_line":"        # Reset default value"},{"line_number":125,"context_line":"        CONF.clear_override(\u0027scheduler_default_filters\u0027)"},{"line_number":126,"context_line":"        manager \u003d host_manager.HostManager()"},{"line_number":127,"context_line":"        default_filters \u003d manager.default_filters"},{"line_number":128,"context_line":"        self.assertEqual(8, len(default_filters))"}],"source_content_type":"text/x-python","patch_set":9,"id":"5afe65bd_0b09c62c","line":125,"in_reply_to":"5afe65bd_05e43239","updated":"2015-06-02 08:01:09.000000000","message":"Yes this line seems not necessary or did you add it to ensure we are using the default value ?","commit_id":"b906375e5ff88f712e5dcd24bee343afe83c2375"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"787b19c2c8db20e5f9aecd030835f5d9eca8ef04","unresolved":false,"context_lines":[{"line_number":122,"context_line":"    @mock.patch.object(host_manager.HostManager, \u0027_init_aggregates\u0027)"},{"line_number":123,"context_line":"    def test_default_filters_order(self, mock_init_agg, mock_init_inst):"},{"line_number":124,"context_line":"        # Reset default value"},{"line_number":125,"context_line":"        CONF.clear_override(\u0027scheduler_default_filters\u0027)"},{"line_number":126,"context_line":"        manager \u003d host_manager.HostManager()"},{"line_number":127,"context_line":"        default_filters \u003d manager.default_filters"},{"line_number":128,"context_line":"        self.assertEqual(8, len(default_filters))"}],"source_content_type":"text/x-python","patch_set":9,"id":"5afe65bd_768c797f","line":125,"in_reply_to":"5afe65bd_0b09c62c","updated":"2015-06-03 03:08:33.000000000","message":"this line is needed,   we need reset default value  which was changed in line 68, \nand need recover another value \u0027scheduler_available_filters\u0027.","commit_id":"b906375e5ff88f712e5dcd24bee343afe83c2375"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"97de57d9edd4802f134819f023626876eb43a29c","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        default_filters \u003d manager.default_filters"},{"line_number":129,"context_line":"        self.assertEqual(8, len(default_filters))"},{"line_number":130,"context_line":"        self.assertIsInstance(default_filters[0], compute_filter.ComputeFilter)"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"    @mock.patch.object(host_manager.HostManager, \u0027_init_instance_info\u0027)"},{"line_number":133,"context_line":"    @mock.patch.object(objects.AggregateList, \u0027get_all\u0027)"},{"line_number":134,"context_line":"    def test_init_aggregates_no_aggs(self, agg_get_all, mock_init_info):"}],"source_content_type":"text/x-python","patch_set":12,"id":"3a50d1a3_ca18df20","line":131,"updated":"2015-07-28 22:02:37.000000000","message":"I saw the conversation with Gary and Sahid, but I\u0027m really -1 on providing an unittest for that because it creates a confusion with something given by operators usually.","commit_id":"9859dd1c7b3a2d00e110eb5b76e93d3894551f8a"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"d672869efa10b21bd46a30c9291d52e52572713a","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        default_filters \u003d manager.default_filters"},{"line_number":129,"context_line":"        self.assertEqual(8, len(default_filters))"},{"line_number":130,"context_line":"        self.assertIsInstance(default_filters[0], compute_filter.ComputeFilter)"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"    @mock.patch.object(host_manager.HostManager, \u0027_init_instance_info\u0027)"},{"line_number":133,"context_line":"    @mock.patch.object(objects.AggregateList, \u0027get_all\u0027)"},{"line_number":134,"context_line":"    def test_init_aggregates_no_aggs(self, agg_get_all, mock_init_info):"}],"source_content_type":"text/x-python","patch_set":12,"id":"1a4dcd0f_8e1030aa","line":131,"in_reply_to":"3a50d1a3_ca18df20","updated":"2015-08-10 12:14:47.000000000","message":"This unit test will not be delivered to operator, just make sure we adjust the order and it works as we expect.  So I would like keep this test.","commit_id":"9859dd1c7b3a2d00e110eb5b76e93d3894551f8a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7626ac630b1dc9b6087fbdbf11e72e9d44ad5775","unresolved":false,"context_lines":[{"line_number":122,"context_line":"    @mock.patch.object(host_manager.HostManager, \u0027_init_aggregates\u0027)"},{"line_number":123,"context_line":"    def test_default_filters_order(self, mock_init_agg, mock_init_inst):"},{"line_number":124,"context_line":"        # Reset to default value"},{"line_number":125,"context_line":"        CONF.clear_override(\u0027scheduler_available_filters\u0027)"},{"line_number":126,"context_line":"        CONF.clear_override(\u0027scheduler_default_filters\u0027)"},{"line_number":127,"context_line":"        manager \u003d host_manager.HostManager()"},{"line_number":128,"context_line":"        default_filters \u003d manager.default_filters"}],"source_content_type":"text/x-python","patch_set":14,"id":"da20952f_b191a648","line":125,"updated":"2015-09-10 15:20:03.000000000","message":"Its bad practice to set the CONF directly like this in a unit test, as it has a habbit of leading to races between tests, hence the self.set_flags call to avoid those issues.","commit_id":"4504f8919eb852c22b484f38eacc9fa9c38ff760"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7626ac630b1dc9b6087fbdbf11e72e9d44ad5775","unresolved":false,"context_lines":[{"line_number":127,"context_line":"        manager \u003d host_manager.HostManager()"},{"line_number":128,"context_line":"        default_filters \u003d manager.default_filters"},{"line_number":129,"context_line":"        self.assertEqual(9, len(default_filters))"},{"line_number":130,"context_line":"        self.assertIsInstance(default_filters[1], compute_filter.ComputeFilter)"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"    @mock.patch.object(host_manager.HostManager, \u0027_init_instance_info\u0027)"},{"line_number":133,"context_line":"    @mock.patch.object(objects.AggregateList, \u0027get_all\u0027)"}],"source_content_type":"text/x-python","patch_set":14,"id":"da20952f_319ef654","line":130,"updated":"2015-09-10 15:20:03.000000000","message":"Actually, not sure if its worth having this test.","commit_id":"4504f8919eb852c22b484f38eacc9fa9c38ff760"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"38babc2523a43234e5621a3e7e32f74da3d5e85a","unresolved":false,"context_lines":[{"line_number":127,"context_line":"        manager \u003d host_manager.HostManager()"},{"line_number":128,"context_line":"        default_filters \u003d manager.default_filters"},{"line_number":129,"context_line":"        self.assertEqual(9, len(default_filters))"},{"line_number":130,"context_line":"        self.assertIsInstance(default_filters[1], compute_filter.ComputeFilter)"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"    @mock.patch.object(host_manager.HostManager, \u0027_init_instance_info\u0027)"},{"line_number":133,"context_line":"    @mock.patch.object(objects.AggregateList, \u0027get_all\u0027)"}],"source_content_type":"text/x-python","patch_set":14,"id":"ba15a1d1_dee85519","line":130,"in_reply_to":"da20952f_319ef654","updated":"2015-09-12 02:10:13.000000000","message":"will remove the unit test.","commit_id":"4504f8919eb852c22b484f38eacc9fa9c38ff760"}],"nova/tests/unit/scheduler/test_ironic_host_manager.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7626ac630b1dc9b6087fbdbf11e72e9d44ad5775","unresolved":false,"context_lines":[{"line_number":263,"context_line":"    @mock.patch.object(host_manager.HostManager, \u0027_init_aggregates\u0027)"},{"line_number":264,"context_line":"    def test_default_filters_order(self, mock_init_agg, mock_init_inst):"},{"line_number":265,"context_line":"        # Reset to default value"},{"line_number":266,"context_line":"        CONF.clear_override(\u0027scheduler_available_filters\u0027)"},{"line_number":267,"context_line":"        CONF.clear_override(\u0027scheduler_default_filters\u0027)"},{"line_number":268,"context_line":"        CONF.clear_override(\u0027baremetal_scheduler_default_filters\u0027)"},{"line_number":269,"context_line":"        manager \u003d ironic_host_manager.IronicHostManager()"}],"source_content_type":"text/x-python","patch_set":14,"id":"da20952f_f1d5dee4","line":266,"updated":"2015-09-10 15:20:03.000000000","message":"same comments here.","commit_id":"4504f8919eb852c22b484f38eacc9fa9c38ff760"}],"nova/tests/unit/scheduler/test_scheduler_utils.py":[{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"d76d046496aea7017d4b5376ef03357cd3eda10c","unresolved":false,"context_lines":[{"line_number":371,"context_line":"                          scheduler_utils.setup_instance_group,"},{"line_number":372,"context_line":"                          self.context, spec, filter_props)"},{"line_number":373,"context_line":""},{"line_number":374,"context_line":"    def test_scheduler_default_filters_with_ComputeFilter_first(self):"},{"line_number":375,"context_line":"        self.assertEqual(\u0027ComputeFilter\u0027, CONF.scheduler_default_filters[0])"}],"source_content_type":"text/x-python","patch_set":4,"id":"9af37de9_1d60ee34","line":374,"updated":"2015-05-11 07:39:16.000000000","message":"I think the test expected was in HostManager; the method get_filtered_hosts. We want to be sure the list of filters passed to the method self.filter_handler.get_filtered_objects has the same order than CONF.scheduler_default_filters","commit_id":"b8ae8d6983808922359f5d2742fd5501082195f9"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"92d810af42da08613b2886faac7b7cf874e8e295","unresolved":false,"context_lines":[{"line_number":372,"context_line":"                          self.context, spec, filter_props)"},{"line_number":373,"context_line":""},{"line_number":374,"context_line":"    def test_scheduler_default_filters_with_ComputeFilter_first(self):"},{"line_number":375,"context_line":"        self.assertEqual(\u0027ComputeFilter\u0027, CONF.scheduler_default_filters[0])"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_67247d5f","line":375,"updated":"2015-05-19 15:32:16.000000000","message":"agree with sahid on the place to test this","commit_id":"291e3ba59083512255085389d3a5a6b5d790a717"}]}
