XX-net/XX-Net · error

update version %s fail:%r

Error message

update version %s fail:%r

What it means

Top-level catch around the whole update_version flow (download, checksum, unzip, overwrite, update_current_version, restart). Any step raising lands here: status is set to '<previous status> Fail' style and the exception logged with the target version.

Source

Thrown at code/default/launcher/update_from_github.py:412

    xlog.info("Exit old process...")
    os._exit(0)


def update_version(version, checkhash=1):
    global update_progress, update_info
    _update_info = update_info
    update_info = ""
    try:
        download_overwrite_new_version(version, checkhash)

        update_current_version(version)

        progress["update_status"] = "Restarting"
        xlog.info("update try restart xxnet")
        restart_xxnet(version)
    except Exception as e:
        xlog.warn("update version %s fail:%r", version, e)
        update_info = _update_info


def start_update_version(version, checkhash=1):
    if progress["update_status"] != "Idle" and "Fail" not in progress["update_status"]:
        return progress["update_status"]

    progress["update_status"] = "Start update"
    th = threading.Thread(target=update_version, args=(version, checkhash), name="update_version")
    th.start()
    return True


def cleanup():
    def rm_paths(path_list):
        del_fullpaths = []
        for ps in path_list:
            pt = os.path.join(top_path, ps)

View on GitHub (pinned to cfa5bc17b6)

Solutions

  1. Read the log lines immediately before this warning to find the real failing step (download/checksum/unzip/overwrite).
  2. Fix that underlying cause (network, permissions, disk space).
  3. Retry the update from the web UI after clearing the download directory.
  4. Ensure XX-Net can restart itself (not running as a restricted service).
Defensive patterns

Strategy: try-catch

Try / catch

try:
    update_version(v)
except Exception:
    log.exception('update pipeline failed for %s; status=%s', v, progress['update_status'])
    progress['update_status'] = 'Idle'  # allow retry

Prevention

When it happens

Trigger: Any of: zip download failure, checksum mismatch, unzip failure, overwrite file error, missing start.py, or restart_xxnet error, while updating to `version`.

Common situations: Same root causes as errors 122-127; the log line preceding this one identifies the actual failing step.

Related errors


AI-assisted analysis of XX-net/XX-Net@cfa5bc17b6 (2026-08-27). Data as JSON: /api/errors/25a564acb29510e2. Report an issue: GitHub.