errors(3)

πŸ“¦
version 0.9.35 Β· 4 versions
, in ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– errors(3) β€” Return Codes πŸ’–

okay bestie, so this is errors(3), a manual page from the Library Functions Manual section, and it's basically the ✨vibe check✨ for every return code LMDB can hand you. Every macro, every number, every little "why did this fail" β€” all here. no cap. 🫢


🌸 NAME 🌸

errors β€” Return Codes. that's it, that's the whole job. she returns codes. iconic behavior honestly. πŸ‘‘


✨ SYNOPSIS ✨

πŸŽ€ Macros πŸŽ€

here's the whole squad, literally every one of them, copied exactly because numbers are sacred and I do NOT play with numbers:

#define MDB_SUCCESS   0
#define MDB_KEYEXIST   (-30799)
#define MDB_NOTFOUND   (-30798)
#define MDB_PAGE_NOTFOUND   (-30797)
#define MDB_CORRUPTED   (-30796)
#define MDB_PANIC   (-30795)
#define MDB_VERSION_MISMATCH   (-30794)
#define MDB_INVALID   (-30793)
#define MDB_MAP_FULL   (-30792)
#define MDB_DBS_FULL   (-30791)
#define MDB_READERS_FULL   (-30790)
#define MDB_TLS_FULL   (-30789)
#define MDB_TXN_FULL   (-30788)
#define MDB_CURSOR_FULL   (-30787)
#define MDB_PAGE_FULL   (-30786)
#define MDB_MAP_RESIZED   (-30785)
#define MDB_INCOMPATIBLE   (-30784)
#define MDB_BAD_RSLOT   (-30783)
#define MDB_BAD_TXN   (-30782)
#define MDB_BAD_VALSIZE   (-30781)
#define MDB_BAD_DBI   (-30780)
#define MDB_LAST_ERRCODE   MDB_BAD_DBI

πŸ¦‹ Detailed Description πŸ¦‹

BerkeleyDB uses -30800 to -30999, we'll go under them

like... she literally just said "I'm going under their range, respectfully" and did it. main character energy fr. πŸ’…


🌈 Macro Definition Documentation 🌈

⭐ #define MDB_SUCCESS 0

Successful result. the good ending. the slay ending. everything worked and you can go touch grass. 🌸

⭐ #define MDB_KEYEXIST (-30799)

key/data pair already exists. it's already there bestie, you can't sit with us twice. πŸ’€

⭐ #define MDB_NOTFOUND (-30798)

key/data pair not found (EOF). she's not here. the key ghosted you. πŸ‘»

⭐ #define MDB_PAGE_NOTFOUND (-30797)

Requested page not found - this usually indicates corruption. okay so this one is lowkey scary β€” it usually means your data is corrupted. not a cute look. 😭

⭐ #define MDB_CORRUPTED (-30796)

Located page was wrong type. the page showed up to the party dressed completely wrong. wrong type, wrong vibe. πŸ™ˆ

⭐ #define MDB_PANIC (-30795)

Update of meta page failed or environment had fatal error. FATAL. this is the screaming-in-the-group-chat error. do not ignore her. 🚨

⭐ #define MDB_VERSION_MISMATCH (-30794)

Environment version mismatch. you two are not on the same version and honestly it's giving incompatible. πŸ’”

⭐ #define MDB_INVALID (-30793)

File is not a valid LMDB file. bestie that's not an LMDB file, that's just... a file. 🫠

⭐ #define MDB_MAP_FULL (-30792)

Environment mapsize reached. you ran out of room. the map said "no more". πŸ—ΊοΈ

⭐ #define MDB_DBS_FULL (-30791)

Environment maxdbs reached. too many databases, the limit said periodt. πŸ›‘

⭐ #define MDB_READERS_FULL (-30790)

Environment maxreaders reached. every reader seat is taken, standing room only. 😀

⭐ #define MDB_TLS_FULL (-30789)

Too many TLS keys in use - Windows only. (Windows only, so if you're on Unix and see this... girl what.) πŸͺŸ

⭐ #define MDB_TXN_FULL (-30788)

Txn has too many dirty pages. she's carrying too much, she needs to commit and let it go. 🧳

⭐ #define MDB_CURSOR_FULL (-30787)

Cursor stack too deep - internal error. stack got way too deep, this is an internal error, not your fault bestie. πŸ•³οΈ

⭐ #define MDB_PAGE_FULL (-30786)

Page has not enough space - internal error. the page is full and it IS an internal error. nothing you did. 🫢

⭐ #define MDB_MAP_RESIZED (-30785)

Database contents grew beyond environment mapsize. she GREW. she ate. and now the mapsize can't hold her. πŸ”₯

⭐ #define MDB_INCOMPATIBLE (-30784)

Operation and DB incompatible, or DB type changed. This can mean:

  • The operation expects an MDB_DUPSORT / MDB_DUPFIXED database.
  • Opening a named DB when the unnamed DB has MDB_DUPSORT / MDB_INTEGERKEY.
  • Accessing a data record as a database, or vice versa.
  • The database was dropped and recreated with different flags.

four whole reasons. it's giving "we need to talk". πŸ’”

⭐ #define MDB_BAD_RSLOT (-30783)

Invalid reuse of reader locktable slot. you tried to reuse a slot you were not allowed to reuse. not your slot, not your problem. πŸ™…

⭐ #define MDB_BAD_TXN (-30782)

Transaction must abort, has a child, or is invalid. this transaction has to abort β€” she has a child, or she's just invalid. messy either way. 😡

⭐ #define MDB_BAD_VALSIZE (-30781)

Unsupported size of key/DB name/data, or wrong DUPFIXED size. the size is wrong. wrong for the key, the DB name, the data, or the DUPFIXED size. sizes matter. πŸ“

⭐ #define MDB_BAD_DBI (-30780)

The specified DBI was changed unexpectedly. it changed on you with zero warning. that's not a plot twist, that's a bug. 😭

⭐ #define MDB_LAST_ERRCODE MDB_BAD_DBI

The last defined error code. she's the final boss of error codes. nothing comes after her. periodt. πŸ‘‘


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for LMDB from the source code.


🫢 reminder bestie: don't hardcode vibes, hardcode the actual macro names. the numbers are -30799 down to -30780 and 0, and they never ever change.

okay that's the whole page!! and a lil cute sign-off: this came from the LMDB manual, errors(3) β€” and it's signed off on the errors(3) page. mwah. πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from