clash-verge-rev/clash-verge-rev · error · anyhow::Error

{error:#}; configuration rollback failed: {rollback_error:#}

Error message

{error:#}; configuration rollback failed: {rollback_error:#}

What it means

Error "{error:#}; configuration rollback failed: {rollback_error:#}" thrown in clash-verge-rev/clash-verge-rev.

Source

Thrown at src-tauri/src/config/port.rs:141

            candidate_verge
                .save_file()
                .await
                .context("failed to persist selected mixed proxy port")?;
            Self::generate_file(ConfigType::Run)
                .await
                .context("failed to persist Runtime Configuration")?;
            Ok::<(), anyhow::Error>(())
        }
        .await;

        // Files are not part of the transaction, so a failed write is restored explicitly.
        // The drafts are rolled back first: restoring reads the committed configuration, and
        // must not see a candidate that is being abandoned.
        if let Err(error) = persist_result {
            transaction.rollback();
            return match restore_files(&snapshots).await {
                Ok(()) => Err(error),
                Err(rollback_error) => Err(anyhow!("{error:#}; configuration rollback failed: {rollback_error:#}")),
            };
        }

        transaction.commit();
        record_fallback(old_port, new_port);
        Handle::refresh_clash();
        Handle::refresh_verge();
        logging!(
            warn,
            Type::Config,
            "Mixed proxy port {} is externally occupied; switched to {} and persisted all configuration layers",
            old_port,
            new_port
        );
        Ok(())
    }

    pub(crate) fn block_startup_core(error: &anyhow::Error) {

View on GitHub (pinned to 5cad0f2799)

When it happens

Trigger: Thrown at src-tauri/src/config/port.rs:141 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of clash-verge-rev/clash-verge-rev@5cad0f2799 (2026-08-12). Data as JSON: /api/errors/4164180bb4801577. Report an issue: GitHub.