Skip to content

sync: improve error message when synchronization root parent directory is missing #553

@Doow501

Description

@Doow501

Problem

When creating or resuming a sync session against an SSH endpoint whose
synchronization root parent directory does not exist, Mutagen reports an error
like:

<root>: unable to walk to transition root parent: unable to open synchronization root parent directory: no such file or directory

This message is technically correct, but it is not very actionable for users.
It took me a while to understand that the real problem was that the parent
directory of the synchronization root did not exist on the remote side.

Example

For example, with:

  • alpha: /Users/.../Workspace/MyAIProject/src
  • beta: gpu_1only:/data/kk/MyAIProject/src

if /data/kk/MyAIProject does not exist remotely, the session shows
that it is connected, but also reports the transition-root-parent error and
cannot synchronize.

Expected behavior

It would be much easier to diagnose if the error made it explicit that the
parent directory of the synchronization root is missing on the remote side.

Something along the lines of:

remote synchronization root parent directory does not exist

or even including the relevant path if available.

Possible improvement

One of these would help:

  1. Improve the error message to clearly say that the synchronization root parent
    directory is missing.
  2. Add documentation stating that the parent directory of the synchronization
    root must already exist and be accessible.

Motivation

This seems like a relatively small change, but it would make first-time setup
much easier to debug, especially for SSH-based remote development workflows.

I’d be happy to work on a PR if this direction makes sense.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions