Skip to content

MDB_READERS_FULL #6

Description

@sdmcallister

I have the following code which attempts to use limdb with mummy:

import mummy, mummy/routers

import limdb
let db = initDatabase("myDirectory")

proc indexHandler(request: Request) =
  var headers: HttpHeaders
  headers["Content-Type"] = "text/plain"
  var f = db["foo"]
  # db.close()
  request.respond(200, headers, "Hello, World! " & f)

var router: Router
router.get("/", indexHandler)

let server = newServer(router)
echo "Serving on http://localhost:8080"
server.serve(Port(8080))

When I spam the refresh 50+ times eventually I get:

Serving on http://localhost:8080
Handler exception: LimDB initTransaction failed: MDB_READERS_FULL: Environment maxreaders limit reached C:\Users\.nimble\pkgs2\mummy-0.4.5-cb7f70cd4d6fd3a563e00e664cfbd8cbd3c39b79\mummy.nim(519) workerProc
C:\Users\.nimble\pkgs2\mummy-0.4.5-cb7f70cd4d6fd3a563e00e664cfbd8cbd3c39b79\mummy.nim(450) runTask
C:\Users\.nimble\pkgs2\mummy-0.4.5-cb7f70cd4d6fd3a563e00e664cfbd8cbd3c39b79\mummy\routers.nim(271) :anonymous
C:\Users\source\nim\mummy_tests\main.nim(9) indexHandler
C:\Users\.nimble\pkgs2\limdb-0.3.0-37ce8d2ae2f7bcea945b3eb7bd6a149891ed7390\limdb.nim(241) []
C:\Users\.nimble\pkgs2\limdb-0.3.0-37ce8d2ae2f7bcea945b3eb7bd6a149891ed7390\limdb.nim(122) initTransaction
[[reraised from:
C:\Users\.nimble\pkgs2\mummy-0.4.5-cb7f70cd4d6fd3a563e00e664cfbd8cbd3c39b79\mummy.nim(519) workerProc
C:\Users\.nimble\pkgs2\mummy-0.4.5-cb7f70cd4d6fd3a563e00e664cfbd8cbd3c39b79\mummy.nim(450) runTask
C:\Users\.nimble\pkgs2\mummy-0.4.5-cb7f70cd4d6fd3a563e00e664cfbd8cbd3c39b79\mummy\routers.nim(286) :anonymous
]]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions