)]}'
{".zuul.yaml":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"2cba2e9f9ac345ec95030026f77365bc91337ab2","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Initial set of jobs that will be extended over time as"},{"line_number":2,"context_line":"# we get things working."},{"line_number":3,"context_line":"- project:"},{"line_number":4,"context_line":"    check:"},{"line_number":5,"context_line":"      jobs:"},{"line_number":6,"context_line":"        - placement-perfload:"},{"line_number":7,"context_line":"            voting: false"},{"line_number":8,"context_line":"    gate:"},{"line_number":9,"context_line":"      jobs:"},{"line_number":10,"context_line":"        - openstack-tox-functional"},{"line_number":11,"context_line":"        - openstack-tox-functional-py36"},{"line_number":12,"context_line":"        - placement-nova-tox-functional-py36"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"- job:"},{"line_number":15,"context_line":"    name: placement-perfload"},{"line_number":16,"context_line":"    parent: base"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"bfb3d3c7_ddc4f261","line":13,"range":{"start_line":3,"start_character":2,"end_line":13,"end_character":0},"updated":"2019-05-22 15:53:15.000000000","message":"Job placement-nova-tox-functional-py36 not defined","commit_id":"adc2dbb8b1273258bbb8eb0df26594e06a319734"}],"/COMMIT_MSG":[{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"ff665d81c264c5bc675aae495a64f5c6999d01ab","unresolved":false,"context_lines":[{"line_number":25,"context_line":"we are trying to see the impact of code on a single request, not on"},{"line_number":26,"context_line":"concurrency."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"At some point we will want to added nested and sharing into this mix."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"Change-Id: I74b64a25f2be8fbbd01b3a3b438bba68de04b269"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9fb8cfa7_8805217d","line":28,"range":{"start_line":28,"start_character":30,"end_line":28,"end_character":35},"updated":"2019-06-04 05:18:41.000000000","message":"add?","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"860d9d7fb22f2c033802f00bc0b4120fd0d722a4","unresolved":false,"context_lines":[{"line_number":25,"context_line":"we are trying to see the impact of code on a single request, not on"},{"line_number":26,"context_line":"concurrency."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"At some point we will want to added nested and sharing into this mix."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"Change-Id: I74b64a25f2be8fbbd01b3a3b438bba68de04b269"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9fb8cfa7_ecbcdebc","line":28,"range":{"start_line":28,"start_character":30,"end_line":28,"end_character":35},"in_reply_to":"9fb8cfa7_8805217d","updated":"2019-06-04 08:29:00.000000000","message":"yeah, thanks","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"}],"playbooks/perfload.yaml":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"b863020cb0235fb2b1ed72e794fa6023dbdc2fd7","unresolved":false,"context_lines":[{"line_number":92,"context_line":"          function time_candidates {"},{"line_number":93,"context_line":"              ("},{"line_number":94,"context_line":"                  echo \"##### TIMING GET /allocation_candidates?${PLACEMENT_QUERY} twice\""},{"line_number":95,"context_line":"                  time curl -s -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\" \u003e /dev/null"},{"line_number":96,"context_line":"                  time curl -s -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\" \u003e /dev/null"},{"line_number":97,"context_line":"              ) 2\u003e\u00261 | tee -a $LOG"},{"line_number":98,"context_line":"          }"},{"line_number":99,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_587da5af","line":96,"range":{"start_line":95,"start_character":18,"end_line":96,"end_character":29},"updated":"2019-06-04 07:42:35.000000000","message":"only a question, actually nothing about this patch....why we want to timing twice?","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"500a9866d618c3154bfbde4a9ef7998e6cd48941","unresolved":false,"context_lines":[{"line_number":92,"context_line":"          function time_candidates {"},{"line_number":93,"context_line":"              ("},{"line_number":94,"context_line":"                  echo \"##### TIMING GET /allocation_candidates?${PLACEMENT_QUERY} twice\""},{"line_number":95,"context_line":"                  time curl -s -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\" \u003e /dev/null"},{"line_number":96,"context_line":"                  time curl -s -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\" \u003e /dev/null"},{"line_number":97,"context_line":"              ) 2\u003e\u00261 | tee -a $LOG"},{"line_number":98,"context_line":"          }"},{"line_number":99,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_ec2cde9a","line":96,"range":{"start_line":95,"start_character":18,"end_line":96,"end_character":29},"in_reply_to":"9fb8cfa7_587da5af","updated":"2019-06-04 07:54:31.000000000","message":"Just to estimate the deviation from the environment, which can help us to know how much performance difference is significant, I think.","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"8a4ccc2ff5ed9d1c80cb62959e56bf5cb4e9a51a","unresolved":false,"context_lines":[{"line_number":92,"context_line":"          function time_candidates {"},{"line_number":93,"context_line":"              ("},{"line_number":94,"context_line":"                  echo \"##### TIMING GET /allocation_candidates?${PLACEMENT_QUERY} twice\""},{"line_number":95,"context_line":"                  time curl -s -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\" \u003e /dev/null"},{"line_number":96,"context_line":"                  time curl -s -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\" \u003e /dev/null"},{"line_number":97,"context_line":"              ) 2\u003e\u00261 | tee -a $LOG"},{"line_number":98,"context_line":"          }"},{"line_number":99,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_65d7a1c1","line":96,"range":{"start_line":95,"start_character":18,"end_line":96,"end_character":29},"in_reply_to":"9fb8cfa7_ac602634","updated":"2019-06-04 10:53:27.000000000","message":"Tetsuro, Chris,Thanks!","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"860d9d7fb22f2c033802f00bc0b4120fd0d722a4","unresolved":false,"context_lines":[{"line_number":92,"context_line":"          function time_candidates {"},{"line_number":93,"context_line":"              ("},{"line_number":94,"context_line":"                  echo \"##### TIMING GET /allocation_candidates?${PLACEMENT_QUERY} twice\""},{"line_number":95,"context_line":"                  time curl -s -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\" \u003e /dev/null"},{"line_number":96,"context_line":"                  time curl -s -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\" \u003e /dev/null"},{"line_number":97,"context_line":"              ) 2\u003e\u00261 | tee -a $LOG"},{"line_number":98,"context_line":"          }"},{"line_number":99,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_ac602634","line":96,"range":{"start_line":95,"start_character":18,"end_line":96,"end_character":29},"in_reply_to":"9fb8cfa7_ec2cde9a","updated":"2019-06-04 08:29:00.000000000","message":"That\u0027s correct. It\u0027s nothing formal, just a sanity check to see whether things like operating system caches and the like have any impact between a first and second run.","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"ff665d81c264c5bc675aae495a64f5c6999d01ab","unresolved":false,"context_lines":[{"line_number":98,"context_line":"          }"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"          function write_allocation {"},{"line_number":101,"context_line":"              echo \"writing one allocation\" | tee -a $LOG"},{"line_number":102,"context_line":"              # Take the first allocation request and send it back as a well-formed allocation"},{"line_number":103,"context_line":"              time curl -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\u0026limit\u003d5\" \\"},{"line_number":104,"context_line":"                  | jq --arg proj $(uuidgen) --arg user $(uuidgen) \u0027.allocation_requests[0] + {consumer_generation: null, project_id: $proj, user_id: $user}\u0027 \\"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_8819a189","line":101,"range":{"start_line":101,"start_character":14,"end_line":101,"end_character":57},"updated":"2019-06-04 05:18:41.000000000","message":"I would move this into load_candidates to log what numbers of allocations are already made with # prefix to improve the visual like:\n\n    echo \"##### Writing (iter)th allocation with resources\u003dVCPU:1...\"","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"860d9d7fb22f2c033802f00bc0b4120fd0d722a4","unresolved":false,"context_lines":[{"line_number":98,"context_line":"          }"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"          function write_allocation {"},{"line_number":101,"context_line":"              echo \"writing one allocation\" | tee -a $LOG"},{"line_number":102,"context_line":"              # Take the first allocation request and send it back as a well-formed allocation"},{"line_number":103,"context_line":"              time curl -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\u0026limit\u003d5\" \\"},{"line_number":104,"context_line":"                  | jq --arg proj $(uuidgen) --arg user $(uuidgen) \u0027.allocation_requests[0] + {consumer_generation: null, project_id: $proj, user_id: $user}\u0027 \\"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_2cc2f634","line":101,"range":{"start_line":101,"start_character":14,"end_line":101,"end_character":57},"in_reply_to":"9fb8cfa7_8819a189","updated":"2019-06-04 08:29:00.000000000","message":"that\u0027s a good idea","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"ff665d81c264c5bc675aae495a64f5c6999d01ab","unresolved":false,"context_lines":[{"line_number":100,"context_line":"          function write_allocation {"},{"line_number":101,"context_line":"              echo \"writing one allocation\" | tee -a $LOG"},{"line_number":102,"context_line":"              # Take the first allocation request and send it back as a well-formed allocation"},{"line_number":103,"context_line":"              time curl -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\u0026limit\u003d5\" \\"},{"line_number":104,"context_line":"                  | jq --arg proj $(uuidgen) --arg user $(uuidgen) \u0027.allocation_requests[0] + {consumer_generation: null, project_id: $proj, user_id: $user}\u0027 \\"},{"line_number":105,"context_line":"                  | curl -H \u0027x-auth-token: admin\u0027 -H \u0027content-type: application/json\u0027 -H \u0027openstack-api-version: placement latest\u0027 \\"},{"line_number":106,"context_line":"                      -X PUT -d @- \"${PLACEMENT_URL}/allocations/$(uuidgen)\""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_08b13190","line":103,"range":{"start_line":103,"start_character":14,"end_line":103,"end_character":19},"updated":"2019-06-04 05:18:41.000000000","message":"We don\u0027t need this, do we?","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"860d9d7fb22f2c033802f00bc0b4120fd0d722a4","unresolved":false,"context_lines":[{"line_number":100,"context_line":"          function write_allocation {"},{"line_number":101,"context_line":"              echo \"writing one allocation\" | tee -a $LOG"},{"line_number":102,"context_line":"              # Take the first allocation request and send it back as a well-formed allocation"},{"line_number":103,"context_line":"              time curl -H \u0027x-auth-token: admin\u0027 -H \u0027openstack-api-version: placement latest\u0027 \"${PLACEMENT_URL}/allocation_candidates?${PLACEMENT_QUERY}\u0026limit\u003d5\" \\"},{"line_number":104,"context_line":"                  | jq --arg proj $(uuidgen) --arg user $(uuidgen) \u0027.allocation_requests[0] + {consumer_generation: null, project_id: $proj, user_id: $user}\u0027 \\"},{"line_number":105,"context_line":"                  | curl -H \u0027x-auth-token: admin\u0027 -H \u0027content-type: application/json\u0027 -H \u0027openstack-api-version: placement latest\u0027 \\"},{"line_number":106,"context_line":"                      -X PUT -d @- \"${PLACEMENT_URL}/allocations/$(uuidgen)\""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_0c4852ca","line":103,"range":{"start_line":103,"start_character":14,"end_line":103,"end_character":19},"in_reply_to":"9fb8cfa7_08b13190","updated":"2019-06-04 08:29:00.000000000","message":"We don\u0027t _need_ it, but it seemed like a reasonable piece of information to have, to see if there was any variation between writes.\n\nHowever, I\u0027ve done it wrong: the output doesn\u0027t show up in the summary report, just the job-output.txt and even then, it\u0027s still wrong.\n\nThe curl calls here should be using \u0027-s\u0027 as well.","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"ff665d81c264c5bc675aae495a64f5c6999d01ab","unresolved":false,"context_lines":[{"line_number":104,"context_line":"                  | jq --arg proj $(uuidgen) --arg user $(uuidgen) \u0027.allocation_requests[0] + {consumer_generation: null, project_id: $proj, user_id: $user}\u0027 \\"},{"line_number":105,"context_line":"                  | curl -H \u0027x-auth-token: admin\u0027 -H \u0027content-type: application/json\u0027 -H \u0027openstack-api-version: placement latest\u0027 \\"},{"line_number":106,"context_line":"                      -X PUT -d @- \"${PLACEMENT_URL}/allocations/$(uuidgen)\""},{"line_number":107,"context_line":"          }"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"          function load_candidates {"},{"line_number":110,"context_line":"              time_candidates"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_12f5ce57","line":107,"updated":"2019-06-04 05:18:41.000000000","message":"It might make sense to move this \"write_allocation\" method into placeload at some point.","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"860d9d7fb22f2c033802f00bc0b4120fd0d722a4","unresolved":false,"context_lines":[{"line_number":104,"context_line":"                  | jq --arg proj $(uuidgen) --arg user $(uuidgen) \u0027.allocation_requests[0] + {consumer_generation: null, project_id: $proj, user_id: $user}\u0027 \\"},{"line_number":105,"context_line":"                  | curl -H \u0027x-auth-token: admin\u0027 -H \u0027content-type: application/json\u0027 -H \u0027openstack-api-version: placement latest\u0027 \\"},{"line_number":106,"context_line":"                      -X PUT -d @- \"${PLACEMENT_URL}/allocations/$(uuidgen)\""},{"line_number":107,"context_line":"          }"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"          function load_candidates {"},{"line_number":110,"context_line":"              time_candidates"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_6c69ce23","line":107,"in_reply_to":"9fb8cfa7_12f5ce57","updated":"2019-06-04 08:29:00.000000000","message":"I considered that, but I\u0027ve been messing about with placeload to see how easily it could be used for representing nested models and it is proving cumbersome so I suspect for the next iteration of perfload we\u0027ll want to use something else. See the discussion at https://storyboard.openstack.org/#!/story/2005443#comment-134113 and some work on that idea at https://github.com/cdent/placenest\n\nSo, given that I figured a stop gap pipeline was a good way to go for now.","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"91834a6c0eb209f7db4d7dffea7982f47eb9c061","unresolved":false,"context_lines":[{"line_number":104,"context_line":"                  | jq --arg proj $(uuidgen) --arg user $(uuidgen) \u0027.allocation_requests[0] + {consumer_generation: null, project_id: $proj, user_id: $user}\u0027 \\"},{"line_number":105,"context_line":"                  | curl -H \u0027x-auth-token: admin\u0027 -H \u0027content-type: application/json\u0027 -H \u0027openstack-api-version: placement latest\u0027 \\"},{"line_number":106,"context_line":"                      -X PUT -d @- \"${PLACEMENT_URL}/allocations/$(uuidgen)\""},{"line_number":107,"context_line":"          }"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"          function load_candidates {"},{"line_number":110,"context_line":"              time_candidates"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fb8cfa7_f2d583ba","line":107,"in_reply_to":"9fb8cfa7_6c69ce23","updated":"2019-06-05 03:03:14.000000000","message":"Got it, thanks. Interesting to see gabbi again here.","commit_id":"3ddaac71c19fbf16e5c2f725a2d29cab9d72446d"}]}
