winni2k / abeona

abeona -- Abeona is the goddess of outward graph traversal
Other
3 stars 0 forks source link

abeona v0.40.0 fails on linked graph traversal #1

Open winni2k opened 5 years ago

winni2k commented 5 years ago

When I run abeona v0.40.0 on my data, then I get the following error message:

INFO:cortexpy:Log level is INFO
INFO:cortexpy.traverse:Loading graph: g29549.traverse.ctx
INFO:cortexpy.traverse:Loaded 3346 kmers
INFO:cortexpy.traverse:Making graph consistent
INFO:cortexpy.traverse:Loading links file g29549.ctp.gz
INFO:cortexpy.traverse:Exiting after element 100000
INFO:cortexpy.traverse:Writing seq records to -
INFO:cortexpy.graph.serializer.unitig:Collapsing graph with 3346 kmers
INFO:cortexpy.graph.serializer.unitig:Collapsing complete. Collapsed graph contains 87 unitigs
INFO:cortexpy.graph.interactor:Found 3 incoming tip nodes
INFO:cortexpy.graph.interactor:Found 5 outgoing tip nodes
INFO:cortexpy.graph.interactor:Incoming node 0; 5 outgoing nodes; Path number 0
Traceback (most recent call last):
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/bin/cortexpy", line 11, in <m
    sys.exit(main())
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/lib/python3.6/site-packages/c
    return getattr(module, method_string)(args.args)
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/lib/python3.6/site-packages/c
    for record in seq_record_generator:
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/lib/python3.6/site-packages/c
    for idx, val in enumerate(iterator):
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/lib/python3.6/site-packages/c
    for rec in seq_record_generator:
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/lib/python3.6/site-packages/c
    for pidx, path in enumerate(paths):
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/lib/python3.6/site-packages/c
    stack.append(iter(G[child]))
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/lib/python3.6/site-packages/c
    successors = list(parent_walker.successors())
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/lib/python3.6/site-packages/c
    j_unitigs = list(self.link_successors())
  File "/data/winni/proj/olof/abeona_paper_analysis/real_data/.snakemake/conda/e505603e/lib/python3.6/site-packages/c
    junctions: {self.link_walker.junctions}"""
ValueError: Links do not appear to match unitigs. Have these links been constructed on a different cortex graph?
                current unitig: {'repr': 'GGAGG', 'unitig': 'AGGGAGGAGGAGGGAGAAGGAGGGAGGGAAGAGGAGGGAGAAGGAGGGAGG', 'c
                successors: [{'repr': 'G', 'unitig': 'GGAGGAGGGAGAAGGAGGGAGGGAAGAGGAGGGAGAAGGAGGGAGGG', 'coverage': (
                available bases: {'G', 'A'}
                junctions: defaultdict(<class 'list'>, {'A': ['AGGAG', 'AGGAG'], 'G': ['G', 'GGAGGGGGGGAGGG', 'GGAG',
winni2k commented 5 years ago

I am still digging into this issue, but it appears to be a problem in how cortexpy traverses links in this graph. The subgraph is low complexity and contains many cycles. For now, I suggest using the --no-links argument to turn off link traversal.