view rust/hgcli/build.rs @ 49552:1994842955db stable

upgrade: no longer keep all revlogs in memory at any point Keeping all object open is unsustainable, so we will open them on demand. This mean opening them multiple times, but this is a lesser evil. Each revlog consume a small amount of memory (index content, associated nodemap, etc). While there are few "big" revlog, the sheer amount of small filelog can become a significant issue memory wise, consuming multiple GB of memory. If you combines this extra usage with the use of multiprocessing, this usage can quickly get out of control. This can effectively block the upgrade of larger repository. This changeset fixes this issue.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Fri, 04 Nov 2022 16:15:12 -0400
parents 426294d06ddc
children
line wrap: on
line source

// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at https://mozilla.org/MPL/2.0/.

/*! Build script to integrate PyOxidizer. */

fn main() {
    if let Ok(config_rs) =
        std::env::var("DEP_PYTHONXY_DEFAULT_PYTHON_CONFIG_RS")
    {
        println!(
            "cargo:rustc-env=PYOXIDIZER_DEFAULT_PYTHON_CONFIG_RS={}",
            config_rs
        );
    } else {
        panic!("unable to find build artifacts generated by pyembed crate");
    }
}