New submission from Erlend Egeberg Aasland <erlend.aasl...@innova.no>:
Pro: less code, less complexity, improved maintainability Con: minor performance hit PoC here: https://github.com/erlend-aasland/cpython/commits/sqlite-cache $ ./python.exe >>> import sqlite3 >>> con = sqlite3.connect(":memory:") >>> con.execute("select * from sqlite_master") >>> con.execute("select * from sqlite_master") >>> c = con.cache() >>> c.cache_info() CacheInfo(hits=1, misses=1, maxsize=128, currsize=1) The test suite runs approx. 10-20 ms slower with this change. Using _functools._lru_cache_wrapper iso. functools.lru_cache almost removes this performance regression. Berker, is it worth pursuing? ---------- components: Library (Lib) messages: 384625 nosy: berker.peksag, erlendaasland, serhiy.storchaka priority: normal severity: normal status: open title: Use functools.lru_cache iso. _sqlite.Cache in sqlite3 module type: enhancement versions: Python 3.10 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue42862> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com