For the majority of use cases I think that the immediate ancestor is the only one needed ... so you might be onto something here...
Dale ----- Original Message ----- | From: "Camillo Bruni" <[email protected]> | To: "Pharo Development" <[email protected]> | Sent: Thursday, March 1, 2012 1:53:48 PM | Subject: [Pharo-project] Monticello Version Info | | I am still having a look at the Monticello implementation. | Now coming from the git world, this seems very weird: | | Why does each Monticello version store the complete ancestor history? | | ------------------------------------------------------------------------ | | Wouldn't it simply be enough to keep pointers to the immediate | ancestors, and then lazily load and cache them? | | Where is the complete ancestry needed, besides diffing/merging? | | ------------------------------------------------------------------------ | | The current setup implies that something like | | MCCacheRepository default loadVersionFromFileNamed: | 'SLICE-Issue-5416--Improve-MC-version-loading-CamilloBruni.1.mcz' | | takes around 1.5 seconds to complete, whereas this could be done in a | fragment of a second for most cases... |
