• Kirill Smelkov's avatar
    go/zodb: DB: handle invalidations · 918455e7
    Kirill Smelkov authored
    Implement invalidation handling to teach DB to reuse Connections from
    connection pool: after connection is returned to the pool on transaction
    completion, we can use this connection for next DB.Open(at) request, by
    seeing which objects we changed in conn.at..at range and invalidating
    those objects in connection live cache.
    
    To know which objects were changed, DB adds watch on its storage and
    maintains some history tail (using ΔTail - see previous commit).
    
    Finally add test for both DB and Connection, and also for Persistent,
    LiveCache, ... - as all those application-level components are tightly
    inter-related.
    918455e7
db.go 16.1 KB