New default/preferred dbm backend

I voted to switch to sqlite3 since I like it. It’s fast, reliable, portable, and shipped with Python whereas other backend are only available on some platforms.

I have some questions.

What do you mean by pretty much? As far as I know, it’s always available on all platforms, no? The sqlite3 documentation says nothing about “Availability” (only about specific features).

The fallback is the super slow dumbdbm. Not the sqlite3 is part of the standard build, we can do better.

I’m curious: is there a benchmark showing how slow “dumbdbm” is, and how fast sqlite3 is? :slight_smile:

The future is now. Let’s provide a fast, stable, robust, always available alternative.

Has dumbdbm known issues of losing data, that sqlite3 doesn’t have?

I heard that the “dbm” module has small limits for the maximum key and value size. What are these limits for the different backends, especially dumb and sqlite3?

1 Like