Conversation
hmusta
requested changes
May 17, 2025
Also changed processing: always map to the full dbg contigs pulled from batches
Resolved conflict in src/cli/load/load_annotated_graph.cpp: kept mk/query's split (load_annotation + load_coord_to_header free functions for parallel graph/annotation loading) and adopted master's removal of redundant high-level error logs (now reported by the lower-level loaders, per #611). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
# Conflicts: # metagraph/src/cli/load/load_annotated_graph.cpp # metagraph/src/cli/query.cpp
When assembling with annotation-based masks, the graph and annotation are independent loads. Use load_graph_with_async_annotation (from #621) so they overlap instead of running serially. Graph-only assembly (no annotators) keeps load_critical_dbg. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ion API Replace the two ad-hoc ThreadPool(1, 1) wrappers (one for graph, one for annotation in the batched-query path) with the existing async loaders. Both graph and AnnotatedDBG are kicked off together at the top of query_graph; queries can begin as soon as the graph is ready, with the annotation arriving in the background. Hoist coord_to_header_exists out of the per-file loop -- it's file-independent. Move check_annotation onto the stub annotation (temp_anno) so type validation runs immediately rather than waiting for the full data load. As a side effect, non-batched runs are now also validated, where they previously weren't. Expose async_load_critical_dbg as public API. Drop load_annotation from the public header now that no external caller uses it -- it remains as an internal helper in the anonymous namespace. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The extraction was driven by the merge resolution, but no external caller needs it after query.cpp was switched to use load_graph_with_async_annotation. Inlining it back into build_annotated_dbg restores master's row_diff/CTH parallelism: CTH load now runs concurrently with the graph await again, instead of serially after it. Net diff vs master: just the public exposure of async_load_critical_dbg. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
No callers in the codebase. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The flag returned by sequence_to_kmers indicates whether the k-mer is well-formed (no invalid characters), not whether it's already in the graph. The latter check happens later via insert(). Rename for accuracy. Also drops two unused additions from earlier work-in-progress: a parallel add_sequence overload that exposed k-mer position to the on_insertion callback (no external callers), and a VectorRowBinMat<Vector<uint32_t>> template instantiation (also no callers). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Resolves conflicts with the query/refactoring PR that landed on master. mk/query went further than #625 (split construct_query_graph into a construct_contigs helper, made the annotation lazy via a getter, switched batched_query_fasta to take the file path directly so the caller doesn't own a FastaParser), so kept HEAD's signatures everywhere they diverged. Key resolution choices: * query.cpp/hpp: kept HEAD's batched-query and async-annotation flow; took master's relocation of score_kmer_presence_mask out of the file (it now lives in graph/alignment/score_kmer_presence_mask.cpp); kept master's `align::score_kmer_presence_mask` qualified call sites. * benchmark_query.cpp: kept HEAD's getter-based construct_query_graph forward declaration so the benchmark links against the new signature. * tests/annotation/test_annotated_dbg.cpp: dropped the local score_kmer_presence_mask test since it now lives in tests/graph/test_score_kmer_presence_mask.cpp. * Removed a stray graph.reset() leftover from the pre-async loader. Verified: unit_tests (3,643) and integration_tests (3,594) pass.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.