@click.command() @click.pass_context def merge_chunks_index(ctx): local_elastic_client = get_local_elastic_client() import json from pprint import pprint import sys import elasticsearch found = set() not_found = set() has_migrated_transfer_packages = set() matched_migrated_transfer_packages = set() with open(f"/Users/robertkenny/Desktop/migration_state/index_chunks.json", 'r') as f: for line in f: doc = json.loads(line) id = doc['_id'] if doc['_source']['transfer_package'] is not None: has_migrated_transfer_packages.add(id) try: matched_doc = local_elastic_client.get(index="chunks", id=id) if doc['_source']['transfer_package'] is not None: matched_migrated_transfer_packages.add(id) matched_doc['_source']['transfer_package'] = doc['_source']['transfer_package'] local_elastic_client.update( index="chunks", id=id, body={"doc": matched_doc['_source']} ) found.add(id) except elasticsearch.exceptions.NotFoundError: not_found.add(id) print(f"Found:{len(found)}, Not found: {len(not_found)}") print(f"has_migrated_transfer_packages:{len(has_migrated_transfer_packages)}") print(f"matched_migrated_transfer_packages:{len(matched_migrated_transfer_packages)}") #pprint(has_migrated_transfer_packages.difference(matched_migrated_transfer_packages))