PumpkinDB
discontinuedby Yurii Rashkovskii and contributors · since 2017 · also known as Pumpkin DB
Immutable ordered key-value engine in Rust, scripted with a Forth-like language; abandoned in 2017.
discontinued. No commits since August 2017 (v0.2.0, pre-beta); the repository is unmaintained. For event sourcing consider KurrentDB, or LMDB/RocksDB for an embedded store.
Overview
PumpkinDB is an experimental database engine in which a key, once set, can never be overwritten, so every change is recorded as a new key and history is never lost. Clients send small programs in PumpkinScript, a stack-based Forth-inspired language, which run next to the data over an LMDB-backed ordered store with ACID transactions; it can run as a server or be embedded in Rust programs. The project targeted event sourcing and 'lazy event sourcing' designs where domain interpretation is deferred to query time. Development stopped in August 2017 at version 0.2.0, which the README itself called between alpha and beta.
Strengths & trade-offs
Strengths
- +Write-once keys make the full history of every value queryable
- +Programs execute next to the data, avoiding chatty client round trips
- +Embeddable in Rust or runnable as a standalone server
- +Clean reference design for immutable, event-sourced storage
Trade-offs
- −Abandoned before reaching beta; required Rust nightly at the time
- −Low-level primitives only: no query planner, secondary-index DSL or SQL
- −Only Rust and an unfinished Java client
Great for
- +Prototyping event-sourced storage ideas
- +Learning how an immutable key-value engine can be built on LMDB
Think twice for
- −Production systems
- −Teams wanting SQL or a supported event store
Capabilities
Native or official first-party support · 3 of 25 tracked
Scale & consistency
- Comfortable data size
- Small · ≤ 100 GB
- Horizontal scaling
- None
- Multi-region
- No
- Transactions
- Full ACID
- Consistency
- Strong
- Schema
- Schemaless
- Architecture
- Single node, Client server, Embedded
- Query languages
- PumpkinScript
Deployment
Ecosystem
Alternatives to PumpkinDB
A purpose-built event store for event sourcing, with streams, subscriptions and projections.
pumpkindb vs kurrentdb →Tiny memory-mapped B+tree with ACID transactions and lock-free readers; reached 1.0 in 2026.
pumpkindb vs lmdb →Meta's embeddable LSM-tree key-value engine, the storage layer under dozens of databases.
pumpkindb vs rocksdb →Bitemporal SQL database on object storage that keeps every version of every row.
pumpkindb vs xtdb →Apache ActiveMQ Classic's built-in journal-plus-B-tree message store; a persistence engine, not a general DB.
pumpkindb vs kahadb →Serverless peer-to-peer database on IPFS and libp2p using Merkle-CRDT logs.
pumpkindb vs orbitdb →PumpkinDB FAQ
What is PumpkinDB?
PumpkinDB is a key-value database by Yurii Rashkovskii and contributors, first released in 2017. PumpkinDB is an experimental database engine in which a key, once set, can never be overwritten, so every change is recorded as a new key and history is never lost. Clients send small programs in PumpkinScript, a stack-based Forth-inspired language, which run next to the data over an LMDB-backed ordered store with ACID transactions; it can run as a server or be embedded in Rust programs. The project targeted event sourcing and 'lazy event sourcing' designs where domain interpretation is deferred to query time. Development stopped in August 2017 at version 0.2.0, which the README itself called between alpha and beta.
Is PumpkinDB open source?
Yes. PumpkinDB is open source. License: Mozilla Public License 2.0.
Does PumpkinDB support ACID transactions?
Yes. PumpkinDB supports full ACID transactions, with strong consistency.
Does PumpkinDB scale horizontally?
PumpkinDB does not scale horizontally; it runs on a single node, so you scale it up rather than out. It is comfortable at small scale (≤ 100 GB).
How can I run PumpkinDB?
You can self-host it and embed it in your application.
What is PumpkinDB best for?
PumpkinDB is a strong fit for prototyping event-sourced storage ideas and learning how an immutable key-value engine can be built on LMDB. Think twice for production systems.
What are the best alternatives to PumpkinDB?
Common alternatives to PumpkinDB include KurrentDB (EventStoreDB), LMDB, RocksDB, XTDB and KahaDB. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.
Is PumpkinDB still maintained?
PumpkinDB is discontinued. No commits since August 2017 (v0.2.0, pre-beta); the repository is unmaintained. For event sourcing consider KurrentDB, or LMDB/RocksDB for an embedded store.
How popular is PumpkinDB?
PumpkinDB ranks #483 of 844 databases on the WhichDB Score (2.3/100), and #76 among key-value databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.