Skip to content

Memory leak #1

@ElianHugh

Description

@ElianHugh

I'm running into a memory leak (using up 25gb+ of ram) when using vscode, but it's a little unclear how to replicate it. The type check results are in the image, and I've included the code in the details tab. Nothing in the output logs.

image

The code:

Details

type object_struct: object {
    obj_class: char,
    obj_type: char,
    obj_length: char,
    obj_str: char,
    obj_size: char,
    obj_dollar_names: char,
    obj_at_names: char,
    obj_dim: char,
    obj_address: char,
    obj_slots: char
}

func capture_variable(x: char, var_type: char, env: environment): object_struct {
    stopifnot(!missing(x), !missing(var_type), !missing(env))

    const var_value: any = env[[x]]

    if (var_type == "default") {
        return object_struct(
                obj_class = class(var_value),
                obj_type = typeof(var_value),
                obj_length = length(var_value),
                obj_str = trimws(capture.output(str(var_value))),
                obj_size = unclass(object.size(var_value)),
                obj_dollar_names = .DollarNames(var_value),
                obj_at_names = .AtNames(var_value),
                obj_dim = dim(var_value),
                obj_address = rlang::obj_address(var_value),
                obj_slots = slotNames(var_value)
        )
    }

    if (var_type == "active") {
        return object_struct(obj_class = "active")
    }

    if (var_type == "lazy") {
        return object_struct(obj_class = "lazy")
    }

}

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