)]}'
{"lib/keystone":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"9e4bdf24428b68102caefde7b5c35af098560c0b","unresolved":false,"context_lines":[{"line_number":497,"context_line":"    # Unfortunately the Python library goes by different names in the .deb"},{"line_number":498,"context_line":"    # and .rpm circles. This is always installed so keystonemiddleware"},{"line_number":499,"context_line":"    # can cache tokens in a shared location."},{"line_number":500,"context_line":"    install_package memcached"},{"line_number":501,"context_line":"    if is_ubuntu; then"},{"line_number":502,"context_line":"        install_package python-memcache"},{"line_number":503,"context_line":"    else"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"9a68dd71_c39052ef","line":500,"range":{"start_line":500,"start_character":4,"end_line":500,"end_character":29},"updated":"2016-01-20 20:49:33.000000000","message":"Do we need this anymore since you\u0027re adding it to the package lists?","commit_id":"a03194f934a3859ff4d88a2376bee3c26bd1a78c"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"88fabcdc7cbe4bbd3a14089a106ec7f809f199b5","unresolved":false,"context_lines":[{"line_number":497,"context_line":"    # Unfortunately the Python library goes by different names in the .deb"},{"line_number":498,"context_line":"    # and .rpm circles. This is always installed so keystonemiddleware"},{"line_number":499,"context_line":"    # can cache tokens in a shared location."},{"line_number":500,"context_line":"    install_package memcached"},{"line_number":501,"context_line":"    if is_ubuntu; then"},{"line_number":502,"context_line":"        install_package python-memcache"},{"line_number":503,"context_line":"    else"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"9a68dd71_668f3424","line":500,"range":{"start_line":500,"start_character":4,"end_line":500,"end_character":29},"in_reply_to":"9a68dd71_c39052ef","updated":"2016-01-20 20:58:09.000000000","message":"Done","commit_id":"a03194f934a3859ff4d88a2376bee3c26bd1a78c"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"9e4bdf24428b68102caefde7b5c35af098560c0b","unresolved":false,"context_lines":[{"line_number":498,"context_line":"    # and .rpm circles. This is always installed so keystonemiddleware"},{"line_number":499,"context_line":"    # can cache tokens in a shared location."},{"line_number":500,"context_line":"    install_package memcached"},{"line_number":501,"context_line":"    if is_ubuntu; then"},{"line_number":502,"context_line":"        install_package python-memcache"},{"line_number":503,"context_line":"    else"},{"line_number":504,"context_line":"        install_package python-memcached"},{"line_number":505,"context_line":"    fi"},{"line_number":506,"context_line":""},{"line_number":507,"context_line":"    git_clone $KEYSTONE_REPO $KEYSTONE_DIR $KEYSTONE_BRANCH"},{"line_number":508,"context_line":"    setup_develop $KEYSTONE_DIR"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"9a68dd71_437222e7","line":505,"range":{"start_line":501,"start_character":4,"end_line":505,"end_character":6},"updated":"2016-01-20 20:49:33.000000000","message":"Why isn\u0027t this a pip_install? Is there a reason we need to use the packaged version?","commit_id":"a03194f934a3859ff4d88a2376bee3c26bd1a78c"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"88fabcdc7cbe4bbd3a14089a106ec7f809f199b5","unresolved":false,"context_lines":[{"line_number":498,"context_line":"    # and .rpm circles. This is always installed so keystonemiddleware"},{"line_number":499,"context_line":"    # can cache tokens in a shared location."},{"line_number":500,"context_line":"    install_package memcached"},{"line_number":501,"context_line":"    if is_ubuntu; then"},{"line_number":502,"context_line":"        install_package python-memcache"},{"line_number":503,"context_line":"    else"},{"line_number":504,"context_line":"        install_package python-memcached"},{"line_number":505,"context_line":"    fi"},{"line_number":506,"context_line":""},{"line_number":507,"context_line":"    git_clone $KEYSTONE_REPO $KEYSTONE_DIR $KEYSTONE_BRANCH"},{"line_number":508,"context_line":"    setup_develop $KEYSTONE_DIR"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"9a68dd71_8694a837","line":505,"range":{"start_line":501,"start_character":4,"end_line":505,"end_character":6},"in_reply_to":"9a68dd71_437222e7","updated":"2016-01-20 20:58:09.000000000","message":"Done","commit_id":"a03194f934a3859ff4d88a2376bee3c26bd1a78c"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"001910dfae00d00b61491cf7d356d334a49158bc","unresolved":false,"context_lines":[{"line_number":430,"context_line":"    iniset $conf_file $section auth_uri $KEYSTONE_SERVICE_URI"},{"line_number":431,"context_line":"    iniset $conf_file $section cafile $SSL_BUNDLE_FILE"},{"line_number":432,"context_line":"    iniset $conf_file $section signing_dir $signing_dir"},{"line_number":433,"context_line":"    iniset $conf_file $section memcache_servers 127.0.0.1:11211"},{"line_number":434,"context_line":"}"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"# init_keystone() - Initialize databases, etc."}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"9a68dd71_2c5fd673","line":433,"updated":"2016-01-20 23:41:35.000000000","message":"memcached_servers is the non-deprecated name in keystonemiddleware.\n\n  https://github.com/openstack/keystonemiddleware/blob/master/keystonemiddleware/auth_token/__init__.py#L286-L290\n\nI believe it\u0027s memcache_servers in keystone itself though :-/","commit_id":"afd84acd0313ff6edde0cc7a6bc7c3e0bab7ac8c"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"52335575734c558d4f34c8e474d17167a8df043d","unresolved":false,"context_lines":[{"line_number":430,"context_line":"    iniset $conf_file $section auth_uri $KEYSTONE_SERVICE_URI"},{"line_number":431,"context_line":"    iniset $conf_file $section cafile $SSL_BUNDLE_FILE"},{"line_number":432,"context_line":"    iniset $conf_file $section signing_dir $signing_dir"},{"line_number":433,"context_line":"    iniset $conf_file $section memcache_servers 127.0.0.1:11211"},{"line_number":434,"context_line":"}"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"# init_keystone() - Initialize databases, etc."}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"9a68dd71_a2c40b5f","line":433,"in_reply_to":"9a68dd71_2c5fd673","updated":"2016-01-21 15:22:37.000000000","message":"Does memcached support IPv6?  If so this should be $SERVICE_LOCAL_HOST which gets set to either 127.0.0.1 or ::1 automatically.\n\nI\u0027ll fix it in a follow-on since this change is to speed-up the gate.","commit_id":"afd84acd0313ff6edde0cc7a6bc7c3e0bab7ac8c"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"8858528c8b40855e6be812303b7d5d4e4a817640","unresolved":false,"context_lines":[{"line_number":430,"context_line":"    iniset $conf_file $section auth_uri $KEYSTONE_SERVICE_URI"},{"line_number":431,"context_line":"    iniset $conf_file $section cafile $SSL_BUNDLE_FILE"},{"line_number":432,"context_line":"    iniset $conf_file $section signing_dir $signing_dir"},{"line_number":433,"context_line":"    iniset $conf_file $section memcache_servers $SERVICE_HOST:11211"},{"line_number":434,"context_line":"}"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"# init_keystone() - Initialize databases, etc."}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"9a68dd71_dbd00156","line":433,"range":{"start_line":433,"start_character":47,"end_line":433,"end_character":61},"updated":"2016-01-21 17:19:03.000000000","message":"I presume devstack also support multi-node cluster? Usually in production, for a multi-node cluster, memcached is running in a ring and distributed as opposed to a single host. In any case, this is fine if we just want to show how memcached can be utilized in a simple setup.","commit_id":"02f0daa35a68d4c86a64f4cc694d2bb01f3b30b7"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"35cd8e466e597511aa82dae3fcdcfda0ff2153e4","unresolved":false,"context_lines":[{"line_number":430,"context_line":"    iniset $conf_file $section auth_uri $KEYSTONE_SERVICE_URI"},{"line_number":431,"context_line":"    iniset $conf_file $section cafile $SSL_BUNDLE_FILE"},{"line_number":432,"context_line":"    iniset $conf_file $section signing_dir $signing_dir"},{"line_number":433,"context_line":"    iniset $conf_file $section memcache_servers $SERVICE_HOST:11211"},{"line_number":434,"context_line":"}"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"# init_keystone() - Initialize databases, etc."}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"9a68dd71_3beefdb4","line":433,"range":{"start_line":433,"start_character":47,"end_line":433,"end_character":61},"in_reply_to":"9a68dd71_dbd00156","updated":"2016-01-21 17:25:52.000000000","message":"I am not sure we use devstack in that manner. I believe that we usually have a single host for any given service at most.\n\nThis is relatively out of scope for this fix. In production you can pass multiple values to memcache[d]_server options.","commit_id":"02f0daa35a68d4c86a64f4cc694d2bb01f3b30b7"}]}
