From 2cd1fded1034c2a6e133f4bd30fc453f24d19e1b Mon Sep 17 00:00:00 2001 From: Aleksey Zimin Date: Tue, 21 Jun 2022 16:47:14 -0400 Subject: [PATCH] better performance in build and fix for --work-on-disk option --- scripts/build_db.sh | 2 +- src/set_lcas.cpp | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/scripts/build_db.sh b/scripts/build_db.sh index 603a83a..0641fd1 100755 --- a/scripts/build_db.sh +++ b/scripts/build_db.sh @@ -235,7 +235,7 @@ else exe eval tar zxf taxdump.tar.gz cd .. fi - build_taxdb $TAXONOMY_DIR/names.dmp $TAXONOMY_DIR/nodes.dmp | sort -t$'\t' -rnk6,6 -rnk5,5 > taxDB.tmp + build_taxdb $TAXONOMY_DIR/names.dmp $TAXONOMY_DIR/nodes.dmp | sort -S 20% -t$'\t' -rnk6,6 -rnk5,5 > taxDB.tmp mv taxDB.tmp taxDB echo "taxDB construction finished. [$(report_time_elapsed $start_time1)]" fi diff --git a/src/set_lcas.cpp b/src/set_lcas.cpp index 2a15e7d..b944f28 100644 --- a/src/set_lcas.cpp +++ b/src/set_lcas.cpp @@ -113,10 +113,10 @@ int main(int argc, char **argv) { } } - if (!Operate_in_RAM && Output_DB_filename.size() > 0) { - cerr << "You need to operate in RAM (flag -M) to use output to a different file (flag -o)" << endl; - return 1; - } + //if (!Operate_in_RAM && Output_DB_filename.size() > 0) { + // cerr << "You need to operate in RAM (flag -M) to use output to a different file (flag -o)" << endl; + // return 1; + //} QuickFile db_file(DB_filename, "rw"); size_t db_file_size = db_file.size(); @@ -126,9 +126,6 @@ int main(int argc, char **argv) { dat = slurp_file(DB_filename, db_file_size); Database = KrakenDB(dat.data()); } else { - if (Output_DB_filename.size() > 0) { - //system("cp " + DB_filename + " " + Output_DB_filename); - } Database = KrakenDB(db_file.ptr()); } @@ -162,6 +159,11 @@ int main(int argc, char **argv) { ofs.write(dat.data(), db_file_size); ofs.close(); dat.clear(); + } else if (!Pretend) { + if (Output_DB_filename.size() > 0) { + string cmd="cp " + DB_filename + " " + Output_DB_filename; + system(cmd.c_str()); + } } UID_map_file.close();