Skip to content

segfault when using a fastmap to store data read using arrow #602

Open
@dgkf

Description

@dgkf

I've been trying to chase down this bug for a while, and although I don't have a solution I've tried my best to pin down a reproducible example in a reprex over in dgkf/reprex-covr-segfault.

In short, a package that uses a pattern such as

function(f) {
  m <- fastmap::fastmap()  
  m$set("data", arrow::read_parquet(f))
}

will segfault when trying to calculate code coverage.

At it's core, it usually segfaults any time a package tries to store a arrow data.frame inside a fastmap stored somewhere within the package namespace.

I say usually because coverage will run to completion on the current CRAN release of covr if there is an if statement (and maybe others?) somewhere in the package code. I was only able to reliably test this by putting an if (TRUE) {} statement in the .onLoad function, but the behavior was rather sporadic and I think it's also affected by the presence/absence of S3 method registration. The development version of CRAN fails regardless.

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