spyglass icon indicating copy to clipboard operation
spyglass copied to clipboard

Replication tool

Open CBroz1 opened this issue 6 months ago • 0 comments

Draft of replication tool.

TODOs:

  • [ ] Traverse aliases
  • [ ] Clean up interface
Current usage
from spyglass.common.common_session import Session
from spyglass.linearization.merge import LinearizedPositionOutput as LO
from spyglass.utils.dj_graph import ImportedGraph, RestrGraph

target_analysis = RestrGraph(
    seed_table=LO(),
    leaves={LO.full_table_name: "merge_id=X'b792accc1a26622e4d28675c7bfb5ed5'"},
    direction="up",
    verbose=True,
    cascade=True,
)


new_restr = {"nwb_file_name": "minirec20230621_.nwb"}
replicated = ImportedGraph(
    target=target_analysis,
    new_restr=new_restr,
    parent=Session(),
    child=LO(),
    direction="down",
    banned_tables=list(target_analysis.no_visit),
    verbose=True,
)
replicated.cascade(restriction=new_restr, direction="down", null_on_fail=False)
replicated.cascade_target()

CBroz1 avatar Aug 06 '24 21:08 CBroz1