)]}'
{"searchlight/cmd/manage.py":[{"author":{"_account_id":16150,"name":"Lei Zhang","email":"lei.a.zhang@intel.com","username":"leizhang"},"change_message_id":"e5b53ce4ceab668eecae97094760f52492b87105","unresolved":false,"context_lines":[{"line_number":193,"context_line":"            for resource_type, ext in plugins_list:"},{"line_number":194,"context_line":"                doc_type \u003d ext.obj.get_document_type()"},{"line_number":195,"context_line":"                if doc_type in _type:"},{"line_number":196,"context_line":"                    es_reindex.append(doc_type)"},{"line_number":197,"context_line":"                    plugins_to_index.remove((resource_type, ext))"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"        # Call plugin API as needed."}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_c15e7875","line":196,"updated":"2016-03-22 15:40:40.000000000","message":"if it\u0027s user specified type, it should call api, not use elasticsearch reindex.","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"d128853b75543ff24ec41ac417b6667650dfd4ad","unresolved":false,"context_lines":[{"line_number":193,"context_line":"            for resource_type, ext in plugins_list:"},{"line_number":194,"context_line":"                doc_type \u003d ext.obj.get_document_type()"},{"line_number":195,"context_line":"                if doc_type in _type:"},{"line_number":196,"context_line":"                    es_reindex.append(doc_type)"},{"line_number":197,"context_line":"                    plugins_to_index.remove((resource_type, ext))"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"        # Call plugin API as needed."}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_2ce91d15","line":196,"in_reply_to":"fa0719c6_c15e7875","updated":"2016-03-22 21:03:33.000000000","message":"Embarrassingly so, there is a \"not\" missing in the check above. :(.","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":16150,"name":"Lei Zhang","email":"lei.a.zhang@intel.com","username":"leizhang"},"change_message_id":"e5b53ce4ceab668eecae97094760f52492b87105","unresolved":false,"context_lines":[{"line_number":198,"context_line":""},{"line_number":199,"context_line":"        # Call plugin API as needed."},{"line_number":200,"context_line":"        if plugins_to_index:"},{"line_number":201,"context_line":"                plugin_obj \u003d ext.obj"},{"line_number":202,"context_line":"                gname \u003d plugin_obj.resource_group_name"},{"line_number":203,"context_line":"                try:"},{"line_number":204,"context_line":"                    plugin_obj.initial_indexing(index_name\u003dindex_names[gname])"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_210e543b","line":201,"updated":"2016-03-22 15:40:40.000000000","message":"we should traverse the plugin list, do initial indexing for every plugin in the list here, seems missed something here.","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"d128853b75543ff24ec41ac417b6667650dfd4ad","unresolved":false,"context_lines":[{"line_number":198,"context_line":""},{"line_number":199,"context_line":"        # Call plugin API as needed."},{"line_number":200,"context_line":"        if plugins_to_index:"},{"line_number":201,"context_line":"                plugin_obj \u003d ext.obj"},{"line_number":202,"context_line":"                gname \u003d plugin_obj.resource_group_name"},{"line_number":203,"context_line":"                try:"},{"line_number":204,"context_line":"                    plugin_obj.initial_indexing(index_name\u003dindex_names[gname])"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_6cd15557","line":201,"in_reply_to":"fa0719c6_210e543b","updated":"2016-03-22 21:03:33.000000000","message":"And we will with the correct check above!","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"3da847c4a25dbafdcb7f31029699eccd464a5a44","unresolved":false,"context_lines":[{"line_number":199,"context_line":"                    plugins_to_index.remove((resource_type, ext))"},{"line_number":200,"context_line":""},{"line_number":201,"context_line":"        # Call plugin API as needed."},{"line_number":202,"context_line":"        if plugins_to_index:"},{"line_number":203,"context_line":"                plugin_obj \u003d ext.obj"},{"line_number":204,"context_line":"                gname \u003d plugin_obj.resource_group_name"},{"line_number":205,"context_line":"                try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa0719c6_6fed95b6","line":202,"range":{"start_line":202,"start_character":27,"end_line":202,"end_character":28},"updated":"2016-03-23 15:49:46.000000000","message":"This is missing a loop. It currently executes on the final plugin parsed in one of the loops above. There is an argument to split this function up since it\u0027s becoming increasingly unwieldy","commit_id":"45eedea7063a8e123a7e3741fdffcb92451b1e72"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"22c3a4021b76e262ad8c8629b9707aebd608384e","unresolved":false,"context_lines":[{"line_number":180,"context_line":"            es_utils.setup_alias(index_names[group], search, listen)"},{"line_number":181,"context_line":""},{"line_number":182,"context_line":"        # Step #3: Re-index all resource types in this Resource Type Group."},{"line_number":183,"context_line":"        #   Implicit in this step is to create the settings/mappings needed"},{"line_number":184,"context_line":"        #   for each document type in the new index. We will want an"},{"line_number":185,"context_line":"        #   optimization in this step. We want to minimze the plugin API calls"},{"line_number":186,"context_line":"        #   we make for re-ndexing. We want to use ElasticSearch\u0027s internal"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_8ddb67ed","line":183,"range":{"start_line":183,"start_character":46,"end_line":183,"end_character":47},"updated":"2016-03-28 22:35:35.000000000","message":"\u0027Implicit in this step....\u0027 is already done by here in step 1?","commit_id":"d96bdd65e02b70c61e9f4588ec5a835ea844ef9d"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"18190586f7254dea2e17ddd7ed204b654de27292","unresolved":false,"context_lines":[{"line_number":180,"context_line":"            es_utils.setup_alias(index_names[group], search, listen)"},{"line_number":181,"context_line":""},{"line_number":182,"context_line":"        # Step #3: Re-index all resource types in this Resource Type Group."},{"line_number":183,"context_line":"        #   Implicit in this step is to create the settings/mappings needed"},{"line_number":184,"context_line":"        #   for each document type in the new index. We will want an"},{"line_number":185,"context_line":"        #   optimization in this step. We want to minimze the plugin API calls"},{"line_number":186,"context_line":"        #   we make for re-ndexing. We want to use ElasticSearch\u0027s internal"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_de998321","line":183,"range":{"start_line":183,"start_character":46,"end_line":183,"end_character":47},"in_reply_to":"ba0121b8_8ddb67ed","updated":"2016-03-28 23:42:15.000000000","message":"Yes, I\u0027ve updated the comments to reflect this.","commit_id":"d96bdd65e02b70c61e9f4588ec5a835ea844ef9d"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"22c3a4021b76e262ad8c8629b9707aebd608384e","unresolved":false,"context_lines":[{"line_number":182,"context_line":"        # Step #3: Re-index all resource types in this Resource Type Group."},{"line_number":183,"context_line":"        #   Implicit in this step is to create the settings/mappings needed"},{"line_number":184,"context_line":"        #   for each document type in the new index. We will want an"},{"line_number":185,"context_line":"        #   optimization in this step. We want to minimze the plugin API calls"},{"line_number":186,"context_line":"        #   we make for re-ndexing. We want to use ElasticSearch\u0027s internal"},{"line_number":187,"context_line":"        #   re-indexing as much as possible. If the caller specified any"},{"line_number":188,"context_line":"        #   plugins by type, those are the plugin APIs we will call. If no"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_8d540755","line":185,"range":{"start_line":185,"start_character":50,"end_line":185,"end_character":57},"updated":"2016-03-28 22:35:35.000000000","message":"This can probably be shortened. \"As an optimization, if any types are explicitly requested, index them from their service APIs and the rest from an existing index if one exists.\"","commit_id":"d96bdd65e02b70c61e9f4588ec5a835ea844ef9d"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"18190586f7254dea2e17ddd7ed204b654de27292","unresolved":false,"context_lines":[{"line_number":182,"context_line":"        # Step #3: Re-index all resource types in this Resource Type Group."},{"line_number":183,"context_line":"        #   Implicit in this step is to create the settings/mappings needed"},{"line_number":184,"context_line":"        #   for each document type in the new index. We will want an"},{"line_number":185,"context_line":"        #   optimization in this step. We want to minimze the plugin API calls"},{"line_number":186,"context_line":"        #   we make for re-ndexing. We want to use ElasticSearch\u0027s internal"},{"line_number":187,"context_line":"        #   re-indexing as much as possible. If the caller specified any"},{"line_number":188,"context_line":"        #   plugins by type, those are the plugin APIs we will call. If no"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_9e90abee","line":185,"range":{"start_line":185,"start_character":50,"end_line":185,"end_character":57},"in_reply_to":"ba0121b8_8d540755","updated":"2016-03-28 23:42:15.000000000","message":"Shorter. Sweeter.","commit_id":"d96bdd65e02b70c61e9f4588ec5a835ea844ef9d"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"22c3a4021b76e262ad8c8629b9707aebd608384e","unresolved":false,"context_lines":[{"line_number":219,"context_line":"                # tuple, extract third member (the listener alias) of tuple."},{"line_number":220,"context_line":"                alias_listener \u003d \\"},{"line_number":221,"context_line":"                    [a for a in resource_groups if a[0] \u003d\u003d group][0][2]"},{"line_number":222,"context_line":"                es_utils.reindex(src_index\u003dalias_listener,"},{"line_number":223,"context_line":"                                 dst_index\u003dindex_names[group],"},{"line_number":224,"context_line":"                                 type_list\u003des_reindex)"},{"line_number":225,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_d00332b7","line":222,"range":{"start_line":222,"start_character":43,"end_line":222,"end_character":57},"updated":"2016-03-28 22:35:35.000000000","message":"The listener alias at this point refers to both indices, so the scan operation is being sourced from both. I\u0027m not sure what the result will be; I suspect it\u0027ll index everything twice?","commit_id":"d96bdd65e02b70c61e9f4588ec5a835ea844ef9d"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"ca3d744b187facd3449232a0f185d744b868a0e7","unresolved":false,"context_lines":[{"line_number":219,"context_line":"                # tuple, extract third member (the listener alias) of tuple."},{"line_number":220,"context_line":"                alias_listener \u003d \\"},{"line_number":221,"context_line":"                    [a for a in resource_groups if a[0] \u003d\u003d group][0][2]"},{"line_number":222,"context_line":"                es_utils.reindex(src_index\u003dalias_listener,"},{"line_number":223,"context_line":"                                 dst_index\u003dindex_names[group],"},{"line_number":224,"context_line":"                                 type_list\u003des_reindex)"},{"line_number":225,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_991a856d","line":222,"range":{"start_line":222,"start_character":43,"end_line":222,"end_character":57},"in_reply_to":"ba0121b8_beaacf17","updated":"2016-03-28 23:45:54.000000000","message":"The documents will (should) only exist in the old one, except when listener notifications have populated the new one. This shouldn\u0027t be pulling from the new one at all","commit_id":"d96bdd65e02b70c61e9f4588ec5a835ea844ef9d"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"18190586f7254dea2e17ddd7ed204b654de27292","unresolved":false,"context_lines":[{"line_number":219,"context_line":"                # tuple, extract third member (the listener alias) of tuple."},{"line_number":220,"context_line":"                alias_listener \u003d \\"},{"line_number":221,"context_line":"                    [a for a in resource_groups if a[0] \u003d\u003d group][0][2]"},{"line_number":222,"context_line":"                es_utils.reindex(src_index\u003dalias_listener,"},{"line_number":223,"context_line":"                                 dst_index\u003dindex_names[group],"},{"line_number":224,"context_line":"                                 type_list\u003des_reindex)"},{"line_number":225,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_beaacf17","line":222,"range":{"start_line":222,"start_character":43,"end_line":222,"end_character":57},"in_reply_to":"ba0121b8_d00332b7","updated":"2016-03-28 23:42:15.000000000","message":"When I tested it, we did not get any duplicate documents. Looking at the search results from the debug message, it only shows each document once. I\u0027l relook at it to verify.","commit_id":"d96bdd65e02b70c61e9f4588ec5a835ea844ef9d"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"94d25d741e12d6f726d595cc2d1f5f5a18e1cfd9","unresolved":false,"context_lines":[{"line_number":227,"context_line":"                # Grab the correct tuple as a list, convert list to a single"},{"line_number":228,"context_line":"                # tuple, extract second member (the search alias) of tuple."},{"line_number":229,"context_line":"                alias_search \u003d \\"},{"line_number":230,"context_line":"                    [a for a in resource_groups if a[0] \u003d\u003d group][0][1]"},{"line_number":231,"context_line":"                try:"},{"line_number":232,"context_line":"                    es_utils.reindex(src_index\u003dalias_search,"},{"line_number":233,"context_line":"                                     dst_index\u003dindex_names[group],"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba0121b8_a6029a09","line":230,"range":{"start_line":230,"start_character":26,"end_line":230,"end_character":27},"updated":"2016-03-29 19:15:37.000000000","message":"My eyes! I think this can probably be neatened up by changing the data structures but i\u0027m ok with this for now.","commit_id":"cb2137bd23f112ff6cb64c13eb9a76f36eb3c9c8"}],"searchlight/elasticsearch/plugins/utils.py":[{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"8f1be546bdbeefcba3a83c33c1d7a26f93eb36c0","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    # document types. We will filter on the \"_type\" field in this index. Since"},{"line_number":79,"context_line":"    # there are multple docuent types, we will need to use the \"terms\" filter."},{"line_number":80,"context_line":"    # All of the document types will be added to the list for \"_type\"."},{"line_number":81,"context_line":"    obj \u003d json.loads(\u0027{\"query\": {\"filtered\": {\"filter\": {\"terms\":\u0027"},{"line_number":82,"context_line":"                     \u0027{\"_type\": []}}}}}\u0027)"},{"line_number":83,"context_line":"    for type in type_list:"},{"line_number":84,"context_line":"        obj[\u0027query\u0027][\u0027filtered\u0027][\u0027filter\u0027][\u0027terms\u0027][\u0027_type\u0027].append(type)"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_9fa40258","line":81,"range":{"start_line":81,"start_character":4,"end_line":81,"end_character":7},"updated":"2016-03-21 23:23:18.000000000","message":"Ruh-roh! It seems more sensible to construct this as a dict rather than as a string, unless you\u0027re planning on a future dailywtf submission :)","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"d128853b75543ff24ec41ac417b6667650dfd4ad","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    # document types. We will filter on the \"_type\" field in this index. Since"},{"line_number":79,"context_line":"    # there are multple docuent types, we will need to use the \"terms\" filter."},{"line_number":80,"context_line":"    # All of the document types will be added to the list for \"_type\"."},{"line_number":81,"context_line":"    obj \u003d json.loads(\u0027{\"query\": {\"filtered\": {\"filter\": {\"terms\":\u0027"},{"line_number":82,"context_line":"                     \u0027{\"_type\": []}}}}}\u0027)"},{"line_number":83,"context_line":"    for type in type_list:"},{"line_number":84,"context_line":"        obj[\u0027query\u0027][\u0027filtered\u0027][\u0027filter\u0027][\u0027terms\u0027][\u0027_type\u0027].append(type)"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_2f1f4f60","line":81,"range":{"start_line":81,"start_character":4,"end_line":81,"end_character":7},"in_reply_to":"fa0719c6_9fa40258","updated":"2016-03-22 21:03:33.000000000","message":"I\u0027m glad you\u0027re amused! Since json.dumps is not needed (see below) I\u0027ll switch over to a dict.","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"8f1be546bdbeefcba3a83c33c1d7a26f93eb36c0","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    # All of the document types will be added to the list for \"_type\"."},{"line_number":81,"context_line":"    obj \u003d json.loads(\u0027{\"query\": {\"filtered\": {\"filter\": {\"terms\":\u0027"},{"line_number":82,"context_line":"                     \u0027{\"_type\": []}}}}}\u0027)"},{"line_number":83,"context_line":"    for type in type_list:"},{"line_number":84,"context_line":"        obj[\u0027query\u0027][\u0027filtered\u0027][\u0027filter\u0027][\u0027terms\u0027][\u0027_type\u0027].append(type)"},{"line_number":85,"context_line":"    body \u003d json.dumps(obj)"},{"line_number":86,"context_line":"    # Debug: Show all documents that ES will re-index."}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_ff5ede43","line":83,"range":{"start_line":83,"start_character":13,"end_line":83,"end_character":15},"updated":"2016-03-21 23:23:18.000000000","message":"This loop isn\u0027t necessary; add the type list as the value of _type when the query object is created","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"d128853b75543ff24ec41ac417b6667650dfd4ad","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    # All of the document types will be added to the list for \"_type\"."},{"line_number":81,"context_line":"    obj \u003d json.loads(\u0027{\"query\": {\"filtered\": {\"filter\": {\"terms\":\u0027"},{"line_number":82,"context_line":"                     \u0027{\"_type\": []}}}}}\u0027)"},{"line_number":83,"context_line":"    for type in type_list:"},{"line_number":84,"context_line":"        obj[\u0027query\u0027][\u0027filtered\u0027][\u0027filter\u0027][\u0027terms\u0027][\u0027_type\u0027].append(type)"},{"line_number":85,"context_line":"    body \u003d json.dumps(obj)"},{"line_number":86,"context_line":"    # Debug: Show all documents that ES will re-index."}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_6c05d578","line":83,"range":{"start_line":83,"start_character":13,"end_line":83,"end_character":15},"in_reply_to":"fa0719c6_ff5ede43","updated":"2016-03-22 21:03:33.000000000","message":"Good catch. Initially I was doing other things in the loop. But when I removed all of the extraneous bits I forgot to refactor.","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"8f1be546bdbeefcba3a83c33c1d7a26f93eb36c0","unresolved":false,"context_lines":[{"line_number":82,"context_line":"                     \u0027{\"_type\": []}}}}}\u0027)"},{"line_number":83,"context_line":"    for type in type_list:"},{"line_number":84,"context_line":"        obj[\u0027query\u0027][\u0027filtered\u0027][\u0027filter\u0027][\u0027terms\u0027][\u0027_type\u0027].append(type)"},{"line_number":85,"context_line":"    body \u003d json.dumps(obj)"},{"line_number":86,"context_line":"    # Debug: Show all documents that ES will re-index."},{"line_number":87,"context_line":"    # print(es_engine.search(index\u003dsrc_index, body\u003dbody, size\u003d500))"},{"line_number":88,"context_line":"    helpers.reindex(client\u003des_engine, source_index\u003dsrc_index,"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_5f36ea03","line":85,"range":{"start_line":85,"start_character":16,"end_line":85,"end_character":21},"updated":"2016-03-21 23:23:18.000000000","message":"Is the json.dumps necessary? Elsewhere the e-s library handles json serialization for us","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"d128853b75543ff24ec41ac417b6667650dfd4ad","unresolved":false,"context_lines":[{"line_number":82,"context_line":"                     \u0027{\"_type\": []}}}}}\u0027)"},{"line_number":83,"context_line":"    for type in type_list:"},{"line_number":84,"context_line":"        obj[\u0027query\u0027][\u0027filtered\u0027][\u0027filter\u0027][\u0027terms\u0027][\u0027_type\u0027].append(type)"},{"line_number":85,"context_line":"    body \u003d json.dumps(obj)"},{"line_number":86,"context_line":"    # Debug: Show all documents that ES will re-index."},{"line_number":87,"context_line":"    # print(es_engine.search(index\u003dsrc_index, body\u003dbody, size\u003d500))"},{"line_number":88,"context_line":"    helpers.reindex(client\u003des_engine, source_index\u003dsrc_index,"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_cc086130","line":85,"range":{"start_line":85,"start_character":16,"end_line":85,"end_character":21},"in_reply_to":"fa0719c6_5f36ea03","updated":"2016-03-22 21:03:33.000000000","message":"In that case, then no the json.dumps are neither necessary nor wanted.","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"8f1be546bdbeefcba3a83c33c1d7a26f93eb36c0","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    for type in type_list:"},{"line_number":84,"context_line":"        obj[\u0027query\u0027][\u0027filtered\u0027][\u0027filter\u0027][\u0027terms\u0027][\u0027_type\u0027].append(type)"},{"line_number":85,"context_line":"    body \u003d json.dumps(obj)"},{"line_number":86,"context_line":"    # Debug: Show all documents that ES will re-index."},{"line_number":87,"context_line":"    # print(es_engine.search(index\u003dsrc_index, body\u003dbody, size\u003d500))"},{"line_number":88,"context_line":"    helpers.reindex(client\u003des_engine, source_index\u003dsrc_index,"},{"line_number":89,"context_line":"                    target_index\u003ddst_index, query\u003dbody)"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_ff77fed1","line":86,"range":{"start_line":86,"start_character":6,"end_line":86,"end_character":11},"updated":"2016-03-21 23:23:18.000000000","message":"Turn this into a LOG.debug, it\u0027s useful to have","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"d128853b75543ff24ec41ac417b6667650dfd4ad","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    for type in type_list:"},{"line_number":84,"context_line":"        obj[\u0027query\u0027][\u0027filtered\u0027][\u0027filter\u0027][\u0027terms\u0027][\u0027_type\u0027].append(type)"},{"line_number":85,"context_line":"    body \u003d json.dumps(obj)"},{"line_number":86,"context_line":"    # Debug: Show all documents that ES will re-index."},{"line_number":87,"context_line":"    # print(es_engine.search(index\u003dsrc_index, body\u003dbody, size\u003d500))"},{"line_number":88,"context_line":"    helpers.reindex(client\u003des_engine, source_index\u003dsrc_index,"},{"line_number":89,"context_line":"                    target_index\u003ddst_index, query\u003dbody)"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_0c8d397b","line":86,"range":{"start_line":86,"start_character":6,"end_line":86,"end_character":11},"in_reply_to":"fa0719c6_5a31d8a1","updated":"2016-03-22 21:03:33.000000000","message":"I agree with Travis, which is why I kept it commented out. It could get very verbose, especially when Swift is not specified as a type! But, as usual, I can be convinced otherwise.","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"3ea8903f6540c37f746ba427b8d6c0b006630147","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    for type in type_list:"},{"line_number":84,"context_line":"        obj[\u0027query\u0027][\u0027filtered\u0027][\u0027filter\u0027][\u0027terms\u0027][\u0027_type\u0027].append(type)"},{"line_number":85,"context_line":"    body \u003d json.dumps(obj)"},{"line_number":86,"context_line":"    # Debug: Show all documents that ES will re-index."},{"line_number":87,"context_line":"    # print(es_engine.search(index\u003dsrc_index, body\u003dbody, size\u003d500))"},{"line_number":88,"context_line":"    helpers.reindex(client\u003des_engine, source_index\u003dsrc_index,"},{"line_number":89,"context_line":"                    target_index\u003ddst_index, query\u003dbody)"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_5a31d8a1","line":86,"range":{"start_line":86,"start_character":6,"end_line":86,"end_character":11},"in_reply_to":"fa0719c6_ff77fed1","updated":"2016-03-21 23:27:07.000000000","message":"I think we should talk a bit about this one. It could make for some really nasty output on devstack. Also,  my devstack logs are already murdering my system:\n\nhttps://bugs.launchpad.net/searchlight/+bug/1558759","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"8f1be546bdbeefcba3a83c33c1d7a26f93eb36c0","unresolved":false,"context_lines":[{"line_number":85,"context_line":"    body \u003d json.dumps(obj)"},{"line_number":86,"context_line":"    # Debug: Show all documents that ES will re-index."},{"line_number":87,"context_line":"    # print(es_engine.search(index\u003dsrc_index, body\u003dbody, size\u003d500))"},{"line_number":88,"context_line":"    helpers.reindex(client\u003des_engine, source_index\u003dsrc_index,"},{"line_number":89,"context_line":"                    target_index\u003ddst_index, query\u003dbody)"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_9f408258","line":88,"range":{"start_line":88,"start_character":4,"end_line":88,"end_character":11},"updated":"2016-03-21 23:23:18.000000000","message":"Any return value we need to pay attention to?","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"d128853b75543ff24ec41ac417b6667650dfd4ad","unresolved":false,"context_lines":[{"line_number":85,"context_line":"    body \u003d json.dumps(obj)"},{"line_number":86,"context_line":"    # Debug: Show all documents that ES will re-index."},{"line_number":87,"context_line":"    # print(es_engine.search(index\u003dsrc_index, body\u003dbody, size\u003d500))"},{"line_number":88,"context_line":"    helpers.reindex(client\u003des_engine, source_index\u003dsrc_index,"},{"line_number":89,"context_line":"                    target_index\u003ddst_index, query\u003dbody)"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"fa0719c6_eccba551","line":88,"range":{"start_line":88,"start_character":4,"end_line":88,"end_character":11},"in_reply_to":"fa0719c6_9f408258","updated":"2016-03-22 21:03:33.000000000","message":"Under the covers, reindex is a scan, followed by a bulk write. The results from the bulk calls is what gets returned. Basically a count of the success/failure of the streaming bulk operations to ElasticSearch.\n\nFor our other calls to bulk we only display this count to any interested parties. If such curious people exist for reindexing, I can add the following for consistency:\n    result \u003d helpers.reindex(...)\n    LOG.debug(Re-indexing result: %s\", result)\n\nDidn\u0027t seem to be worth the effort. \n\nAny other errors will be raise and caught above, resulting in a failed re-indexing attempt and the appropriate cleanup.","commit_id":"85200c7caf57bb10c48a7fea359a08f6641e22de"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"8821213d5ea415a54fbe0fb1dd093c0a814f8332","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                   target_client\u003dNone, chunk_size\u003d500, scroll\u003d\u00275m\u0027,"},{"line_number":69,"context_line":"                   scan_kwargs\u003d{}, bulk_kwargs\u003d{}):"},{"line_number":70,"context_line":"    \"\"\"We have lovingly copied the entire helpers.reindex function here:"},{"line_number":71,"context_line":"           lib/python2.7/site-packages/elasticsearch/helpers/__init__.py."},{"line_number":72,"context_line":"       We need our own version (haha) of reindex to handle external versioning"},{"line_number":73,"context_line":"       within a document. The current implmenentation of helpers.reindex does"},{"line_number":74,"context_line":"       not provide this support. Since there is no way to tell helpers.bulk()"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba0121b8_6a0a0023","line":71,"updated":"2016-03-29 19:46:41.000000000","message":"This seem odd to reference something from an installed package.  Shouldn\u0027t the reference be to the github location of the source and also point out that it is Apache licensed?\n\nhttps://github.com/elastic/elasticsearch-py","commit_id":"cb2137bd23f112ff6cb64c13eb9a76f36eb3c9c8"}]}
