Skip to content

Bug: SurrealDB 3 not working on Amazon Linux 2023 (Vercel) #564

Description

@cscetbon

Describe the bug

I've upgraded to SurrealDB 3 but now it doesn't work anymore on Vercel

...
[cause]: [
    Error: /var/task/node_modules/@surrealdb/node/dist/surrealdb-node.linux-x64-gnu.node: undefined symbol: __isoc23_strtol
        at Object..node (node:internal/modules/cjs/loader:1865:18)
        at Module.load (node:internal/modules/cjs/loader:1441:32)
        ...
        code: 'ERR_DLOPEN_FAILED'
    },
    Error: Cannot find module '@surrealdb/node-linux-x64-gnu'

the main issue is undefined symbol: __isoc23_strtol. I'm using the embedded mode on node in a Nuxt app.

Steps to reproduce

$ docker run --rm -it --platform linux/amd64 amazonlinux:2023.2.20231011.0 bash

dnf -y update
dnf -y install --allowerasing curl
curl -fsSL https://rpm.nodesource.com/setup_22.x | bash - && dnf -y install --allowerasing nodejs
mkdir /tmp/test
cd /tmp/test
cat > package.json <<EOF
{"private":true,"dependencies":{"@surrealdb/node":"3.0.1"}}
EOF
npm install --no-audit --no-fund
node -e "require('./node_modules/@surrealdb/node/dist/surrealdb-node.linux-x64-gnu.node')"

Then we can see

...
Error: /tmp/test/node_modules/@surrealdb/node/dist/surrealdb-node.linux-x64-gnu.node: undefined symbol: __isoc23_strtol
...

Expected behaviour

It shouldn't fail

SurrealDB version

3.0.1

JavaScript SDK version

2.0.0

Contact Details

No response

Is there an existing issue for this?

  • I have searched the existing issues

Code of Conduct (repository /surrealdb.js)

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions