)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"d7e548dd942cde21f0808538a36a31366cd48b39","unresolved":false,"context_lines":[{"line_number":11,"context_line":"oslo middleware `request_id` middleware is a convenient way to"},{"line_number":12,"context_line":"generate request ID and also include it in the response."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"The request ID will be generated by the oslo middleware and is"},{"line_number":15,"context_line":"inserted into the request environment. On the response end, the"},{"line_number":16,"context_line":"middleware is again used, this time to attach the"},{"line_number":17,"context_line":"\u0027x-openstack-request-id\u0027 header, using the value of the generated"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9fb8cfa7_d3fb40bb","line":14,"range":{"start_line":14,"start_character":0,"end_line":14,"end_character":55},"updated":"2019-06-26 07:40:20.000000000","message":"But it looks like this patch also addresses global request id, which IIUC should not be generated internally in contrast to request ID, so maybe I\u0027m just missing something but at least now I\u0027m confused.","commit_id":"d2d6f91f45e58b48bc4f775fb1caf48e02fffb08"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"d7e548dd942cde21f0808538a36a31366cd48b39","unresolved":false,"context_lines":[{"line_number":20,"context_line":"Note: For v2 apis, the request_id is not returned in response header"},{"line_number":21,"context_line":"but it will be logged in logs."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"APIImpact:"},{"line_number":24,"context_line":"responses of the API will include \u0027x-openstack-request-id\u0027 header."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Implements: blueprint oslo-middleware-request-id"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9fb8cfa7_73e93418","line":24,"range":{"start_line":23,"start_character":0,"end_line":24,"end_character":66},"updated":"2019-06-26 07:40:20.000000000","message":"Then let\u0027s have documents; releasenote and api-ref update for this, and in the documents let\u0027s clear out if this feature supports global request id or local request id or we support both and how to use the feature what is this feature for.","commit_id":"d2d6f91f45e58b48bc4f775fb1caf48e02fffb08"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"d7e548dd942cde21f0808538a36a31366cd48b39","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"APIImpact:"},{"line_number":24,"context_line":"responses of the API will include \u0027x-openstack-request-id\u0027 header."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Implements: blueprint oslo-middleware-request-id"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Change-Id: I437f783787514ff1add2d7f0059cb27addd12c3e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9fb8cfa7_13e4780c","line":25,"updated":"2019-06-26 07:40:20.000000000","message":"Could you update the commit message how this patch change the debug log explaining what each uuid stands for?","commit_id":"d2d6f91f45e58b48bc4f775fb1caf48e02fffb08"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"a71955513864cd081153effcce551d02b2a76259","unresolved":false,"context_lines":[{"line_number":20,"context_line":"Sample log output of blazar-api service for ``GET v1/os-hosts`` API"},{"line_number":21,"context_line":"which logs local request ID `req-de45521c-2a04-4e7d-809a-960e782eb1e7`"},{"line_number":22,"context_line":"is shown below:"},{"line_number":23,"context_line":"  http://paste.openstack.org/show/753805/"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"Note: For v2 apis, the request_id is not returned in response header"},{"line_number":26,"context_line":"but it will be logged in logs."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"7faddb67_ead92622","line":23,"updated":"2019-07-12 04:05:37.000000000","message":"thanks!","commit_id":"66dc97a7533cfae911355b1f7a27a8d320547466"}],"api-ref/source/v1/parameters.yaml":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5148e236a5606a9a03265391dc8c368f179536d4","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    for tracking each request to blazar."},{"line_number":6,"context_line":"    It is associated with the request and appears in the log lines"},{"line_number":7,"context_line":"    for that request."},{"line_number":8,"context_line":"    The local request ID appears in the blazar logs."},{"line_number":9,"context_line":"  in: header"},{"line_number":10,"context_line":"  required: true"},{"line_number":11,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"7faddb67_4f72cce5","line":8,"range":{"start_line":8,"start_character":4,"end_line":8,"end_character":52},"updated":"2019-07-23 12:41:29.000000000","message":"This repeats information from the previous sentence, can we just remove it?","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"162c0bb7eacfe53b0052b40b63ba80d11b7c2bba","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    for tracking each request to blazar."},{"line_number":6,"context_line":"    It is associated with the request and appears in the log lines"},{"line_number":7,"context_line":"    for that request."},{"line_number":8,"context_line":"    The local request ID appears in the blazar logs."},{"line_number":9,"context_line":"  in: header"},{"line_number":10,"context_line":"  required: true"},{"line_number":11,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"7faddb67_45c13d2e","line":8,"range":{"start_line":8,"start_character":4,"end_line":8,"end_character":52},"in_reply_to":"7faddb67_4f72cce5","updated":"2019-07-24 06:54:25.000000000","message":"Done","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"}],"api-ref/source/v1/request-ids.inc":[{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"75eec3db4b785cf6aeda67621373b3a22a754656","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"7faddb67_aed6e926","updated":"2019-07-23 02:36:43.000000000","message":"nit: can you change the line feed code of this file from CRLF to LF?","commit_id":"37ae0b8881a47d3e1d4f2fee2692f600918204fd"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"de254cd5f78e235cfa681f42db33f2ad100e4657","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"7faddb67_f1e281a0","in_reply_to":"7faddb67_aed6e926","updated":"2019-07-23 09:56:58.000000000","message":"Done","commit_id":"37ae0b8881a47d3e1d4f2fee2692f600918204fd"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5148e236a5606a9a03265391dc8c368f179536d4","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Request ID"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Users can receive the local request ID in the response header."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"**Response**"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":14,"id":"7faddb67_8f3e84d8","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":62},"updated":"2019-07-23 12:41:29.000000000","message":"There can be many headers in the response. I would phrase it:\n\nFor each REST API request, a local request ID is returned as a header in the response.","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"162c0bb7eacfe53b0052b40b63ba80d11b7c2bba","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Request ID"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Users can receive the local request ID in the response header."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"**Response**"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":14,"id":"7faddb67_e5db891e","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":62},"in_reply_to":"7faddb67_8f3e84d8","updated":"2019-07-24 06:54:25.000000000","message":"Done","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5148e236a5606a9a03265391dc8c368f179536d4","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"**Response Header**"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"In each REST API request, ``X-Openstack-Request-Id`` is returned"},{"line_number":18,"context_line":"in the response header."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"``X-Openstack-Request-Id`` is local request ID."},{"line_number":21,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":14,"id":"7faddb67_8f176452","line":18,"range":{"start_line":17,"start_character":0,"end_line":18,"end_character":23},"updated":"2019-07-23 12:41:29.000000000","message":"For each REST API request, the response contains a ``X-Openstack-Request-Id`` header.","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"162c0bb7eacfe53b0052b40b63ba80d11b7c2bba","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"**Response Header**"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"In each REST API request, ``X-Openstack-Request-Id`` is returned"},{"line_number":18,"context_line":"in the response header."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"``X-Openstack-Request-Id`` is local request ID."},{"line_number":21,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":14,"id":"7faddb67_05e105d1","line":18,"range":{"start_line":17,"start_character":0,"end_line":18,"end_character":23},"in_reply_to":"7faddb67_8f176452","updated":"2019-07-24 06:54:25.000000000","message":"Done","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5148e236a5606a9a03265391dc8c368f179536d4","unresolved":false,"context_lines":[{"line_number":17,"context_line":"In each REST API request, ``X-Openstack-Request-Id`` is returned"},{"line_number":18,"context_line":"in the response header."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"``X-Openstack-Request-Id`` is local request ID."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Response header example::"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":14,"id":"7faddb67_ca022a0a","line":20,"range":{"start_line":20,"start_character":0,"end_line":20,"end_character":47},"updated":"2019-07-23 12:41:29.000000000","message":"The value of the ``X-Openstack-Request-Id`` header is the local ID assigned to the request.","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"162c0bb7eacfe53b0052b40b63ba80d11b7c2bba","unresolved":false,"context_lines":[{"line_number":17,"context_line":"In each REST API request, ``X-Openstack-Request-Id`` is returned"},{"line_number":18,"context_line":"in the response header."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"``X-Openstack-Request-Id`` is local request ID."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Response header example::"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":14,"id":"7faddb67_a5e591de","line":20,"range":{"start_line":20,"start_character":0,"end_line":20,"end_character":47},"in_reply_to":"7faddb67_ca022a0a","updated":"2019-07-24 06:54:25.000000000","message":"Done","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"}],"blazar/api/v1/request_id.py":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5148e236a5606a9a03265391dc8c368f179536d4","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from oslo_middleware import request_id"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"HTTP_RESP_HEADER_REQUEST_ID \u003d \u0027x-openstack-request-id\u0027"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"class BlazarReqIdMiddleware(request_id.RequestId):"},{"line_number":23,"context_line":"    compat_headers \u003d [HTTP_RESP_HEADER_REQUEST_ID]"}],"source_content_type":"text/x-python","patch_set":14,"id":"7faddb67_0a3122ed","line":23,"range":{"start_line":19,"start_character":0,"end_line":23,"end_character":50},"updated":"2019-07-23 12:41:29.000000000","message":"Why not use request_id.HTTP_RESP_HEADER_REQUEST_ID rather than duplicate the definition? Cyborg does it: https://opendev.org/openstack/cyborg/src/branch/master/cyborg/services/client/report.py#L254","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"162c0bb7eacfe53b0052b40b63ba80d11b7c2bba","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from oslo_middleware import request_id"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"HTTP_RESP_HEADER_REQUEST_ID \u003d \u0027x-openstack-request-id\u0027"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"class BlazarReqIdMiddleware(request_id.RequestId):"},{"line_number":23,"context_line":"    compat_headers \u003d [HTTP_RESP_HEADER_REQUEST_ID]"}],"source_content_type":"text/x-python","patch_set":14,"id":"7faddb67_c5ea0dab","line":23,"range":{"start_line":19,"start_character":0,"end_line":23,"end_character":50},"in_reply_to":"7faddb67_0a3122ed","updated":"2019-07-24 06:54:25.000000000","message":"Done","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"}],"blazar/context.py":[{"author":{"_account_id":8878,"name":"Masahito Muroi","email":"masahito.muroi@linecorp.com","username":"masa"},"change_message_id":"b782f763ed9f054d198059fe5038eaa95326725c","unresolved":false,"context_lines":[{"line_number":44,"context_line":"            # Only include required parts of service_catalog"},{"line_number":45,"context_line":"            self.service_catalog \u003d [s for s in service_catalog"},{"line_number":46,"context_line":"                                    if s.get(\u0027type\u0027) in"},{"line_number":47,"context_line":"                                    (\u0027identity\u0027, \u0027compute\u0027, \u0027placement\u0027)]"},{"line_number":48,"context_line":"        else:"},{"line_number":49,"context_line":"            # if list is empty or none"},{"line_number":50,"context_line":"            self.service_catalog \u003d []"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_f9f983c7","line":47,"range":{"start_line":47,"start_character":36,"end_line":47,"end_character":73},"updated":"2019-06-11 09:28:08.000000000","message":"How are the three services decided? If the list describes services which API Blazar calls, \u0027network\u0027 needs to be in it.","commit_id":"bcb9d360e2cd51fc69a4580d7c35f3ad643b8b6d"}],"blazar/plugins/instances/instance_plugin.py":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"1ff8f73de0b9f11331f86312eea17062b98bc833","unresolved":false,"context_lines":[{"line_number":582,"context_line":""},{"line_number":583,"context_line":"        self.cleanup_resources(instance_reservation)"},{"line_number":584,"context_line":""},{"line_number":585,"context_line":"        for host_name in hostnames:"},{"line_number":586,"context_line":"            try:"},{"line_number":587,"context_line":"                placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":588,"context_line":"                placement_client.delete_reservation_inventory("},{"line_number":589,"context_line":"                    host_name, reservation_id)"},{"line_number":590,"context_line":"            except openstack_ex.ResourceProviderNotFound:"},{"line_number":591,"context_line":"                pass"},{"line_number":592,"context_line":"        placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":593,"context_line":"        placement_client.delete_reservation_class(reservation_id)"},{"line_number":594,"context_line":""},{"line_number":595,"context_line":"    @retrying.retry(stop_max_delay\u003dINSTANCE_DELETION_TIMEOUT,"},{"line_number":596,"context_line":"                    wait_fixed\u003d5000,  # 5 seconds interval"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_7ba43009","line":593,"range":{"start_line":585,"start_character":0,"end_line":593,"end_character":65},"updated":"2019-06-03 16:36:52.000000000","message":"Do we really want to recreate placement_client each time here?","commit_id":"b8e6e295767603ce923c078c6c84435e9ad3c4ce"},{"author":{"_account_id":8878,"name":"Masahito Muroi","email":"masahito.muroi@linecorp.com","username":"masa"},"change_message_id":"b782f763ed9f054d198059fe5038eaa95326725c","unresolved":false,"context_lines":[{"line_number":314,"context_line":"            }"},{"line_number":315,"context_line":"        agg \u003d pool.create(name\u003dreservation_id, metadata\u003dpool_metadata)"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"        placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":318,"context_line":"        placement_client.create_reservation_class(reservation_id)"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"        return reserved_flavor, reserved_group, agg"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_d9a59f48","line":317,"range":{"start_line":317,"start_character":0,"end_line":317,"end_character":60},"updated":"2019-06-11 09:28:08.000000000","message":"I have the same question Pierre mentioned. Why the client is created everytime in each method?","commit_id":"bcb9d360e2cd51fc69a4580d7c35f3ad643b8b6d"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"654a22b7ce64eddc06d6c89220f92b278a618c61","unresolved":false,"context_lines":[{"line_number":314,"context_line":"            }"},{"line_number":315,"context_line":"        agg \u003d pool.create(name\u003dreservation_id, metadata\u003dpool_metadata)"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"        placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":318,"context_line":"        placement_client.create_reservation_class(reservation_id)"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"        return reserved_flavor, reserved_group, agg"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_7c2bd32f","line":317,"range":{"start_line":317,"start_character":0,"end_line":317,"end_character":60},"in_reply_to":"9fb8cfa7_47ac25ec","updated":"2019-06-17 18:58:48.000000000","message":"Is there a way we could change BlazarPlacementClient instead to avoid this issue?","commit_id":"bcb9d360e2cd51fc69a4580d7c35f3ad643b8b6d"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"83d92f89a9bf9d72ae89fddd746dfb3c21655510","unresolved":false,"context_lines":[{"line_number":314,"context_line":"            }"},{"line_number":315,"context_line":"        agg \u003d pool.create(name\u003dreservation_id, metadata\u003dpool_metadata)"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"        placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":318,"context_line":"        placement_client.create_reservation_class(reservation_id)"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"        return reserved_flavor, reserved_group, agg"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_d69961d0","line":317,"range":{"start_line":317,"start_character":0,"end_line":317,"end_character":60},"in_reply_to":"9fb8cfa7_58461224","updated":"2019-06-19 02:26:39.000000000","message":"If fresh client is needed, I’d like to do it in client layer so that plugin developers don’t need to be aware to re-initialize it explicitly.\n\nI’d like to get your thoughts on  https://review.opendev.org/#/c/666202/ if this helps you or not.","commit_id":"bcb9d360e2cd51fc69a4580d7c35f3ad643b8b6d"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"d7e548dd942cde21f0808538a36a31366cd48b39","unresolved":false,"context_lines":[{"line_number":314,"context_line":"            }"},{"line_number":315,"context_line":"        agg \u003d pool.create(name\u003dreservation_id, metadata\u003dpool_metadata)"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"        placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":318,"context_line":"        placement_client.create_reservation_class(reservation_id)"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"        return reserved_flavor, reserved_group, agg"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_73bcd4db","line":317,"range":{"start_line":317,"start_character":0,"end_line":317,"end_character":60},"in_reply_to":"9fb8cfa7_78f2df9c","updated":"2019-06-26 07:40:20.000000000","message":"Thanks for updating, but I don\u0027t understand what this patch brings to us. Global request id is not addressed in bluerprint IIUC but in this patch it is addressed but locally the id does not come up in the debug log when I pass it with a request body with X-OpenStack-Request-ID query param so I am confused about what you wanted to enable in this patch so please clear it in the commit message please?","commit_id":"bcb9d360e2cd51fc69a4580d7c35f3ad643b8b6d"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"de06dd227a3bc09ca2b5962e27c85865264fa8a4","unresolved":false,"context_lines":[{"line_number":314,"context_line":"            }"},{"line_number":315,"context_line":"        agg \u003d pool.create(name\u003dreservation_id, metadata\u003dpool_metadata)"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"        placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":318,"context_line":"        placement_client.create_reservation_class(reservation_id)"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"        return reserved_flavor, reserved_group, agg"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_58461224","line":317,"range":{"start_line":317,"start_character":0,"end_line":317,"end_character":60},"in_reply_to":"9fb8cfa7_7c2bd32f","updated":"2019-06-18 07:18:26.000000000","message":"As per [1], nova-\u003evolume-\u003ecinder that class API is a wrapper class.\n\nBut in Blazar, we are using BlazarPlacementClient directly.\n\nIn nova, in that wrapper class, in each method they create a client object just like we are doing it in Request_id patch[2].\n \n[1]: https://github.com/openstack/nova/blob/f298973520420710a617e4d79e853f2416b29786/nova/volume/cinder.py#L485\n\n[2]: https://review.opendev.org/#/c/637140/6/blazar/plugins/instances/instance_plugin.py@317","commit_id":"bcb9d360e2cd51fc69a4580d7c35f3ad643b8b6d"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"69813698b4851fa384dbb41360c66cc8470443d3","unresolved":false,"context_lines":[{"line_number":314,"context_line":"            }"},{"line_number":315,"context_line":"        agg \u003d pool.create(name\u003dreservation_id, metadata\u003dpool_metadata)"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"        placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":318,"context_line":"        placement_client.create_reservation_class(reservation_id)"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"        return reserved_flavor, reserved_group, agg"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_78f2df9c","line":317,"range":{"start_line":317,"start_character":0,"end_line":317,"end_character":60},"in_reply_to":"9fb8cfa7_d69961d0","updated":"2019-06-19 07:38:15.000000000","message":"Thank you so much, Tetsuro san. This is perfect. I have made https://review.opendev.org/#/c/666202 as a dependant patch.Also reverted the re-initialization of BlazarPlacementClient","commit_id":"bcb9d360e2cd51fc69a4580d7c35f3ad643b8b6d"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"0362b5810f3cad533e92f73cc9b6c0604621b949","unresolved":false,"context_lines":[{"line_number":314,"context_line":"            }"},{"line_number":315,"context_line":"        agg \u003d pool.create(name\u003dreservation_id, metadata\u003dpool_metadata)"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"        placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":318,"context_line":"        placement_client.create_reservation_class(reservation_id)"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"        return reserved_flavor, reserved_group, agg"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_47ac25ec","line":317,"range":{"start_line":317,"start_character":0,"end_line":317,"end_character":60},"in_reply_to":"9fb8cfa7_d9a59f48","updated":"2019-06-14 09:57:56.000000000","message":"If the client isn\u0027t created everytime in each method, context isn\u0027t available in placement at [1] and hence can\u0027t see the global-request-id in placement-api logs.\n\n[1]: blazar\\utils\\openstack\\placement.py @Line65","commit_id":"bcb9d360e2cd51fc69a4580d7c35f3ad643b8b6d"}],"blazar/plugins/oshosts/host_plugin.py":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"1ff8f73de0b9f11331f86312eea17062b98bc833","unresolved":false,"context_lines":[{"line_number":381,"context_line":"                # transactions"},{"line_number":382,"context_line":"                pool.remove_computehost(self.freepool_name,"},{"line_number":383,"context_line":"                                        host_details[\u0027service_name\u0027])"},{"line_number":384,"context_line":"                placement_client \u003d placement.BlazarPlacementClient()"},{"line_number":385,"context_line":"                placement_client.delete_reservation_provider("},{"line_number":386,"context_line":"                    host_details[\u0027hypervisor_hostname\u0027])"},{"line_number":387,"context_line":"                raise e"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_fb6260d8","line":384,"updated":"2019-06-03 16:36:52.000000000","message":"Can you explain why recreating the placement_client is necessary?","commit_id":"b8e6e295767603ce923c078c6c84435e9ad3c4ce"}],"blazar/tests/api/v1/leases/test_v1_0.py":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"1ff8f73de0b9f11331f86312eea17062b98bc833","unresolved":false,"context_lines":[{"line_number":29,"context_line":"def make_app():"},{"line_number":30,"context_line":"    \"\"\"App builder (wsgi)."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Entry point for Blazar REST API sereser."},{"line_number":33,"context_line":"    \"\"\""},{"line_number":34,"context_line":"    app \u003d flask.Flask(\u0027blazar.api\u0027)"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_bb75c89a","line":32,"range":{"start_line":32,"start_character":36,"end_line":32,"end_character":43},"updated":"2019-06-03 16:36:52.000000000","message":"server","commit_id":"b8e6e295767603ce923c078c6c84435e9ad3c4ce"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"1ff8f73de0b9f11331f86312eea17062b98bc833","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        u\u0027user_id\u0027: kw.get(\u0027user_id\u0027, u\u0027efd8780712d24b389c705f5c2ac427ff\u0027),"},{"line_number":51,"context_line":"        u\u0027project_id\u0027: kw.get(\u0027project_id\u0027,"},{"line_number":52,"context_line":"                              u\u0027bd9431c18d694ad3803a8d4a6b89fd36\u0027),"},{"line_number":53,"context_line":"        u\u0027reseresations\u0027: kw.get(\u0027reseresations\u0027, ["},{"line_number":54,"context_line":"            {"},{"line_number":55,"context_line":"                u\u0027resource_id\u0027: u\u00271234\u0027,"},{"line_number":56,"context_line":"                u\u0027resource_type\u0027: u\u0027virtual:instance\u0027"},{"line_number":57,"context_line":"            }"},{"line_number":58,"context_line":"        ]),"},{"line_number":59,"context_line":"        u\u0027events\u0027: kw.get(\u0027events\u0027, []),"},{"line_number":60,"context_line":"        u\u0027status\u0027: kw.get(\u0027status\u0027, \u0027ACTIVE\u0027),"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_1b47344e","line":57,"range":{"start_line":53,"start_character":0,"end_line":57,"end_character":13},"updated":"2019-06-03 16:36:52.000000000","message":"reservations","commit_id":"b8e6e295767603ce923c078c6c84435e9ad3c4ce"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"80a63f1a7ddf20e509ce71aa56583e7419d1528d","unresolved":false,"context_lines":[{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def fake_lease_request_body(exclude\u003d[], **kw):"},{"line_number":67,"context_line":"    exclude.append(\u0027id\u0027)"},{"line_number":68,"context_line":"    exclude.append(\u0027trust_id\u0027)"},{"line_number":69,"context_line":"    exclude.append(\u0027user_id\u0027)"},{"line_number":70,"context_line":"    exclude.append(\u0027project_id\u0027)"},{"line_number":71,"context_line":"    exclude.append(\u0027status\u0027)"},{"line_number":72,"context_line":"    lease_body \u003d fake_lease(**kw)"},{"line_number":73,"context_line":"    return dict((key, lease_body[key])"},{"line_number":74,"context_line":"                for key in lease_body if key not in exclude)"}],"source_content_type":"text/x-python","patch_set":12,"id":"7faddb67_d3a697c1","line":71,"range":{"start_line":67,"start_character":0,"end_line":71,"end_character":28},"updated":"2019-07-22 02:06:08.000000000","message":"nit: I would refactor this to something like\n\n  default_exclude \u003d set([\u0027id\u0027, \u0027trust_id\u0027, ...])\n  exclude |\u003d default_exclude","commit_id":"41550d8878a347552ea2312ff0100808bee3b8cb"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"ee3427dba3361ab661500cf76c12c6b51f8829f3","unresolved":false,"context_lines":[{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def fake_lease_request_body(exclude\u003d[], **kw):"},{"line_number":67,"context_line":"    exclude.append(\u0027id\u0027)"},{"line_number":68,"context_line":"    exclude.append(\u0027trust_id\u0027)"},{"line_number":69,"context_line":"    exclude.append(\u0027user_id\u0027)"},{"line_number":70,"context_line":"    exclude.append(\u0027project_id\u0027)"},{"line_number":71,"context_line":"    exclude.append(\u0027status\u0027)"},{"line_number":72,"context_line":"    lease_body \u003d fake_lease(**kw)"},{"line_number":73,"context_line":"    return dict((key, lease_body[key])"},{"line_number":74,"context_line":"                for key in lease_body if key not in exclude)"}],"source_content_type":"text/x-python","patch_set":12,"id":"7faddb67_23f1bd02","line":71,"range":{"start_line":67,"start_character":0,"end_line":71,"end_character":28},"in_reply_to":"7faddb67_d3a697c1","updated":"2019-07-22 13:17:07.000000000","message":"Done","commit_id":"41550d8878a347552ea2312ff0100808bee3b8cb"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"75eec3db4b785cf6aeda67621373b3a22a754656","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    }"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def fake_lease_request_body(exclude\u003dNone, **kw):"},{"line_number":67,"context_line":"    default_exclude \u003d set([\u0027id\u0027, \u0027trust_id\u0027, \u0027user_id\u0027, \u0027project_id\u0027,"},{"line_number":68,"context_line":"                           \u0027status\u0027])"},{"line_number":69,"context_line":"    exclude \u003d exclude or set()"}],"source_content_type":"text/x-python","patch_set":13,"id":"7faddb67_eec4e161","line":66,"range":{"start_line":66,"start_character":36,"end_line":66,"end_character":40},"updated":"2019-07-23 02:36:43.000000000","message":"nit: why not default this to set() so that we can remove L69?","commit_id":"37ae0b8881a47d3e1d4f2fee2692f600918204fd"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"a53815c4b9204a99eb2a0ba2285c4b0760cb797f","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    }"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def fake_lease_request_body(exclude\u003dNone, **kw):"},{"line_number":67,"context_line":"    default_exclude \u003d set([\u0027id\u0027, \u0027trust_id\u0027, \u0027user_id\u0027, \u0027project_id\u0027,"},{"line_number":68,"context_line":"                           \u0027status\u0027])"},{"line_number":69,"context_line":"    exclude \u003d exclude or set()"}],"source_content_type":"text/x-python","patch_set":13,"id":"7faddb67_3b18e473","line":66,"range":{"start_line":66,"start_character":36,"end_line":66,"end_character":40},"in_reply_to":"7faddb67_8fa2044b","updated":"2019-07-25 11:31:46.000000000","message":"Good to know. Thanks!","commit_id":"37ae0b8881a47d3e1d4f2fee2692f600918204fd"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"1fdbb5cf9b145ff35e8a7392d0f0cdf40cbb946d","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    }"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def fake_lease_request_body(exclude\u003dNone, **kw):"},{"line_number":67,"context_line":"    default_exclude \u003d set([\u0027id\u0027, \u0027trust_id\u0027, \u0027user_id\u0027, \u0027project_id\u0027,"},{"line_number":68,"context_line":"                           \u0027status\u0027])"},{"line_number":69,"context_line":"    exclude \u003d exclude or set()"}],"source_content_type":"text/x-python","patch_set":13,"id":"7faddb67_f105a115","line":66,"range":{"start_line":66,"start_character":36,"end_line":66,"end_character":40},"in_reply_to":"7faddb67_b1ee4989","updated":"2019-07-23 10:09:18.000000000","message":"For Example:- http://paste.openstack.org/show/754750/\n\nReference:- https://docs.python-guide.org/writing/gotchas/","commit_id":"37ae0b8881a47d3e1d4f2fee2692f600918204fd"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"de254cd5f78e235cfa681f42db33f2ad100e4657","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    }"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def fake_lease_request_body(exclude\u003dNone, **kw):"},{"line_number":67,"context_line":"    default_exclude \u003d set([\u0027id\u0027, \u0027trust_id\u0027, \u0027user_id\u0027, \u0027project_id\u0027,"},{"line_number":68,"context_line":"                           \u0027status\u0027])"},{"line_number":69,"context_line":"    exclude \u003d exclude or set()"}],"source_content_type":"text/x-python","patch_set":13,"id":"7faddb67_b1ee4989","line":66,"range":{"start_line":66,"start_character":36,"end_line":66,"end_character":40},"in_reply_to":"7faddb67_eec4e161","updated":"2019-07-23 09:56:58.000000000","message":"Forgive me if I\u0027m wrong but IMO ,If we use a mutable default argument and mutate it, we will have mutated that object for all future calls to the function as well. So we should create a new object each time the function is called, by using a default arg to signal that no argument was provided (None is often a good choice).","commit_id":"37ae0b8881a47d3e1d4f2fee2692f600918204fd"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"3f832aed644877b679101a66780730bf56580361","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    }"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def fake_lease_request_body(exclude\u003dNone, **kw):"},{"line_number":67,"context_line":"    default_exclude \u003d set([\u0027id\u0027, \u0027trust_id\u0027, \u0027user_id\u0027, \u0027project_id\u0027,"},{"line_number":68,"context_line":"                           \u0027status\u0027])"},{"line_number":69,"context_line":"    exclude \u003d exclude or set()"}],"source_content_type":"text/x-python","patch_set":13,"id":"7faddb67_8fa2044b","line":66,"range":{"start_line":66,"start_character":36,"end_line":66,"end_character":40},"in_reply_to":"7faddb67_f105a115","updated":"2019-07-23 12:24:46.000000000","message":"Agreed with Asmita, this is a pattern that should be avoided.","commit_id":"37ae0b8881a47d3e1d4f2fee2692f600918204fd"}],"blazar/tests/api/v1/oshosts/test_v1_0.py":[{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"1ff8f73de0b9f11331f86312eea17062b98bc833","unresolved":false,"context_lines":[{"line_number":28,"context_line":"def make_app():"},{"line_number":29,"context_line":"    \"\"\"App builder (wsgi)."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    Entry point for Blazar REST API sereser."},{"line_number":32,"context_line":"    \"\"\""},{"line_number":33,"context_line":"    app \u003d flask.Flask(\u0027blazar.api\u0027)"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_1b197478","line":31,"range":{"start_line":31,"start_character":36,"end_line":31,"end_character":43},"updated":"2019-06-03 16:36:52.000000000","message":"server","commit_id":"b8e6e295767603ce923c078c6c84435e9ad3c4ce"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"1ff8f73de0b9f11331f86312eea17062b98bc833","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":"def fake_computehost(**kw):"},{"line_number":42,"context_line":"    return {"},{"line_number":43,"context_line":"        u\u0027id\u0027: kw.get(\u0027id\u0027, u\u00271\u0027),"},{"line_number":44,"context_line":"        u\u0027hyperesisor_hostname\u0027: kw.get(\u0027hyperesisor_hostname\u0027, u\u0027host01\u0027),"},{"line_number":45,"context_line":"        u\u0027hyperesisor_type\u0027: kw.get(\u0027hyperesisor_type\u0027, u\u0027QEMU\u0027),"},{"line_number":46,"context_line":"        u\u0027vcpus\u0027: kw.get(\u0027vcpus\u0027, 1),"},{"line_number":47,"context_line":"        u\u0027hyperesisor_version\u0027: kw.get(\u0027hyperesisor_version\u0027, 1000000),"},{"line_number":48,"context_line":"        u\u0027trust_id\u0027: kw.get(\u0027trust_id\u0027,"},{"line_number":49,"context_line":"                            u\u002735b17138-b364-4e6a-a131-8f3099c5be68\u0027),"},{"line_number":50,"context_line":"        u\u0027memory_mb\u0027: kw.get(\u0027memory_mb\u0027, 8192),"},{"line_number":51,"context_line":"        u\u0027local_gb\u0027: kw.get(\u0027local_gb\u0027, 50),"},{"line_number":52,"context_line":"        u\u0027cpu_info\u0027: kw.get(\u0027cpu_info\u0027,"},{"line_number":53,"context_line":"                            u\"{\\\"vendor\\\": \\\"Intel\\\", \\\"model\\\": \\\"qemu32\\\", \""},{"line_number":54,"context_line":"                            \"\\\"arch\\\": \\\"x86_64\\\", \\\"features\\\": [],\""},{"line_number":55,"context_line":"                            \" \\\"topology\\\": {\\\"cores\\\": 1}}\","},{"line_number":56,"context_line":"                            ),"},{"line_number":57,"context_line":"        u\u0027extra_capas\u0027: kw.get(\u0027extra_capas\u0027,"},{"line_number":58,"context_line":"                               {u\u0027vgpus\u0027: 2, u\u0027fruits\u0027: u\u0027bananas\u0027}),"},{"line_number":59,"context_line":"    }"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_1b32d4f2","line":58,"range":{"start_line":43,"start_character":0,"end_line":58,"end_character":69},"updated":"2019-06-03 16:36:52.000000000","message":"hypervisor_hostname","commit_id":"b8e6e295767603ce923c078c6c84435e9ad3c4ce"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"1ff8f73de0b9f11331f86312eea17062b98bc833","unresolved":false,"context_lines":[{"line_number":62,"context_line":"def fake_computehost_request_body(include\u003d[], **kw):"},{"line_number":63,"context_line":"    computehost_body \u003d fake_computehost(**kw)"},{"line_number":64,"context_line":"    computehost_body[\u0027name\u0027] \u003d kw.get(\u0027name\u0027,"},{"line_number":65,"context_line":"                                      computehost_body[\u0027hyperesisor_hostname\u0027])"},{"line_number":66,"context_line":"    include.append(\u0027name\u0027)"},{"line_number":67,"context_line":"    include.append(\u0027extra_capas\u0027)"},{"line_number":68,"context_line":"    return dict((key, computehost_body[key])"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_7b567009","line":65,"range":{"start_line":65,"start_character":56,"end_line":65,"end_character":76},"updated":"2019-06-03 16:36:52.000000000","message":"hypervisor_hostname","commit_id":"b8e6e295767603ce923c078c6c84435e9ad3c4ce"}],"blazar/tests/test_context.py":[{"author":{"_account_id":8878,"name":"Masahito Muroi","email":"masahito.muroi@linecorp.com","username":"masa"},"change_message_id":"b782f763ed9f054d198059fe5038eaa95326725c","unresolved":false,"context_lines":[{"line_number":64,"context_line":"                                     service_catalog\u003d[])"},{"line_number":65,"context_line":"        self.assertEqual([], ctxt.service_catalog)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"        ctxt \u003d context.BlazarContext(user_id\u003duuidsentinel.user_id,"},{"line_number":68,"context_line":"                                     project_id\u003duuidsentinel.project_id,"},{"line_number":69,"context_line":"                                     service_catalog\u003dNone)"},{"line_number":70,"context_line":"        self.assertEqual([], ctxt.service_catalog)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def test_blazar_context_elevated(self):"},{"line_number":73,"context_line":"        user_context \u003d context.BlazarContext("}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_39595b8d","line":70,"range":{"start_line":67,"start_character":0,"end_line":70,"end_character":50},"updated":"2019-06-11 09:28:08.000000000","message":"I prefer to add a test case which passes service_catalog to BlazarContext.__init__ because it accepts specific service type.","commit_id":"bcb9d360e2cd51fc69a4580d7c35f3ad643b8b6d"}],"blazar/tests/utils/openstack/test_placement.py":[{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"64a0c5185a951cc3f0a70066c9b11a4bb54e1f6a","unresolved":false,"context_lines":[{"line_number":44,"context_line":"    def _add_default_kwargs(self, kwargs):"},{"line_number":45,"context_line":"        kwargs[\u0027endpoint_filter\u0027] \u003d {\u0027service_type\u0027: \u0027placement\u0027,"},{"line_number":46,"context_line":"                                     \u0027interface\u0027: \u0027public\u0027,"},{"line_number":47,"context_line":"                                     \u0027region_name\u0027: \u0027RegionOne\u0027}"},{"line_number":48,"context_line":"        kwargs[\u0027headers\u0027] \u003d {\u0027accept\u0027: \u0027application/json\u0027}"},{"line_number":49,"context_line":"        kwargs[\u0027microversion\u0027] \u003d PLACEMENT_MICROVERSION"},{"line_number":50,"context_line":"        kwargs[\u0027raise_exc\u0027] \u003d False"}],"source_content_type":"text/x-python","patch_set":17,"id":"7faddb67_f4188bcd","line":47,"updated":"2019-09-04 02:35:54.000000000","message":"This should be in a separate patch.","commit_id":"ddaf982d332e5ceb01479b75140896cc6caca5a3"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"cdd6aabb0de2102a2c72522c1a8814026c0fdf70","unresolved":false,"context_lines":[{"line_number":44,"context_line":"    def _add_default_kwargs(self, kwargs):"},{"line_number":45,"context_line":"        kwargs[\u0027endpoint_filter\u0027] \u003d {\u0027service_type\u0027: \u0027placement\u0027,"},{"line_number":46,"context_line":"                                     \u0027interface\u0027: \u0027public\u0027,"},{"line_number":47,"context_line":"                                     \u0027region_name\u0027: \u0027RegionOne\u0027}"},{"line_number":48,"context_line":"        kwargs[\u0027headers\u0027] \u003d {\u0027accept\u0027: \u0027application/json\u0027}"},{"line_number":49,"context_line":"        kwargs[\u0027microversion\u0027] \u003d PLACEMENT_MICROVERSION"},{"line_number":50,"context_line":"        kwargs[\u0027raise_exc\u0027] \u003d False"}],"source_content_type":"text/x-python","patch_set":17,"id":"7faddb67_e1b3e898","line":47,"in_reply_to":"7faddb67_54cb9f1b","updated":"2019-09-04 05:58:51.000000000","message":"Thank you very much!","commit_id":"ddaf982d332e5ceb01479b75140896cc6caca5a3"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"8323c45df24877cd66d96f186f196fc64effa12a","unresolved":false,"context_lines":[{"line_number":44,"context_line":"    def _add_default_kwargs(self, kwargs):"},{"line_number":45,"context_line":"        kwargs[\u0027endpoint_filter\u0027] \u003d {\u0027service_type\u0027: \u0027placement\u0027,"},{"line_number":46,"context_line":"                                     \u0027interface\u0027: \u0027public\u0027,"},{"line_number":47,"context_line":"                                     \u0027region_name\u0027: \u0027RegionOne\u0027}"},{"line_number":48,"context_line":"        kwargs[\u0027headers\u0027] \u003d {\u0027accept\u0027: \u0027application/json\u0027}"},{"line_number":49,"context_line":"        kwargs[\u0027microversion\u0027] \u003d PLACEMENT_MICROVERSION"},{"line_number":50,"context_line":"        kwargs[\u0027raise_exc\u0027] \u003d False"}],"source_content_type":"text/x-python","patch_set":17,"id":"7faddb67_54cb9f1b","line":47,"in_reply_to":"7faddb67_f4188bcd","updated":"2019-09-04 02:42:18.000000000","message":"I\u0027ve started to look into this in https://review.opendev.org/#/c/679890/","commit_id":"ddaf982d332e5ceb01479b75140896cc6caca5a3"}],"releasenotes/notes/request_id-0ebc34f09c6d01f2.yaml":[{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"a71955513864cd081153effcce551d02b2a76259","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new ``X-OpenStack-Request-ID`` header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see \u0027request_id\u0027 in logs for better tracing."}],"source_content_type":"text/x-yaml","patch_set":11,"id":"7faddb67_2a9037ed","line":5,"updated":"2019-07-12 04:05:37.000000000","message":"Good to have a link to the api-ref describing the X-OpenStack-Request-ID.","commit_id":"66dc97a7533cfae911355b1f7a27a8d320547466"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"a71955513864cd081153effcce551d02b2a76259","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new ``X-OpenStack-Request-ID`` header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see \u0027request_id\u0027 in logs for better tracing."}],"source_content_type":"text/x-yaml","patch_set":11,"id":"7faddb67_aadae747","line":6,"updated":"2019-07-12 04:05:37.000000000","message":"Along with request id, several request context variables are also enabled by default with this patch such as user id and product id, aren\u0027t they? It may be worth to have a link to something like [1] here, too.\n\n[1] https://docs.openstack.org/oslo.context/latest/user/usage.html#context-variables","commit_id":"66dc97a7533cfae911355b1f7a27a8d320547466"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"3ff2d59038bc1e74c1e5dfb3dbb331f4963d0156","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new ``X-OpenStack-Request-ID`` header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see \u0027request_id\u0027 in logs for better tracing."}],"source_content_type":"text/x-yaml","patch_set":11,"id":"7faddb67_4517a446","line":6,"in_reply_to":"7faddb67_aadae747","updated":"2019-07-12 04:29:58.000000000","message":"[later] It is not worth linking to oslo probably since this is more of a developer\u0027s doc, but I think addressing user id and product id is worth having.","commit_id":"66dc97a7533cfae911355b1f7a27a8d320547466"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"80a63f1a7ddf20e509ce71aa56583e7419d1528d","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new `[X-OpenStack-Request-ID]`_ header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see request_id, user_id and project_id in logs for better tracing."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    .. _`[X-OpenStack-Request-ID]`:  https://developer.openstack.org/api-ref/reservation/v1/index.html#request-id"}],"source_content_type":"text/x-yaml","patch_set":12,"id":"7faddb67_8c054b17","line":6,"range":{"start_line":6,"start_character":89,"end_line":6,"end_character":90},"updated":"2019-07-22 02:06:08.000000000","message":"nit: by default and it is configurable via the ``[DEFAULT]/logging_context_format_string``_ option.\nhttps://docs.openstack.org/oslo.log/latest/configuration/index.html#DEFAULT.logging_context_format_string","commit_id":"41550d8878a347552ea2312ff0100808bee3b8cb"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"ee3427dba3361ab661500cf76c12c6b51f8829f3","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new `[X-OpenStack-Request-ID]`_ header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see request_id, user_id and project_id in logs for better tracing."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    .. _`[X-OpenStack-Request-ID]`:  https://developer.openstack.org/api-ref/reservation/v1/index.html#request-id"}],"source_content_type":"text/x-yaml","patch_set":12,"id":"7faddb67_03d8417d","line":6,"range":{"start_line":6,"start_character":89,"end_line":6,"end_character":90},"in_reply_to":"7faddb67_8c054b17","updated":"2019-07-22 13:17:07.000000000","message":"Done","commit_id":"41550d8878a347552ea2312ff0100808bee3b8cb"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"75eec3db4b785cf6aeda67621373b3a22a754656","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new `[X-OpenStack-Request-ID]`_ header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see request_id, user_id and project_id by default in logs for better tracing"},{"line_number":7,"context_line":"    and it is configurable via the [DEFAULT] `[logging_context_format_string]`_ option."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    .. _`[X-OpenStack-Request-ID]`:  https://developer.openstack.org/api-ref/reservation/v1/index.html#request-id"}],"source_content_type":"text/x-yaml","patch_set":13,"id":"7faddb67_4eb415f3","line":7,"range":{"start_line":7,"start_character":35,"end_line":7,"end_character":78},"updated":"2019-07-23 02:36:43.000000000","message":"In documents, we use bold format and slash for this kind of config option. \n\n  ``[DEFAULT]/logging_context_format_string`` option","commit_id":"37ae0b8881a47d3e1d4f2fee2692f600918204fd"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"de254cd5f78e235cfa681f42db33f2ad100e4657","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new `[X-OpenStack-Request-ID]`_ header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see request_id, user_id and project_id by default in logs for better tracing"},{"line_number":7,"context_line":"    and it is configurable via the [DEFAULT] `[logging_context_format_string]`_ option."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    .. _`[X-OpenStack-Request-ID]`:  https://developer.openstack.org/api-ref/reservation/v1/index.html#request-id"}],"source_content_type":"text/x-yaml","patch_set":13,"id":"7faddb67_11e07d96","line":7,"range":{"start_line":7,"start_character":35,"end_line":7,"end_character":78},"in_reply_to":"7faddb67_4eb415f3","updated":"2019-07-23 09:56:58.000000000","message":"Done","commit_id":"37ae0b8881a47d3e1d4f2fee2692f600918204fd"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5148e236a5606a9a03265391dc8c368f179536d4","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new `[X-OpenStack-Request-ID]`_ header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see request_id, user_id and project_id by default in logs for better tracing"},{"line_number":7,"context_line":"    and it is configurable via the ``[DEFAULT]/logging_context_format_string`` `[option]`_."},{"line_number":8,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":14,"id":"7faddb67_0ab4c234","line":5,"range":{"start_line":5,"start_character":18,"end_line":5,"end_character":42},"updated":"2019-07-23 12:41:29.000000000","message":"I think it will look better if you drop the square brackets.","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"162c0bb7eacfe53b0052b40b63ba80d11b7c2bba","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new `[X-OpenStack-Request-ID]`_ header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see request_id, user_id and project_id by default in logs for better tracing"},{"line_number":7,"context_line":"    and it is configurable via the ``[DEFAULT]/logging_context_format_string`` `[option]`_."},{"line_number":8,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":14,"id":"7faddb67_65cf9957","line":5,"range":{"start_line":5,"start_character":18,"end_line":5,"end_character":42},"in_reply_to":"7faddb67_0ab4c234","updated":"2019-07-24 06:54:25.000000000","message":"Done","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":15197,"name":"Pierre Riteau","email":"pierre@stackhpc.com","username":"priteau","status":"StackHPC"},"change_message_id":"5148e236a5606a9a03265391dc8c368f179536d4","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new `[X-OpenStack-Request-ID]`_ header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see request_id, user_id and project_id by default in logs for better tracing"},{"line_number":7,"context_line":"    and it is configurable via the ``[DEFAULT]/logging_context_format_string`` `[option]`_."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    .. _`[X-OpenStack-Request-ID]`:  https://developer.openstack.org/api-ref/reservation/v1/index.html#request-id"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"7faddb67_ca878a61","line":7,"range":{"start_line":7,"start_character":80,"end_line":7,"end_character":88},"updated":"2019-07-23 12:41:29.000000000","message":"I think it will look better if you drop the square brackets.","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"},{"author":{"_account_id":29278,"name":"Asmita Singh","email":"Asmita.Singh@nttdata.com","username":"asmita.singh"},"change_message_id":"162c0bb7eacfe53b0052b40b63ba80d11b7c2bba","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Blazar now uses oslo.middleware for request_id processing which will now"},{"line_number":5,"context_line":"    return a new `[X-OpenStack-Request-ID]`_ header in response of each Restful API request."},{"line_number":6,"context_line":"    Also, operators can see request_id, user_id and project_id by default in logs for better tracing"},{"line_number":7,"context_line":"    and it is configurable via the ``[DEFAULT]/logging_context_format_string`` `[option]`_."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    .. _`[X-OpenStack-Request-ID]`:  https://developer.openstack.org/api-ref/reservation/v1/index.html#request-id"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"7faddb67_85cc1562","line":7,"range":{"start_line":7,"start_character":80,"end_line":7,"end_character":88},"in_reply_to":"7faddb67_ca878a61","updated":"2019-07-24 06:54:25.000000000","message":"Done","commit_id":"ebdb7355137a2b4a8990b621ed6092b97c714b35"}]}
