)]}'
{"placement/tests/functional/gabbits/granular-same-subtree.yaml":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"f998e94c6d2267ddf9f975842e7eb5ac485fda65","unresolved":false,"context_lines":[{"line_number":255,"context_line":"      # ...but one PHYSNET2 VF from each of PF2_2 and PF2_4"},{"line_number":256,"context_line":"      # TODO(efried): Some way to prove that these are actually {1, 1, 1, 1, 2, 2}"},{"line_number":257,"context_line":"      # (I know it\u0027s so based on running with verbose:true)"},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":260,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"},{"line_number":261,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7faddb67_bcc5803e","line":258,"updated":"2019-07-10 07:10:57.000000000","message":"You might note here why this isn\u0027t working, as it is it simply looks like something you could uncomment and voila, the magic happens, which we established is sadly not true","commit_id":"41340e85b8e6ba36e368b91526163fe6fa903fad"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"cdf401fe54313555953db99b2485db182c0fe942","unresolved":false,"context_lines":[{"line_number":255,"context_line":"      # ...but one PHYSNET2 VF from each of PF2_2 and PF2_4"},{"line_number":256,"context_line":"      # TODO(efried): Some way to prove that these are actually {1, 1, 1, 1, 2, 2}"},{"line_number":257,"context_line":"      # (I know it\u0027s so based on running with verbose:true)"},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":260,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"},{"line_number":261,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7faddb67_5292304d","line":258,"in_reply_to":"7faddb67_bcc5803e","updated":"2019-07-26 22:00:54.000000000","message":"Done","commit_id":"41340e85b8e6ba36e368b91526163fe6fa903fad"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"791e69e8f42077ca31012b1c46a7e17737939bab","unresolved":false,"context_lines":[{"line_number":255,"context_line":"      # ...but one PHYSNET2 VF from each of PF2_2 and PF2_4"},{"line_number":256,"context_line":"      # TODO(efried): Some way to prove that these are actually {1, 1, 1, 1, 2, 2}"},{"line_number":257,"context_line":"      # I know it\u0027s so based on running with verbose:true; but with this..."},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # ...jsonpath pukes with \"TypeError: \u0027DatumInContext\u0027 object is not iterable\""},{"line_number":260,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":261,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_b23b59c6","line":258,"range":{"start_line":258,"start_character":6,"end_line":258,"end_character":117},"updated":"2019-07-29 04:41:18.000000000","message":"How about this?\n\n $.allocation_requests[/allocations]..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: [2, 2, 1, 1, 1, 1]\n\nwhere we sort it by the value of \"allocations\", which is a dict of resource-amount dict keyed by rp uuid, which is shorter when 2 VFs are come from the same provider.\n\nThis might be hacky enough to be well documented, but since this is tests, having it is better than nothing, isn\u0027t it?","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"396b0003bada7bcc37538f1f4a3a002a3e1d6870","unresolved":false,"context_lines":[{"line_number":255,"context_line":"      # ...but one PHYSNET2 VF from each of PF2_2 and PF2_4"},{"line_number":256,"context_line":"      # TODO(efried): Some way to prove that these are actually {1, 1, 1, 1, 2, 2}"},{"line_number":257,"context_line":"      # I know it\u0027s so based on running with verbose:true; but with this..."},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # ...jsonpath pukes with \"TypeError: \u0027DatumInContext\u0027 object is not iterable\""},{"line_number":260,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":261,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_a5b45883","line":258,"updated":"2019-07-30 14:24:29.000000000","message":"Yeah, that\u0027s crazypants. And I like it. Will play.","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"9a9a1d5e3130d5c5b735108cceff785a1160ecf0","unresolved":false,"context_lines":[{"line_number":255,"context_line":"      # ...but one PHYSNET2 VF from each of PF2_2 and PF2_4"},{"line_number":256,"context_line":"      # TODO(efried): Some way to prove that these are actually {1, 1, 1, 1, 2, 2}"},{"line_number":257,"context_line":"      # I know it\u0027s so based on running with verbose:true; but with this..."},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # ...jsonpath pukes with \"TypeError: \u0027DatumInContext\u0027 object is not iterable\""},{"line_number":260,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":261,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_461b401a","line":258,"range":{"start_line":258,"start_character":6,"end_line":258,"end_character":117},"in_reply_to":"7faddb67_20506c0a","updated":"2019-07-29 14:21:05.000000000","message":"It works, as Tetsuro suggests here, and as follows:\n\n In [2]: d1 \u003d {\u0027aaa\u0027: 1, \u0027bbb\u0027: 2}\n\n In [3]: d2 \u003d {\u0027zzz\u0027: 99}\n\n In [4]: d1 \u003e d2\n Out[4]: True\n\nBut where is it documented that a smaller dict sorts smaller? That doesn\u0027t seem to work for any other data type:\n\n In [1]: [99,99] \u003c [1,1,1]\n Out[1]: False\n\n In [6]: s1 \u003d {1, 2}\n\n In [7]: s2 \u003d {99}\n\n In [8]: s1 \u003e s2\n Out[8]: False\n\n In [9]: \u0027aaa\u0027 \u003e \u0027zz\u0027\n Out[9]: False\n\nI would especially have expected sets to follow the same behavior as dicts.","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"06ebec2d43cca3b65d70c6b71df9d180c4872a52","unresolved":false,"context_lines":[{"line_number":255,"context_line":"      # ...but one PHYSNET2 VF from each of PF2_2 and PF2_4"},{"line_number":256,"context_line":"      # TODO(efried): Some way to prove that these are actually {1, 1, 1, 1, 2, 2}"},{"line_number":257,"context_line":"      # I know it\u0027s so based on running with verbose:true; but with this..."},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # ...jsonpath pukes with \"TypeError: \u0027DatumInContext\u0027 object is not iterable\""},{"line_number":260,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":261,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_4677c03b","line":258,"range":{"start_line":258,"start_character":6,"end_line":258,"end_character":117},"in_reply_to":"7faddb67_461b401a","updated":"2019-07-29 14:23:28.000000000","message":"\u003e But where is it documented that a smaller dict sorts smaller?\n\nThis, for example, seems wrong (unless I\u0027m misunderstanding the wording):\n\nhttps://thomas-cokelaer.info/tutorials/python/dicts.html#comparison","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"77bb2d74805716b8ecef755b9c711d0a2da44690","unresolved":false,"context_lines":[{"line_number":255,"context_line":"      # ...but one PHYSNET2 VF from each of PF2_2 and PF2_4"},{"line_number":256,"context_line":"      # TODO(efried): Some way to prove that these are actually {1, 1, 1, 1, 2, 2}"},{"line_number":257,"context_line":"      # I know it\u0027s so based on running with verbose:true; but with this..."},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # ...jsonpath pukes with \"TypeError: \u0027DatumInContext\u0027 object is not iterable\""},{"line_number":260,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":261,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_66df5cd6","line":258,"range":{"start_line":258,"start_character":6,"end_line":258,"end_character":117},"in_reply_to":"7faddb67_4677c03b","updated":"2019-07-29 14:33:47.000000000","message":"It turns out the sorting doesn\u0027t work at all in py3:\n\n \"TypeError: \u0027\u003c\u0027 not supported between instances of \u0027dict\u0027 and \u0027dict\u0027\"","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"70c8cb2060556bd2e02122db88d1e3f185967650","unresolved":false,"context_lines":[{"line_number":255,"context_line":"      # ...but one PHYSNET2 VF from each of PF2_2 and PF2_4"},{"line_number":256,"context_line":"      # TODO(efried): Some way to prove that these are actually {1, 1, 1, 1, 2, 2}"},{"line_number":257,"context_line":"      # I know it\u0027s so based on running with verbose:true; but with this..."},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # ...jsonpath pukes with \"TypeError: \u0027DatumInContext\u0027 object is not iterable\""},{"line_number":260,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":261,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_1bab5a1d","line":258,"range":{"start_line":258,"start_character":6,"end_line":258,"end_character":117},"in_reply_to":"7faddb67_66df5cd6","updated":"2019-07-30 02:53:43.000000000","message":"Got it. Thank you for looking into it anyway.\nAnother idea I come up with is using filtering hack.\n\n  $.allocation_requests[?(allocations.\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027.resources.CUSTOM_VF\u003c\u003d1)]..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: [1, 1, 1, 1]\n  $.allocation_requests[?(allocations.\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027.resources.CUSTOM_VF\u003e1)]..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: [2, 2]\n\nTell me if I\u0027m getting overheated...","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"417d91a10401c2df49662582d82bfb7cf7312e78","unresolved":false,"context_lines":[{"line_number":255,"context_line":"      # ...but one PHYSNET2 VF from each of PF2_2 and PF2_4"},{"line_number":256,"context_line":"      # TODO(efried): Some way to prove that these are actually {1, 1, 1, 1, 2, 2}"},{"line_number":257,"context_line":"      # I know it\u0027s so based on running with verbose:true; but with this..."},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # ...jsonpath pukes with \"TypeError: \u0027DatumInContext\u0027 object is not iterable\""},{"line_number":260,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":261,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_20506c0a","line":258,"range":{"start_line":258,"start_character":6,"end_line":258,"end_character":117},"in_reply_to":"7faddb67_b23b59c6","updated":"2019-07-29 12:13:17.000000000","message":"That\u0027s a clever idea, I  guess jsonpath will let you sort before a .. in a clause with a ..\n\nI assume you tried it?","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"791e69e8f42077ca31012b1c46a7e17737939bab","unresolved":false,"context_lines":[{"line_number":257,"context_line":"      # I know it\u0027s so based on running with verbose:true; but with this..."},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # ...jsonpath pukes with \"TypeError: \u0027DatumInContext\u0027 object is not iterable\""},{"line_number":260,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":261,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"},{"line_number":262,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":263,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_524a2555","line":260,"range":{"start_line":260,"start_character":96,"end_line":260,"end_character":97},"updated":"2019-07-29 04:41:18.000000000","message":"Did you mean 6 here? I couldn\u0027t get what you wanted to validate.","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"9a9a1d5e3130d5c5b735108cceff785a1160ecf0","unresolved":false,"context_lines":[{"line_number":257,"context_line":"      # I know it\u0027s so based on running with verbose:true; but with this..."},{"line_number":258,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":259,"context_line":"      # ...jsonpath pukes with \"TypeError: \u0027DatumInContext\u0027 object is not iterable\""},{"line_number":260,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"},{"line_number":261,"context_line":"      $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: /1|2/"},{"line_number":262,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF.`sorted`: [1, 1, 1, 1, 2, 2]"},{"line_number":263,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 4"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_06d3083a","line":260,"range":{"start_line":260,"start_character":96,"end_line":260,"end_character":97},"in_reply_to":"7faddb67_524a2555","updated":"2019-07-29 14:21:05.000000000","message":"yeah","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"791e69e8f42077ca31012b1c46a7e17737939bab","unresolved":false,"context_lines":[{"line_number":387,"context_line":"  response_json_paths:"},{"line_number":388,"context_line":"      $.allocation_requests.`len`: 0"},{"line_number":389,"context_line":""},{"line_number":390,"context_line":"- name: multiple same_subtree qparams"},{"line_number":391,"context_line":"  GET: /allocation_candidates"},{"line_number":392,"context_line":"  query_parameters:"},{"line_number":393,"context_line":"      required_NUMA: HW_NUMA_ROOT"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7faddb67_d26ff5c2","line":390,"updated":"2019-07-29 04:41:18.000000000","message":"Yes, I have missed this. Thanks!","commit_id":"2af4d15de73f27e9e79ad53b3ee8a6c0ce86e24e"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"3ccd8a2190435e54e68bddfc15b2b7ae109b3026","unresolved":false,"context_lines":[{"line_number":262,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 6"},{"line_number":263,"context_line":"      # So instead, we use a filter to find all the allocation requests with"},{"line_number":264,"context_line":"      # one VF -- there should be four of them..."},{"line_number":265,"context_line":"      $.allocation_requests[?(allocations.\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027.resources.CUSTOM_VF\u003c\u003d1)]..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: [1, 1, 1, 1]"},{"line_number":266,"context_line":"      $.allocation_requests[?(allocations.\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027.resources.CUSTOM_VF\u003c\u003d1)]..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF: [1, 1, 1, 1]"},{"line_number":267,"context_line":"      # ...and similarly to find all the allocation requests with two VFs --"},{"line_number":268,"context_line":"      # there should be two of them:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7faddb67_30a9887b","line":265,"range":{"start_line":265,"start_character":86,"end_line":265,"end_character":88},"updated":"2019-07-30 14:58:06.000000000","message":"if what you really care about is \u003d\u003d 1 would that work better? (if it even works)\n\nand 2, below","commit_id":"3b484c80d50a3d9a418535dc8b488b2f9c0f2a28"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"3cf950889d0edda614b97c0233ae2b2150744b58","unresolved":false,"context_lines":[{"line_number":262,"context_line":"      # $.allocation_requests..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF.`len`: 6"},{"line_number":263,"context_line":"      # So instead, we use a filter to find all the allocation requests with"},{"line_number":264,"context_line":"      # one VF -- there should be four of them..."},{"line_number":265,"context_line":"      $.allocation_requests[?(allocations.\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027.resources.CUSTOM_VF\u003c\u003d1)]..allocations[\u0027$ENVIRON[\"PF2_2_UUID\"]\u0027].resources.CUSTOM_VF: [1, 1, 1, 1]"},{"line_number":266,"context_line":"      $.allocation_requests[?(allocations.\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027.resources.CUSTOM_VF\u003c\u003d1)]..allocations[\u0027$ENVIRON[\"PF2_4_UUID\"]\u0027].resources.CUSTOM_VF: [1, 1, 1, 1]"},{"line_number":267,"context_line":"      # ...and similarly to find all the allocation requests with two VFs --"},{"line_number":268,"context_line":"      # there should be two of them:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7faddb67_b0cd7831","line":265,"range":{"start_line":265,"start_character":86,"end_line":265,"end_character":88},"in_reply_to":"7faddb67_30a9887b","updated":"2019-07-30 15:05:41.000000000","message":"Considered it, but I actually prefer this as it proves that there\u0027s no results outside of the expected range. (E.g. 3, which would be a bug, or 0, which would be a bigger bug :)","commit_id":"3b484c80d50a3d9a418535dc8b488b2f9c0f2a28"}]}
