87def consolidate_files(oksfile, *input_files):
88 includes = []
89 dbs = []
90 str_in_files = '\n'.join(input_files)
91 log.info(f"Consolidating {len(input_files)} databases into output database \'{oksfile}\'. Input databases: {str_in_files}")
92 sys.setrecursionlimit(10000)
93
94 for input_file in input_files:
96 includes += get_all_includes(dbs[len(dbs) - 1], None)
97
98 includes = list(set(includes))
99 includes = [i for i in includes if i not in input_files]
100 log.debug(f"Included files: {includes}")
101
103 new_db.create_db(oksfile, includes)
104
105 new_db.commit()
106
107 for db in dbs:
108 log.debug(f"Reading dal objects from old db {db}")
109 dals = db.get_all_dals()
110
111 log.debug(f"Copying objects to new db {new_db}")
112 for dal in dals:
113
114 try:
115 new_db.get_dal(dals[dal].className(), dals[dal].id)
116 except:
117 new_db.add_dal(dals[dal])
118 new_db.commit()
119
120 log.debug(f"Saving database {new_db}")
121 new_db.commit()