Honker

Dev tools

sqlite messaging library

SHOW HN2026

Legend

Honker

Postgres NOTIFY/LISTEN Semantics for SQLite

github.com

#sqlite#notify listen#job queue#pubsub#wal

327points
84comments
#119of 4,366 in 2026
Top 3%of 2026 by points

How HN took it

CuriousMostly questions and neutral comments

12 positive, 20 neutral or asking, 0 mixed, 5 critical, out of 37 comments about the project. Thread score +0.23.

Idea: 8 for, 2 againstPerformance: 1 for, 3 againstExecution: 1 for, 0 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Clever use of WAL file polling for cross-language notifications

    From 2 comments
    • Is the main use case for this for languages that only have access to process based concurrency? Struggling to see why you would otherwise need this in java/go/clojure/C# your…
      andersmurphy on HN
    • Interesting approach—using WAL file stat instead of polling queries is clever. Curious how it behaves under high write contention?
      davisphan04 on HN
  • Atomic commit of messages with business writes

    From 1 comment
    • atomic commit with the business data is the selling point over separate IPC. external message passing always has the 'notification sent but transaction rolled back' problem and…
      tuo-lei on HN

Objections

  • stat polling is inefficient and may hurt CPU and battery

    From 2 comments
    • The 1 ms pragma data version polling is a nice way to bypass the lack of a server process. didyou measure the impact on cpu or battery life for applications running on lower…
      nawi on HN
    • kqueue/FSEvents is tempting here, but Darwin drops same-process notifications. If you've got a publisher and listener in the same process the listener just never fires. Nasty…
      ArielTM on HN
  • Darwin drops same-process notifications so filesystem watchers fail

    From 1 comment
    • kqueue/FSEvents is tempting here, but Darwin drops same-process notifications. If you've got a publisher and listener in the same process the listener just never fires. Nasty…
      ArielTM on HN

Requests

  • Handle WAL checkpoint and truncation correctly

    From 2 comments
    • atomic commit with the business data is the selling point over separate IPC. external message passing always has the 'notification sent but transaction rolled back' problem and…
      tuo-lei on HN
    • kqueue/FSEvents is tempting here, but Darwin drops same-process notifications. If you've got a publisher and listener in the same process the listener just never fires. Nasty…
      ArielTM on HN
  • Support SQLAlchemy and ORM integration

    From 1 comment
    • If I'm using SQLAlchemy, can this integrate? It seems to want to make the db connection itself.
      robertlagrant on HN

Questions

  • How does it behave under high write contention or many listeners

    From 2 comments
    • Interesting approach—using WAL file stat instead of polling queries is clever. Curious how it behaves under high write contention?
      davisphan04 on HN
    • This is the kind of skill-level tool I wish existed earlier — I hit the exact pain point running a daily-chronicle site off SQLite + a static deploy a week ago. Ended up with a…
      agentbonnybb on HN
  • Is stat-based polling better than inotify or pragma data_version

    From 2 comments
    • Couldn't you use inotify (and/or some cross-platform wrapper) to watch for WAL changes without polling?
      Retr0id on HN
    • Oh cool, so using io uring plus pragma data version would actually beat stat on Linux holistically speaking? The stat choice was all about cross platform consistency over inotify…
      russellthehippo on HN

Alternatives named

  • Postgres LISTEN/NOTIFY

    From 1 comment
    • Shameless plug: In the upcoming release of PostgreSQL 19, LISTEN/NOTIFY has been optimized to scale much better with selective signaling, i.e. when lots of backends are listening…
      JoelJacobson on HN
  • pg-boss, Oban, Celery, Sidekiq (named as inspiration)

    From 1 comment
    • Hey HN, I built this. Honker adds cross-process NOTIFY/LISTEN to SQLite. You get push-style event delivery with single-digit millisecond latency without a damon/broker, using…
      russellthehippo on HN
  • AWS SQS

    From 1 comment
    • Awesome. I’m currently using AWS SQS which invokes lambda functions for asynchronous tasks like email sends, but Honker seems like a great local replacement. Any conflicts or…
      nodesocket on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/47874647)