¿Cómo hacer una correcta gestión de la memoria con ZODB?

Leí varios tutoriales de ZODB, pero aquí hay una cosa que todavía no entiendo: ¿Cómo libera la memoria que ya está serializada (y comprometida) con el (por ejemplo) almacenamiento de archivos?

Más específicamente, quiero que el siguiente código deje de comerme toda mi memoria:

for i in xrange(bignumber):
    iobtree[i]=Bigobject() # Bigobject is about 1Mb
    if(i%10==0): 
        transaction.commit() # or savepoint(True)
transaction.commit()

¿Cómo se puede lograr esto? ¿Es posible liberar referencias almacenadas por iobtree y reemplazarlas por 'referencias débiles' que serían accesibles a pedido?

Respuestas a la pregunta(1)

Su respuesta a la pregunta