Message384625
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? |
|
Date |
User |
Action |
Args |
2021-01-08 00:39:03 | erlendaasland | set | recipients:
+ erlendaasland, berker.peksag, serhiy.storchaka |
2021-01-08 00:39:03 | erlendaasland | set | messageid: <1610066343.94.0.466682345605.issue42862@roundup.psfhosted.org> |
2021-01-08 00:39:03 | erlendaasland | link | issue42862 messages |
2021-01-08 00:39:03 | erlendaasland | create | |
|