)]}'
{"ironic/db/sqlalchemy/api.py":[{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"3b62e259122db9b4653a22b8b2044c2be8d03e76","unresolved":true,"context_lines":[{"line_number":87,"context_line":"    set."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    This is more efficent from a Queries Per Second standpoint with the"},{"line_number":90,"context_line":"    a backend database, as they are not separate distinct queries which"},{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"}],"source_content_type":"text/x-python","patch_set":4,"id":"8a98b0e8_8c05da63","line":90,"range":{"start_line":90,"start_character":4,"end_line":90,"end_character":5},"updated":"2021-07-07 07:04:36.000000000","message":"drop \u0027a\u0027 ?","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"3084b7e9b9618dd0a95652de1930b89fbd652fc3","unresolved":false,"context_lines":[{"line_number":87,"context_line":"    set."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    This is more efficent from a Queries Per Second standpoint with the"},{"line_number":90,"context_line":"    a backend database, as they are not separate distinct queries which"},{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"}],"source_content_type":"text/x-python","patch_set":4,"id":"a2d5078a_e9322977","line":90,"range":{"start_line":90,"start_character":4,"end_line":90,"end_character":5},"in_reply_to":"8a98b0e8_8c05da63","updated":"2021-08-11 13:43:43.000000000","message":"Done","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"3b62e259122db9b4653a22b8b2044c2be8d03e76","unresolved":true,"context_lines":[{"line_number":90,"context_line":"    a backend database, as they are not separate distinct queries which"},{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"},{"line_number":94,"context_line":"    is there may be multile tags and traits in nodes, and ultimately this"},{"line_number":95,"context_line":"    style of query forces SQLAlchemy to de-duplicate the result set as"},{"line_number":96,"context_line":"    in essence what happens in this case is the result set is something along"}],"source_content_type":"text/x-python","patch_set":4,"id":"99b42580_68ccb937","line":93,"range":{"start_line":93,"start_character":49,"end_line":93,"end_character":51},"updated":"2021-07-07 07:04:36.000000000","message":"drop \u0027a \u0027 ?","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"3084b7e9b9618dd0a95652de1930b89fbd652fc3","unresolved":false,"context_lines":[{"line_number":90,"context_line":"    a backend database, as they are not separate distinct queries which"},{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"},{"line_number":94,"context_line":"    is there may be multile tags and traits in nodes, and ultimately this"},{"line_number":95,"context_line":"    style of query forces SQLAlchemy to de-duplicate the result set as"},{"line_number":96,"context_line":"    in essence what happens in this case is the result set is something along"}],"source_content_type":"text/x-python","patch_set":4,"id":"9bce4c76_cee02cf6","line":93,"range":{"start_line":93,"start_character":49,"end_line":93,"end_character":51},"in_reply_to":"99b42580_68ccb937","updated":"2021-08-11 13:43:43.000000000","message":"Done","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"3b62e259122db9b4653a22b8b2044c2be8d03e76","unresolved":true,"context_lines":[{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"},{"line_number":94,"context_line":"    is there may be multile tags and traits in nodes, and ultimately this"},{"line_number":95,"context_line":"    style of query forces SQLAlchemy to de-duplicate the result set as"},{"line_number":96,"context_line":"    in essence what happens in this case is the result set is something along"},{"line_number":97,"context_line":"    the lines of"}],"source_content_type":"text/x-python","patch_set":4,"id":"3cd194f7_a9f96519","line":94,"range":{"start_line":94,"start_character":20,"end_line":94,"end_character":27},"updated":"2021-07-07 07:04:36.000000000","message":"Nit: multiple","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"3b62e259122db9b4653a22b8b2044c2be8d03e76","unresolved":true,"context_lines":[{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"},{"line_number":94,"context_line":"    is there may be multile tags and traits in nodes, and ultimately this"},{"line_number":95,"context_line":"    style of query forces SQLAlchemy to de-duplicate the result set as"},{"line_number":96,"context_line":"    in essence what happens in this case is the result set is something along"},{"line_number":97,"context_line":"    the lines of"}],"source_content_type":"text/x-python","patch_set":4,"id":"da17e16e_e1ac0872","line":94,"range":{"start_line":94,"start_character":4,"end_line":94,"end_character":6},"updated":"2021-07-07 07:04:36.000000000","message":"as ?","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"3084b7e9b9618dd0a95652de1930b89fbd652fc3","unresolved":false,"context_lines":[{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"},{"line_number":94,"context_line":"    is there may be multile tags and traits in nodes, and ultimately this"},{"line_number":95,"context_line":"    style of query forces SQLAlchemy to de-duplicate the result set as"},{"line_number":96,"context_line":"    in essence what happens in this case is the result set is something along"},{"line_number":97,"context_line":"    the lines of"}],"source_content_type":"text/x-python","patch_set":4,"id":"2383a7ab_83da6a5e","line":94,"range":{"start_line":94,"start_character":20,"end_line":94,"end_character":27},"in_reply_to":"3cd194f7_a9f96519","updated":"2021-08-11 13:43:43.000000000","message":"Done","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"3084b7e9b9618dd0a95652de1930b89fbd652fc3","unresolved":true,"context_lines":[{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"},{"line_number":94,"context_line":"    is there may be multile tags and traits in nodes, and ultimately this"},{"line_number":95,"context_line":"    style of query forces SQLAlchemy to de-duplicate the result set as"},{"line_number":96,"context_line":"    in essence what happens in this case is the result set is something along"},{"line_number":97,"context_line":"    the lines of"}],"source_content_type":"text/x-python","patch_set":4,"id":"ab698376_88061c83","line":94,"range":{"start_line":94,"start_character":4,"end_line":94,"end_character":6},"in_reply_to":"da17e16e_e1ac0872","updated":"2021-08-11 13:43:43.000000000","message":"Not sure where this as is or where it should be, but I\u0027ve reworded about half of this paragraph so hopefully it shouldn\u0027t be applicable any longer.","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"3b62e259122db9b4653a22b8b2044c2be8d03e76","unresolved":true,"context_lines":[{"line_number":86,"context_line":"    where corresponding traits, and tags, are joined together in the result"},{"line_number":87,"context_line":"    set."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    This is more efficent from a Queries Per Second standpoint with the"},{"line_number":90,"context_line":"    a backend database, as they are not separate distinct queries which"},{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"},{"line_number":94,"context_line":"    is there may be multile tags and traits in nodes, and ultimately this"},{"line_number":95,"context_line":"    style of query forces SQLAlchemy to de-duplicate the result set as"},{"line_number":96,"context_line":"    in essence what happens in this case is the result set is something along"},{"line_number":97,"context_line":"    the lines of"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"    node1, tag1, trait1"},{"line_number":100,"context_line":"    node1, tag1, trait2"}],"source_content_type":"text/x-python","patch_set":4,"id":"2f70f3d3_ff43e37c","line":97,"range":{"start_line":89,"start_character":4,"end_line":97,"end_character":16},"updated":"2021-07-07 07:04:36.000000000","message":"Despite being German and our preference for long Schachtelsätze [1], I struggle with this one ... would you mind rewording/splitting it?\n\n[1] https://en.wiktionary.org/wiki/Schachtelsatz","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"3084b7e9b9618dd0a95652de1930b89fbd652fc3","unresolved":true,"context_lines":[{"line_number":86,"context_line":"    where corresponding traits, and tags, are joined together in the result"},{"line_number":87,"context_line":"    set."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    This is more efficent from a Queries Per Second standpoint with the"},{"line_number":90,"context_line":"    a backend database, as they are not separate distinct queries which"},{"line_number":91,"context_line":"    are being executed by the client."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    The downside of this, is the relationship of a tags and traits to nodes"},{"line_number":94,"context_line":"    is there may be multile tags and traits in nodes, and ultimately this"},{"line_number":95,"context_line":"    style of query forces SQLAlchemy to de-duplicate the result set as"},{"line_number":96,"context_line":"    in essence what happens in this case is the result set is something along"},{"line_number":97,"context_line":"    the lines of"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"    node1, tag1, trait1"},{"line_number":100,"context_line":"    node1, tag1, trait2"}],"source_content_type":"text/x-python","patch_set":4,"id":"0cdd0714_59e0e459","line":97,"range":{"start_line":89,"start_character":4,"end_line":97,"end_character":16},"in_reply_to":"2f70f3d3_ff43e37c","updated":"2021-08-11 13:43:43.000000000","message":"ROFL, reworded. 😊","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"3b62e259122db9b4653a22b8b2044c2be8d03e76","unresolved":true,"context_lines":[{"line_number":139,"context_line":""},{"line_number":140,"context_line":"    This results in the following query pattern when the query is executed:"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"    select $fileds from nodes where x;"},{"line_number":143,"context_line":"    # SQLAlchemy creates a list of associated node IDs."},{"line_number":144,"context_line":"    select $fields from tags where node_id in (\u00271\u0027, \u00273\u0027, \u002737268\u0027);"},{"line_number":145,"context_line":"    select $fields from traits where node_id in (\u00271\u0027, \u00273\u0027, \u002737268\u0027);"}],"source_content_type":"text/x-python","patch_set":4,"id":"8b12ef28_406c6ab8","line":142,"range":{"start_line":142,"start_character":12,"end_line":142,"end_character":18},"updated":"2021-07-07 07:04:36.000000000","message":"Nit: fields","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"3084b7e9b9618dd0a95652de1930b89fbd652fc3","unresolved":false,"context_lines":[{"line_number":139,"context_line":""},{"line_number":140,"context_line":"    This results in the following query pattern when the query is executed:"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"    select $fileds from nodes where x;"},{"line_number":143,"context_line":"    # SQLAlchemy creates a list of associated node IDs."},{"line_number":144,"context_line":"    select $fields from tags where node_id in (\u00271\u0027, \u00273\u0027, \u002737268\u0027);"},{"line_number":145,"context_line":"    select $fields from traits where node_id in (\u00271\u0027, \u00273\u0027, \u002737268\u0027);"}],"source_content_type":"text/x-python","patch_set":4,"id":"363bc872_8ffc9815","line":142,"range":{"start_line":142,"start_character":12,"end_line":142,"end_character":18},"in_reply_to":"8b12ef28_406c6ab8","updated":"2021-08-11 13:43:43.000000000","message":"Done","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"}],"releasenotes/notes/change-db-access-pattern-for-node-lists-a333dd9c5afa737d.yaml":[{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"3b62e259122db9b4653a22b8b2044c2be8d03e76","unresolved":true,"context_lines":[{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The query pattern for the database when lists of nodes are retrieved has"},{"line_number":5,"context_line":"    been changed to a more efficent pattern at scale, where a list of nodes"},{"line_number":6,"context_line":"    is generated, and then additional queries are executed to composite this"},{"line_number":7,"context_line":"    data together. This is from a model where the database client in the"},{"line_number":8,"context_line":"    conductor was having to deduplicate the resulting data set which is"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"397b71de_ffb9ad8c","line":5,"range":{"start_line":5,"start_character":27,"end_line":5,"end_character":35},"updated":"2021-07-07 07:04:36.000000000","message":"Nit: efficient","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"},{"author":{"_account_id":11292,"name":"Arne Wiebalck","email":"Arne.Wiebalck@cern.ch","username":"wiebalck"},"change_message_id":"3b62e259122db9b4653a22b8b2044c2be8d03e76","unresolved":true,"context_lines":[{"line_number":6,"context_line":"    is generated, and then additional queries are executed to composite this"},{"line_number":7,"context_line":"    data together. This is from a model where the database client in the"},{"line_number":8,"context_line":"    conductor was having to deduplicate the resulting data set which is"},{"line_number":9,"context_line":"    less overall less efficent."},{"line_number":10,"context_line":"other:"},{"line_number":11,"context_line":"  - |"},{"line_number":12,"context_line":"    The default database query pattern has been changed which will result"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"93c977e2_a3267d84","line":9,"range":{"start_line":9,"start_character":4,"end_line":9,"end_character":8},"updated":"2021-07-07 07:04:36.000000000","message":"2x less","commit_id":"a6969ffd8f9aae6fbcb083e39fa6e1855f1745c8"}]}
