Description
DocumentNodeStore should provide same NodeState for given (path, revision) whenever a NodeState is obtained from it. This fails in some cases if the Node cache in DocumentNodeStore gets overflown and then the NodeState returned differs. This causes issues like
- Spurious Commits see - Some commit would fails with conflicts in paths which were not modified in that commit
- Diff logic would traverse those paths which are not related to changes done in that commit
More details would be provided in comments below