Skip to content

Node SDK broken on linux/arm64 in v0.16.4+ #43

@jacobwgillespie

Description

@jacobwgillespie

We hit a regression in @statsig/statsig-node-core after upgrading from 0.16.3 to 0.16.4. All versions newer than v0.16.4 are affected.

On linux/arm64, the published 0.16.4 package fails at runtime with transport-level errors during
initialization with errors like this, for requests to download_config_specs, get_id_lists, sdk_exception, and log_event:

RetriesExhausted: https://api.statsigcdn.com/v2/download_config_specs/... status(None) attempts(1) error sending
request for url (...)

Findings

We could reproduce this failure in both Debian-based container images (e.g. node:24-bullseye-slim) and non-Debian container images (e.g. public.ecr.aws/lambda/nodejs:24).

The regression appears to be caused by this commit: 39114ac, but only when built inside the CentOS7/manylinux2014 build environment that produced the native addon for Node.js in CI for aarch64.

Two scenarios we tried did reproduce the issue:

  1. The v0.16.4 package published on npm fails to make outbound requests
  2. Rebuilding the v0.16.4 package from source inside the same CentOS7/manylinux2014 arm64 image used in CI also fails to make outbound requests

And the modifying the release profile config, removing the --use-napi-cross flag, or changing the build container image all fixed the issue:

  1. Building the v0.16.4 source but reverting 39114ac fixed the issue
  2. Building the v0.16.4 source but removing the --use-napi-cross flag fixed the issue
  3. Building the v0.16.4 source but building in a different container image (e.g. public.ecr.aws/lambda/nodejs:24) fixed the issue

This may have something to do with the version of GCC (v4.8.5) inside the CentOS7/manylinux2014 image being older.

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