)]}'
{"specs/liberty/version-caching.rst":[{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"c061d67e78ce2062eca4f1bac9b5ad103ca4b9ce","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Version Caching"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/ironic/+spec/version-caching"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_bfb440d1","line":8,"updated":"2015-06-05 02:07:30.000000000","message":"Client Caching of Negotiated Version\n\n??","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"7f5688e7cabf979bff4440e858f31f43dcd2320a","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Version Caching"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/ironic/+spec/version-caching"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_5a767a3f","line":8,"in_reply_to":"3afb71cf_bfb440d1","updated":"2015-06-05 02:42:57.000000000","message":"Done","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"c061d67e78ce2062eca4f1bac9b5ad103ca4b9ce","unresolved":false,"context_lines":[{"line_number":11,"context_line":"https://blueprints.launchpad.net/ironic/+spec/version-caching"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This blueprint adds support for caching the version negiotiated by the"},{"line_number":14,"context_line":"ironicclient, between itself and the ironic server.  This is supplimentary"},{"line_number":15,"context_line":"to the \u0027api microversion\u0027 spec approved last cycle."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_bfa3204f","line":14,"updated":"2015-06-05 02:07:30.000000000","message":"s/supplimentary/supplementary/","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"7f5688e7cabf979bff4440e858f31f43dcd2320a","unresolved":false,"context_lines":[{"line_number":11,"context_line":"https://blueprints.launchpad.net/ironic/+spec/version-caching"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This blueprint adds support for caching the version negiotiated by the"},{"line_number":14,"context_line":"ironicclient, between itself and the ironic server.  This is supplimentary"},{"line_number":15,"context_line":"to the \u0027api microversion\u0027 spec approved last cycle."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_3a73be4f","line":14,"in_reply_to":"3afb71cf_bfa3204f","updated":"2015-06-05 02:42:57.000000000","message":"Done","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"18ef91086314a7e4f2794a16759bcad4bba3ad06","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This blueprint adds support for caching the version negiotiated by the"},{"line_number":14,"context_line":"ironicclient, between itself and the ironic server.  This is supplimentary"},{"line_number":15,"context_line":"to the \u0027api microversion\u0027 spec approved last cycle."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Problem description"},{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_3fa73051","line":15,"updated":"2015-06-05 02:09:30.000000000","message":"s/approved last/approved in the Kilo/\n\nMaybe a link to: http://specs.openstack.org/openstack/ironic-specs/specs/kilo/api-microversions.html","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"7f5688e7cabf979bff4440e858f31f43dcd2320a","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This blueprint adds support for caching the version negiotiated by the"},{"line_number":14,"context_line":"ironicclient, between itself and the ironic server.  This is supplimentary"},{"line_number":15,"context_line":"to the \u0027api microversion\u0027 spec approved last cycle."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Problem description"},{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_1a8fe224","line":15,"in_reply_to":"3afb71cf_3fa73051","updated":"2015-06-05 02:42:57.000000000","message":"Done","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"c061d67e78ce2062eca4f1bac9b5ad103ca4b9ce","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"When the ironicclient talks to the ironic server, there may be a mismatch"},{"line_number":21,"context_line":"in supported api versions.  The client and server negotiate a version to be"},{"line_number":22,"context_line":"used in communicating, but since the ironicclient can be used as a user"},{"line_number":23,"context_line":"interactive client, this process of negotiation would be repeated for each"},{"line_number":24,"context_line":"command line invocation."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_1fdd9414","line":21,"updated":"2015-06-05 02:07:30.000000000","message":"s/api/API/","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"7f5688e7cabf979bff4440e858f31f43dcd2320a","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"When the ironicclient talks to the ironic server, there may be a mismatch"},{"line_number":21,"context_line":"in supported api versions.  The client and server negotiate a version to be"},{"line_number":22,"context_line":"used in communicating, but since the ironicclient can be used as a user"},{"line_number":23,"context_line":"interactive client, this process of negotiation would be repeated for each"},{"line_number":24,"context_line":"command line invocation."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_1ab6c2dc","line":21,"in_reply_to":"3afb71cf_1fdd9414","updated":"2015-06-05 02:42:57.000000000","message":"Done","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"c061d67e78ce2062eca4f1bac9b5ad103ca4b9ce","unresolved":false,"context_lines":[{"line_number":50,"context_line":"* Storing the cached information in local file storage, using appdirs[3] to"},{"line_number":51,"context_line":"  provide the correct location"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"* Indexing the version information in a ironic-server:network-port pair"},{"line_number":54,"context_line":"  so that multiple ironic servers running on the same IP address will be"},{"line_number":55,"context_line":"  cached independently"},{"line_number":56,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_9fd184fe","line":53,"updated":"2015-06-05 02:07:30.000000000","message":"s/in a/in an/\n\ns/pair/(e.g. example.com:3333) pair/","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"7f5688e7cabf979bff4440e858f31f43dcd2320a","unresolved":false,"context_lines":[{"line_number":50,"context_line":"* Storing the cached information in local file storage, using appdirs[3] to"},{"line_number":51,"context_line":"  provide the correct location"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"* Indexing the version information in a ironic-server:network-port pair"},{"line_number":54,"context_line":"  so that multiple ironic servers running on the same IP address will be"},{"line_number":55,"context_line":"  cached independently"},{"line_number":56,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_bab44ed1","line":53,"in_reply_to":"3afb71cf_9fd184fe","updated":"2015-06-05 02:42:57.000000000","message":"Done","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"c061d67e78ce2062eca4f1bac9b5ad103ca4b9ce","unresolved":false,"context_lines":[{"line_number":60,"context_line":"Storing the version information in a well-known, standardised, local file"},{"line_number":61,"context_line":"storage location means that, if the user wants to, they can remove the cached"},{"line_number":62,"context_line":"version information manually triggering a renegotiation of the version to be"},{"line_number":63,"context_line":"used in communication between the client and server."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Alternatives"},{"line_number":66,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_df825cc8","line":63,"updated":"2015-06-05 02:07:30.000000000","message":"This makes me wonder if there should be a command line option in the client to remove the cached information?  And when the cached information is used, should the client say that it used cached information?","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"7f5688e7cabf979bff4440e858f31f43dcd2320a","unresolved":false,"context_lines":[{"line_number":60,"context_line":"Storing the version information in a well-known, standardised, local file"},{"line_number":61,"context_line":"storage location means that, if the user wants to, they can remove the cached"},{"line_number":62,"context_line":"version information manually triggering a renegotiation of the version to be"},{"line_number":63,"context_line":"used in communication between the client and server."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Alternatives"},{"line_number":66,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_fa088693","line":63,"in_reply_to":"3afb71cf_df825cc8","updated":"2015-06-05 02:42:57.000000000","message":"I don\u0027t think so.  It should be transparent for the user for the general case.  We have the option of specifying a version, I think that\u0027s sufficient.  IIRC, there was some pushback to displaying additional version-related information in the output of python-ironicclient (and if we did decide to do so, it would need to determine if this was interactive use of the client, rather than using it like a library like the Ironic Driver in Nova does)","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"c061d67e78ce2062eca4f1bac9b5ad103ca4b9ce","unresolved":false,"context_lines":[{"line_number":117,"context_line":"Scalability impact"},{"line_number":118,"context_line":"------------------"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"None"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Performance Impact"},{"line_number":123,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_df593c90","line":120,"updated":"2015-06-05 02:07:30.000000000","message":"Possible improvement.\n\nNot sure how to word that or if it should be said.","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"7f5688e7cabf979bff4440e858f31f43dcd2320a","unresolved":false,"context_lines":[{"line_number":117,"context_line":"Scalability impact"},{"line_number":118,"context_line":"------------------"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"None"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Performance Impact"},{"line_number":123,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_da34aa4b","line":120,"in_reply_to":"3afb71cf_df593c90","updated":"2015-06-05 02:42:57.000000000","message":"Done","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"c061d67e78ce2062eca4f1bac9b5ad103ca4b9ce","unresolved":false,"context_lines":[{"line_number":122,"context_line":"Performance Impact"},{"line_number":123,"context_line":"------------------"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"None"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Other deployer impact"},{"line_number":128,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_9f54e454","line":125,"updated":"2015-06-05 02:07:30.000000000","message":"Possible improvement.\n\nNot sure how to word that or if it should be said.","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"7f5688e7cabf979bff4440e858f31f43dcd2320a","unresolved":false,"context_lines":[{"line_number":122,"context_line":"Performance Impact"},{"line_number":123,"context_line":"------------------"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"None"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Other deployer impact"},{"line_number":128,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_9a3f5225","line":125,"in_reply_to":"3afb71cf_9f54e454","updated":"2015-06-05 02:42:57.000000000","message":"Done","commit_id":"2500332edfa90cc571301a435915055d38b438fc"},{"author":{"_account_id":13997,"name":"SHIGEMATSU Mitsuhiro","email":"shigematsu.mitsuhiro@lab.ntt.co.jp","username":"pshige"},"change_message_id":"353d4e76ef3abe863bae756b38be1dbc74ebebc3","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/ironic/+spec/version-caching"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This blueprint adds support for caching the version negiotiated by the"},{"line_number":14,"context_line":"ironicclient, between itself and the ironic server.  This is supplementary"},{"line_number":15,"context_line":"to the \u0027api microversion\u0027 spec approved in the Kilo release[0]."},{"line_number":16,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_e1c5535b","line":13,"updated":"2015-06-06 07:42:39.000000000","message":"s/negiotiated/negotiated/","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"52b57e8aad4a4e2597569354436b4d4f1baecade","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/ironic/+spec/version-caching"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This blueprint adds support for caching the version negiotiated by the"},{"line_number":14,"context_line":"ironicclient, between itself and the ironic server.  This is supplementary"},{"line_number":15,"context_line":"to the \u0027api microversion\u0027 spec approved in the Kilo release[0]."},{"line_number":16,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_5ccbafa5","line":13,"in_reply_to":"3afb71cf_e1c5535b","updated":"2015-06-09 00:51:25.000000000","message":"Done","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"d722ea329f3075ffc3d8aa496d1afc807fb64895","unresolved":false,"context_lines":[{"line_number":30,"context_line":"This version caching would need to be per ironic server (host, network port"},{"line_number":31,"context_line":"pair specific) and would be time-bound (say 5 minutes), so any future upgrade"},{"line_number":32,"context_line":"of the client or server would benefit from supporting newer available"},{"line_number":33,"context_line":"versions."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Proposed change"},{"line_number":36,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_f6516cd9","line":33,"updated":"2015-06-08 15:48:21.000000000","message":"Hi Michael, I think I had asked this and forgot. Is it cached per user/ironicclient or per ironicclient? I think per user, right? (per user/client/server).","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"52b57e8aad4a4e2597569354436b4d4f1baecade","unresolved":false,"context_lines":[{"line_number":30,"context_line":"This version caching would need to be per ironic server (host, network port"},{"line_number":31,"context_line":"pair specific) and would be time-bound (say 5 minutes), so any future upgrade"},{"line_number":32,"context_line":"of the client or server would benefit from supporting newer available"},{"line_number":33,"context_line":"versions."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Proposed change"},{"line_number":36,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_bc686388","line":33,"in_reply_to":"3afb71cf_f6516cd9","updated":"2015-06-09 00:51:25.000000000","message":"Thanks Ruby for the question.  I\u0027ve clarified that it is per user, per ironic server","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"78a7541a8bcc26e699d4088ed5e1db707552c5ef","unresolved":false,"context_lines":[{"line_number":45,"context_line":"Specifically, we are proposing:"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"* Using the dogpile.cache[1] caching system, since it has been used in other"},{"line_number":48,"context_line":"  parts of OpenStack[2]"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"* Storing the cached information in local file storage, using appdirs[3] to"},{"line_number":51,"context_line":"  provide the correct location"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_7906e121","line":48,"updated":"2015-06-05 06:54:13.000000000","message":"I question whether we need such a complex system vs putting a JSON to the file","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"52b57e8aad4a4e2597569354436b4d4f1baecade","unresolved":false,"context_lines":[{"line_number":45,"context_line":"Specifically, we are proposing:"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"* Using the dogpile.cache[1] caching system, since it has been used in other"},{"line_number":48,"context_line":"  parts of OpenStack[2]"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"* Storing the cached information in local file storage, using appdirs[3] to"},{"line_number":51,"context_line":"  provide the correct location"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_dcf2ffd1","line":48,"in_reply_to":"3afb71cf_7680dc46","updated":"2015-06-09 00:51:25.000000000","message":"Thanks Dmitry and Ruby.  As mentioned in the footnote, dogpile.cache is used in os-client-config and this is one on the main reasons dogpile.cache has been suggested for use here.  \n\nI\u0027ll reword and add a reference to openstackclient as well.","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"d722ea329f3075ffc3d8aa496d1afc807fb64895","unresolved":false,"context_lines":[{"line_number":45,"context_line":"Specifically, we are proposing:"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"* Using the dogpile.cache[1] caching system, since it has been used in other"},{"line_number":48,"context_line":"  parts of OpenStack[2]"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"* Storing the cached information in local file storage, using appdirs[3] to"},{"line_number":51,"context_line":"  provide the correct location"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_7680dc46","line":48,"in_reply_to":"3afb71cf_7906e121","updated":"2015-06-08 15:48:21.000000000","message":"Probably elaborate here. Deva and Monty (comments in [5]) suggested this because openstackclient is/will be using os-client-config and dogpile.cache, so it makes sense to do a similar thing.","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"d722ea329f3075ffc3d8aa496d1afc807fb64895","unresolved":false,"context_lines":[{"line_number":55,"context_line":"  the same IP address will be cached independently"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* Having a default period of 5 minutes for caching version information for"},{"line_number":58,"context_line":"  each ironic server"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Storing the version information in a well-known, standardised, local file"},{"line_number":61,"context_line":"storage location means that, if the user wants to, they can remove the cached"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_93d24ad1","line":58,"updated":"2015-06-08 15:48:21.000000000","message":"the user will be able to change this default? If so, how?","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"66c6a763ca2ed360ad4565bc7f19de1964e2cf36","unresolved":false,"context_lines":[{"line_number":55,"context_line":"  the same IP address will be cached independently"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* Having a default period of 5 minutes for caching version information for"},{"line_number":58,"context_line":"  each ironic server"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Storing the version information in a well-known, standardised, local file"},{"line_number":61,"context_line":"storage location means that, if the user wants to, they can remove the cached"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_c16f8cfa","line":58,"in_reply_to":"3afb71cf_576f08c5","updated":"2015-06-09 18:59:37.000000000","message":"I think we should add an option or environment variable so that this is configurable because someone is going to ask for it because there will be some use case that we haven\u0027t thought of.\n\nOn the other hand, I suppose one could wait and add that in later. (When anything is hard-coded, I hear bells...)","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"52b57e8aad4a4e2597569354436b4d4f1baecade","unresolved":false,"context_lines":[{"line_number":55,"context_line":"  the same IP address will be cached independently"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* Having a default period of 5 minutes for caching version information for"},{"line_number":58,"context_line":"  each ironic server"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Storing the version information in a well-known, standardised, local file"},{"line_number":61,"context_line":"storage location means that, if the user wants to, they can remove the cached"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_576f08c5","line":58,"in_reply_to":"3afb71cf_93d24ad1","updated":"2015-06-09 00:51:25.000000000","message":"I\u0027ve made provision in the code for the timeout to be configurable (see https://review.openstack.org/#/c/173674/20/ironicclient/common/filecache.py line 62) but not exposed that any further.","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"78a7541a8bcc26e699d4088ed5e1db707552c5ef","unresolved":false,"context_lines":[{"line_number":66,"context_line":"------------"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"An alternative file-based solution was proposed[4], but rejected in favour of"},{"line_number":69,"context_line":"using dogpile.cache."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Data model impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_59032510","line":69,"updated":"2015-06-05 06:54:13.000000000","message":"Again, why?","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"52b57e8aad4a4e2597569354436b4d4f1baecade","unresolved":false,"context_lines":[{"line_number":66,"context_line":"------------"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"An alternative file-based solution was proposed[4], but rejected in favour of"},{"line_number":69,"context_line":"using dogpile.cache."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Data model impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_37724cae","line":69,"in_reply_to":"3afb71cf_4196674d","updated":"2015-06-09 00:51:25.000000000","message":"Dmitry/Shigematsu: I\u0027ll add more information.","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":13997,"name":"SHIGEMATSU Mitsuhiro","email":"shigematsu.mitsuhiro@lab.ntt.co.jp","username":"pshige"},"change_message_id":"353d4e76ef3abe863bae756b38be1dbc74ebebc3","unresolved":false,"context_lines":[{"line_number":66,"context_line":"------------"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"An alternative file-based solution was proposed[4], but rejected in favour of"},{"line_number":69,"context_line":"using dogpile.cache."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Data model impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_4196674d","line":69,"in_reply_to":"3afb71cf_59032510","updated":"2015-06-06 07:42:39.000000000","message":"I would also like to know why.","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"},{"author":{"_account_id":13997,"name":"SHIGEMATSU Mitsuhiro","email":"shigematsu.mitsuhiro@lab.ntt.co.jp","username":"pshige"},"change_message_id":"353d4e76ef3abe863bae756b38be1dbc74ebebc3","unresolved":false,"context_lines":[{"line_number":183,"context_line":"  and is used by https://github.com/openstack/os-client-config"},{"line_number":184,"context_line":"* [3] Documentation on appdirs is found here: https://pypi.python.org/pypi/appdirs"},{"line_number":185,"context_line":"* [4] Original custom file cache solution: https://review.openstack.org/#/c/173674/1/"},{"line_number":186,"context_line":"* [5] Current state of the implemenation at the time of this spec being raised:"},{"line_number":187,"context_line":"  https://review.openstack.org/#/c/173674/19"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afb71cf_a1a63bbf","line":186,"updated":"2015-06-06 07:42:39.000000000","message":"s/implemenation/implementation/","commit_id":"0a36dcf685b4cbe2997f221200561df4c562c396"}]}
