)]}'
{"nova/conf/scheduler.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"48ec9e3ea3c998352713ef567657e374cdc9ef3c","unresolved":false,"context_lines":[{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"},{"line_number":133,"context_line":"placement service during a scheduling operation. It effectively limits"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_d862b63e","line":130,"range":{"start_line":130,"start_character":20,"end_line":130,"end_character":24},"updated":"2018-01-06 00:04:14.000000000","message":"Special value for \"don\u0027t limit\"?  I mean, 1000 ought to be enough for any purpose. *Unless* using the ?limit\u003d actually changes something about the results (e.g. the order in which they\u0027re returned).  And since that bit is kind of undefined...","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb1d2b02e213e01152da87e918ee3cf67f0f161b","unresolved":false,"context_lines":[{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"},{"line_number":133,"context_line":"placement service during a scheduling operation. It effectively limits"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_f309dd94","line":130,"range":{"start_line":130,"start_character":20,"end_line":130,"end_character":24},"in_reply_to":"9f91af0f_d862b63e","updated":"2018-01-06 02:04:44.000000000","message":"-1 or 0 for no limit?","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"48ec9e3ea3c998352713ef567657e374cdc9ef3c","unresolved":false,"context_lines":[{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"},{"line_number":133,"context_line":"placement service during a scheduling operation. It effectively limits"},{"line_number":134,"context_line":"the number of hosts that may be considered for scheduling requestrs that"},{"line_number":135,"context_line":"match a large number of candidates."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"This option is only used by the FilterScheduler and its subclasses; if you use"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_381de2bc","line":134,"range":{"start_line":134,"start_character":58,"end_line":134,"end_character":67},"updated":"2018-01-06 00:04:14.000000000","message":"requests","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb1d2b02e213e01152da87e918ee3cf67f0f161b","unresolved":false,"context_lines":[{"line_number":134,"context_line":"the number of hosts that may be considered for scheduling requestrs that"},{"line_number":135,"context_line":"match a large number of candidates."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"This option is only used by the FilterScheduler and its subclasses; if you use"},{"line_number":138,"context_line":"a different scheduler, this option has no effect."},{"line_number":139,"context_line":"\"\"\"),"},{"line_number":140,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_33d665f3","line":137,"range":{"start_line":137,"start_character":48,"end_line":137,"end_character":66},"updated":"2018-01-06 02:04:44.000000000","message":"The only subclass of the FilterScheduler is the CachingScheduler which doesn\u0027t use placement so I\u0027d just remove this part.","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"fa75cd55a9f70358b276604ebb1e9b6f131e3663","unresolved":false,"context_lines":[{"line_number":134,"context_line":"the number of hosts that may be considered for scheduling requestrs that"},{"line_number":135,"context_line":"match a large number of candidates."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"This option is only used by the FilterScheduler and its subclasses; if you use"},{"line_number":138,"context_line":"a different scheduler, this option has no effect."},{"line_number":139,"context_line":"\"\"\"),"},{"line_number":140,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f93b717_6ac4d55f","line":137,"range":{"start_line":137,"start_character":48,"end_line":137,"end_character":66},"in_reply_to":"7f96bb07_dda52eb7","updated":"2018-01-30 17:07:45.000000000","message":"\u003e I copied it from elsewhere in the file. Actually, I had assumed\n \u003e these were your words, as a signal to anyone who has subclassed to\n \u003e write their own scheduler driver.\n\nLooking at other options that say, \"This option is only used by the FilterScheduler and its subclasses\", I think those are mostly just talking about anything that uses filters, which is the FilterScheduler and its subclasses (which is just the CachingScheduler for in-tree drivers). My point here is that we don\u0027t use placement for the CachingScheduler, so saying it\u0027s for the FilterScheduler and subclasses is technically wrong.","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"62194642719339ec6569c2b534c84a8a70ee8e23","unresolved":false,"context_lines":[{"line_number":134,"context_line":"the number of hosts that may be considered for scheduling requestrs that"},{"line_number":135,"context_line":"match a large number of candidates."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"This option is only used by the FilterScheduler and its subclasses; if you use"},{"line_number":138,"context_line":"a different scheduler, this option has no effect."},{"line_number":139,"context_line":"\"\"\"),"},{"line_number":140,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f96bb07_dda52eb7","line":137,"range":{"start_line":137,"start_character":48,"end_line":137,"end_character":66},"in_reply_to":"9f91af0f_33d665f3","updated":"2018-01-11 15:46:18.000000000","message":"I copied it from elsewhere in the file. Actually, I had assumed these were your words, as a signal to anyone who has subclassed to write their own scheduler driver.","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb1d2b02e213e01152da87e918ee3cf67f0f161b","unresolved":false,"context_lines":[{"line_number":139,"context_line":"\"\"\"),"},{"line_number":140,"context_line":"]"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"filter_scheduler_group \u003d cfg.OptGroup(name\u003d\"filter_scheduler\","},{"line_number":143,"context_line":"                           title\u003d\"Filter scheduler options\")"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"filter_scheduler_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_d3061987","line":142,"range":{"start_line":142,"start_character":44,"end_line":142,"end_character":60},"updated":"2018-01-06 02:04:44.000000000","message":"You should probably just put it in the filter_scheduler section?","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"fa75cd55a9f70358b276604ebb1e9b6f131e3663","unresolved":false,"context_lines":[{"line_number":139,"context_line":"\"\"\"),"},{"line_number":140,"context_line":"]"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"filter_scheduler_group \u003d cfg.OptGroup(name\u003d\"filter_scheduler\","},{"line_number":143,"context_line":"                           title\u003d\"Filter scheduler options\")"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"filter_scheduler_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"5f93b717_0a8c3134","line":142,"range":{"start_line":142,"start_character":44,"end_line":142,"end_character":60},"in_reply_to":"7f96bb07_9d880620","updated":"2018-01-30 17:07:45.000000000","message":"\u003e And then move it if/when cachingscheduler starts to use placement?\n \u003e I figured we wanted this to be a mainline setting going forward so\n \u003e I was proactively making it so. But, if you think not..\n\nWe could. I don\u0027t know what we\u0027ll do with the CachingScheduler (discussion topic for the PTG in Dublin). If we leave it a mainline option, then we should probably soften the wording on the option itself and its usage of \u0027and subclasses\u0027.","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"62194642719339ec6569c2b534c84a8a70ee8e23","unresolved":false,"context_lines":[{"line_number":139,"context_line":"\"\"\"),"},{"line_number":140,"context_line":"]"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"filter_scheduler_group \u003d cfg.OptGroup(name\u003d\"filter_scheduler\","},{"line_number":143,"context_line":"                           title\u003d\"Filter scheduler options\")"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"filter_scheduler_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"7f96bb07_9d880620","line":142,"range":{"start_line":142,"start_character":44,"end_line":142,"end_character":60},"in_reply_to":"9f91af0f_d3061987","updated":"2018-01-11 15:46:18.000000000","message":"And then move it if/when cachingscheduler starts to use placement? I figured we wanted this to be a mainline setting going forward so I was proactively making it so. But, if you think not..","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"819252d7e41c853b740bbc1a0c79c28e49af536a","unresolved":false,"context_lines":[{"line_number":126,"context_line":"every time this runs, we will select any unmapped hosts out of each"},{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_ea10e5aa","line":129,"updated":"2018-01-30 17:14:27.000000000","message":"How about a backdoor to disable this, like make -1 mean \u0027no limit\u0027 (similar to quota)?\n\nWe should at least set a min value.\n\nLooking at the CONF.api.max_limit option, that defaults to 1000 and has a min\u003d0. I don\u0027t know if it makes more sense to follow that option or the quota -1 thing, but tend to think the latter is better.","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"805b50e886cb79cf9ad0dc176c5ee159c7614d93","unresolved":false,"context_lines":[{"line_number":126,"context_line":"every time this runs, we will select any unmapped hosts out of each"},{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_04b0a5dc","line":129,"in_reply_to":"5f93b717_0407451a","updated":"2018-01-30 19:01:43.000000000","message":"But unlimited makes no sense. Not having to think about it means it\u0027s broken by default.\n\nIf you have a 1000-node cluster and don\u0027t want to have to look at settings like this, you\u0027re pretty much screwed. If you have a smaller one, then a default of 1000 is equivalent to \"not having to think about it\".\n\nYou\u0027ll hit the default 1000 limit of max api results long before you hit this one, as this scales with computes and the other scales with instances.","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"a30765074a8bfebaf9945f504fac4eae10ee173a","unresolved":false,"context_lines":[{"line_number":126,"context_line":"every time this runs, we will select any unmapped hosts out of each"},{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_e749fb30","line":129,"in_reply_to":"5f93b717_04b0a5dc","updated":"2018-01-30 19:31:40.000000000","message":"You\u0027re totally right.  It\u0027s just that 1000 seems so arbitrary.  There\u0027s no reason to believe a limit of 1000 will have an effect in any scenario, so why 1000?  If we want the default to be \"effectively unlimited\", why not make it actually unlimited?\n\nThis isn\u0027t a big issue for me.  I can stop playing devil\u0027s advocate now.","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"86c662de349966e153adaf0a1d37d1ec5be75f58","unresolved":false,"context_lines":[{"line_number":126,"context_line":"every time this runs, we will select any unmapped hosts out of each"},{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_543f20b3","line":129,"in_reply_to":"5f93b717_67916b4e","updated":"2018-01-31 16:48:25.000000000","message":"I\u0027m fine with not doing an unlimited value, but set the min value at least.","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"0a535258a5414de877b82090370be7b3a40c2012","unresolved":false,"context_lines":[{"line_number":126,"context_line":"every time this runs, we will select any unmapped hosts out of each"},{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_0407451a","line":129,"in_reply_to":"5f93b717_aa23bdbc","updated":"2018-01-30 18:41:21.000000000","message":"Not having to think about it.\n\nI would even take it a step further and make -1 the default.","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"b3c0228d4b57ee6ce3213ea075c26e9a0ef6beb4","unresolved":false,"context_lines":[{"line_number":126,"context_line":"every time this runs, we will select any unmapped hosts out of each"},{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_67916b4e","line":129,"in_reply_to":"5f93b717_e749fb30","updated":"2018-01-30 19:38:15.000000000","message":"I chose it because that has been the default arbitrary limit on API results in nova since before time.\n\nMaking it actually unlimited is way harder, requires pagination support in placement, and use of that with scheduler. Since almost all scheduling is \"pick the best amongst a subset\", some sane upper limit to just prevent ENOMEM failures is a reasonable compromise I think.","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"f6b9be900adbe840fe3b65f83b1c41f3e93005a1","unresolved":false,"context_lines":[{"line_number":126,"context_line":"every time this runs, we will select any unmapped hosts out of each"},{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_aa23bdbc","line":129,"in_reply_to":"5f93b717_ea10e5aa","updated":"2018-01-30 17:22:09.000000000","message":"I guess I\u0027m not sure that allowing no limit makes sense. People can set this to the upper bound of their deployment size order to effectively get no limit. What\u0027s the value in having no limit?","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"819252d7e41c853b740bbc1a0c79c28e49af536a","unresolved":false,"context_lines":[{"line_number":127,"context_line":"cell database on every run."},{"line_number":128,"context_line":"\"\"\"),"},{"line_number":129,"context_line":"    cfg.IntOpt(\"max_placement_results\","},{"line_number":130,"context_line":"            default\u003d1000,"},{"line_number":131,"context_line":"            help\u003d\"\"\""},{"line_number":132,"context_line":"This setting determines the maximum limit on results received from the"},{"line_number":133,"context_line":"placement service during a scheduling operation. It effectively limits"},{"line_number":134,"context_line":"the number of hosts that may be considered for scheduling requestrs that"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_4aaa3971","line":131,"range":{"start_line":130,"start_character":12,"end_line":131,"end_character":20},"updated":"2018-01-30 17:14:27.000000000","message":"nit: Let\u0027s avoid stephenfin coming along later and changing the alignment of this - align with IntOpt apparently. It drives him crazy for some reason.","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"819252d7e41c853b740bbc1a0c79c28e49af536a","unresolved":false,"context_lines":[{"line_number":134,"context_line":"the number of hosts that may be considered for scheduling requestrs that"},{"line_number":135,"context_line":"match a large number of candidates."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"This option is only used by the FilterScheduler and its subclasses; if you use"},{"line_number":138,"context_line":"a different scheduler, this option has no effect."},{"line_number":139,"context_line":"\"\"\"),"},{"line_number":140,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_6aa7f5a8","line":137,"range":{"start_line":137,"start_character":48,"end_line":137,"end_character":66},"updated":"2018-01-30 17:14:27.000000000","message":"For now, I think we could just remove this part.","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"7a8f05f3a3277534fa0bab5685a39dcb64b1fdd7","unresolved":false,"context_lines":[{"line_number":132,"context_line":"               help\u003d\"\"\""},{"line_number":133,"context_line":"This setting determines the maximum limit on results received from the"},{"line_number":134,"context_line":"placement service during a scheduling operation. It effectively limits"},{"line_number":135,"context_line":"the number of hosts that may be considered for scheduling requestrs that"},{"line_number":136,"context_line":"match a large number of candidates."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"A value of 1 (the minimum) will effectively defer scheduling to the placement"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f93b717_b3ea3e0c","line":135,"range":{"start_line":135,"start_character":58,"end_line":135,"end_character":67},"updated":"2018-01-31 15:19:25.000000000","message":"requests","commit_id":"5f3658bb5364cbeb51f50aca67c1ff5250d77b53"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"7a8f05f3a3277534fa0bab5685a39dcb64b1fdd7","unresolved":false,"context_lines":[{"line_number":137,"context_line":""},{"line_number":138,"context_line":"A value of 1 (the minimum) will effectively defer scheduling to the placement"},{"line_number":139,"context_line":"service strictly on \"will it fit\" grounds. A higher value will put an upper"},{"line_number":140,"context_line":"cap on the number of results the scheduler will consider duringthe filtering"},{"line_number":141,"context_line":"and weighing process. Large deployments may need to set this lower than the"},{"line_number":142,"context_line":"total number of hosts available to limit memory consumption, network traffic,"},{"line_number":143,"context_line":"etc of the scheduler."}],"source_content_type":"text/x-python","patch_set":4,"id":"5f93b717_33de2e6d","line":140,"range":{"start_line":140,"start_character":57,"end_line":140,"end_character":66},"updated":"2018-01-31 15:19:25.000000000","message":"during the","commit_id":"5f3658bb5364cbeb51f50aca67c1ff5250d77b53"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"7a8f05f3a3277534fa0bab5685a39dcb64b1fdd7","unresolved":false,"context_lines":[{"line_number":140,"context_line":"cap on the number of results the scheduler will consider duringthe filtering"},{"line_number":141,"context_line":"and weighing process. Large deployments may need to set this lower than the"},{"line_number":142,"context_line":"total number of hosts available to limit memory consumption, network traffic,"},{"line_number":143,"context_line":"etc of the scheduler."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"This option is only used by the FilterScheduler; if you use a"},{"line_number":146,"context_line":"different scheduler, this option has no effect."}],"source_content_type":"text/x-python","patch_set":4,"id":"5f93b717_13e1b22a","line":143,"range":{"start_line":143,"start_character":0,"end_line":143,"end_character":3},"updated":"2018-01-31 15:19:25.000000000","message":"etc.","commit_id":"5f3658bb5364cbeb51f50aca67c1ff5250d77b53"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"7a8f05f3a3277534fa0bab5685a39dcb64b1fdd7","unresolved":false,"context_lines":[{"line_number":142,"context_line":"total number of hosts available to limit memory consumption, network traffic,"},{"line_number":143,"context_line":"etc of the scheduler."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"This option is only used by the FilterScheduler; if you use a"},{"line_number":146,"context_line":"different scheduler, this option has no effect."},{"line_number":147,"context_line":"\"\"\"),"},{"line_number":148,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f93b717_d3d82a7c","line":145,"updated":"2018-01-31 15:19:25.000000000","message":"consider rewrap.","commit_id":"5f3658bb5364cbeb51f50aca67c1ff5250d77b53"}],"nova/scheduler/client/report.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eb1d2b02e213e01152da87e918ee3cf67f0f161b","unresolved":false,"context_lines":[{"line_number":348,"context_line":"            \u0027limit\u0027: CONF.scheduler.max_placement_results,"},{"line_number":349,"context_line":"        }"},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"        version \u003d \u00271.16\u0027"},{"line_number":352,"context_line":"        url \u003d \"/allocation_candidates?%s\" % parse.urlencode(qs_params)"},{"line_number":353,"context_line":"        resp \u003d self.get(url, version\u003dversion)"},{"line_number":354,"context_line":"        if resp.status_code \u003d\u003d 200:"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_9335f148","line":351,"updated":"2018-01-06 02:04:44.000000000","message":"Need to update nova-status for this:\n\nhttps://github.com/openstack/nova/blob/master/nova/cmd/status.py#L204","commit_id":"4a5dec057455333f694e09d870ef875af10e9086"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"819252d7e41c853b740bbc1a0c79c28e49af536a","unresolved":false,"context_lines":[{"line_number":337,"context_line":"            \u0027limit\u0027: CONF.scheduler.max_placement_results,"},{"line_number":338,"context_line":"        }"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"        version \u003d \u00271.16\u0027"},{"line_number":341,"context_line":"        url \u003d \"/allocation_candidates?%s\" % parse.urlencode(qs_params)"},{"line_number":342,"context_line":"        resp \u003d self.get(url, version\u003dversion)"},{"line_number":343,"context_line":"        if resp.status_code \u003d\u003d 200:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_8afb6177","line":340,"updated":"2018-01-30 17:14:27.000000000","message":"Was going to say that you should bump the nova-status check for this version, but once Alex\u0027s change lands we\u0027ll already be good so nothing to change here:\n\nhttps://review.openstack.org/#/c/536085/9/nova/cmd/status.py","commit_id":"38fdfbc38b8d0440ec36efe9795f38f721d18c07"}],"releasenotes/notes/scheduler-limit-placement-650fc06be2a08781.yaml":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"7a8f05f3a3277534fa0bab5685a39dcb64b1fdd7","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The scheduler now limits the number of results in the query it makes to placement to"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5f93b717_d37caa84","line":1,"updated":"2018-01-31 15:19:25.000000000","message":"Do we care about line width here?","commit_id":"5f3658bb5364cbeb51f50aca67c1ff5250d77b53"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c34d5eefab7970b09886d5f6ad0c7ecf8b3b0296","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The scheduler now limits the number of results in the query it makes to placement to"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5f93b717_f48e6c77","line":1,"in_reply_to":"5f93b717_d37caa84","updated":"2018-01-31 16:51:05.000000000","message":"The release notes docs builds don\u0027t care about line width so no as long as it\u0027s reasonable. We don\u0027t use doc8 (not sure if that would check it anyway).","commit_id":"5f3658bb5364cbeb51f50aca67c1ff5250d77b53"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c34d5eefab7970b09886d5f6ad0c7ecf8b3b0296","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The scheduler now limits the number of results in the query it makes to placement to"},{"line_number":5,"context_line":"    avoid situations where every compute node in a large deployment is returned. This is"},{"line_number":6,"context_line":"    configurable with the new [scheduler]/max_placement_results configuration option,"},{"line_number":7,"context_line":"    which defaults to 1000, a sane starting value for any size deployment."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5f93b717_d48a5068","line":4,"range":{"start_line":4,"start_character":8,"end_line":4,"end_character":17},"updated":"2018-01-31 16:51:05.000000000","message":"FilterScheduler","commit_id":"5f3658bb5364cbeb51f50aca67c1ff5250d77b53"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c34d5eefab7970b09886d5f6ad0c7ecf8b3b0296","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The scheduler now limits the number of results in the query it makes to placement to"},{"line_number":5,"context_line":"    avoid situations where every compute node in a large deployment is returned. This is"},{"line_number":6,"context_line":"    configurable with the new [scheduler]/max_placement_results configuration option,"},{"line_number":7,"context_line":"    which defaults to 1000, a sane starting value for any size deployment."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5f93b717_b4ea240c","line":6,"range":{"start_line":6,"start_character":30,"end_line":6,"end_character":63},"updated":"2018-01-31 16:51:05.000000000","message":"nit: put this in ``[scheduler]/max_placement_results`` for formatting.","commit_id":"5f3658bb5364cbeb51f50aca67c1ff5250d77b53"}]}
