Skip to content

Go-libsql app get killed over concurrent load #88

@bilalabdelkadir

Description

@bilalabdelkadir

Go-libSQL app gets OOM killed under concurrent load

I tried connecting to libSQL from a Go app using multiple concurrent clients. On my Linux VPS, the process gets killed by the OOM killer.

  • Exit code: 137
  • RSS: 6.3 GB
  • Virtual memory: 35 GB

How to reproduce

  1. Create a new Go project and import go-libsql
  2. Open a database connection
  3. Spin up 6+ (increase the number upto 10 if it didn't fail) goroutines each running queries concurrently
  4. Monitor memory with ps aux | grep <process> or htop
  5. Observe memory spike and OOM killing it

Environment

Question

Is this expected behavior for concurrent connections? My use case is a Postgres wire protocol proxy where many clients share one libSQL database ,which may be outside the typical single-app embedded use case.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions