)]}'
{
  "commit": "17c6c5d55eddbd64dc4c4d7c672b0b499c6f15a2",
  "tree": "eb723b04b40e72280b68815bbbceb015591cda6f",
  "parents": [
    "73cd3912f32ad49caa367079a324f4ce773a31dc"
  ],
  "author": {
    "name": "Arnaud Le Hors",
    "email": "lehors@apache.org",
    "time": "Fri Sep 15 17:01:42 2000 +0000"
  },
  "committer": {
    "name": "Arnaud Le Hors",
    "email": "lehors@apache.org",
    "time": "Fri Sep 15 17:01:42 2000 +0000"
  },
  "message": "This is an experiment at changing the internal DOM structure\nfrom a linked list based structure to an array based structure.\nThe array based structure comes from Crimson.\nThis structure is inherently more compact, but the gain in memory can only\nbe achieved at the expense of a performance hit. Indeed, the problem with\narrays is that you never know what size to give them in the first place.\nCrimson\u0027s implementation uses an original size of 5, and doubles this size\nevery time it reaches the limit. In addition, it provides for a method to be\ncalled when additions to the node are finished to resize the array the size\nactually needed. This is called for instance by the parser in the endElement\ncallback. But, if this leads to less memory waste it also means a bigger\nperformance hit.\nAt any rate, I was expecting quite a bit of improvement but the tests I\u0027ve\nrun so far have been very disappointing. It is much slower, and it appears\nto use more memory. I just don\u0027t understand what\u0027s going on. Nevertheless,\nI\u0027m checking this into a CVS branch so this work isn\u0027t completely lost and\ncan possibly be looked at further some other time.\n\n\ngit-svn-id: https://svn.apache.org/repos/asf/xerces/java/branches/arraybased-dom@316103 13f79535-47bb-0310-9956-ffa450edef68\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1db5f1efc01172ba32eed4b86ea0a8494d46f730",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/dom/AttrImpl.java",
      "new_id": "15bbbf94691566f43fa16676a062252a1d8c0f2f",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/dom/AttrImpl.java"
    },
    {
      "type": "modify",
      "old_id": "e5fd5c41d94911accd17cfbc4857a5297ec095d1",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/dom/ChildAndParentNode.java",
      "new_id": "306a2ae3c56ace5138da1044091ab14588b5ded4",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/dom/ChildAndParentNode.java"
    },
    {
      "type": "modify",
      "old_id": "6378d2f0dc660b3daaea9596ac46bda6abc61374",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/dom/ChildNode.java",
      "new_id": "f1857fe455693729741618a2798a0e3b41f8d381",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/dom/ChildNode.java"
    },
    {
      "type": "modify",
      "old_id": "4a6f950406ca9c03898a95607a75fff52ca93f44",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/dom/DeferredDocumentImpl.java",
      "new_id": "b6171913a071626d43b7081fef573ab4b8fa37df",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/dom/DeferredDocumentImpl.java"
    },
    {
      "type": "modify",
      "old_id": "df52762800d8f456bed35db91f5fbe67d025f2f2",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/dom/DocumentImpl.java",
      "new_id": "7a874238722595d5eacdcaa45df91bf707c495bd",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/dom/DocumentImpl.java"
    },
    {
      "type": "modify",
      "old_id": "2279eaeef3f8e9d4462b5cec703b9ae5d1b1c174",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/dom/EntityReferenceImpl.java",
      "new_id": "f4e55977d4e1b16c04b01e69ff65b72787eb5d5c",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/dom/EntityReferenceImpl.java"
    },
    {
      "type": "modify",
      "old_id": "539c7b72a3b7777c45e22e4abd90131dafa24ffe",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/dom/NodeImpl.java",
      "new_id": "b4c25ff6de2bfaff4cb9d7e7f9e934e9aac7e387",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/dom/NodeImpl.java"
    },
    {
      "type": "modify",
      "old_id": "3feb284b3ac365dd35dec8ba576871cd1d767cdf",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/dom/ParentNode.java",
      "new_id": "fae4e46460dc75baff37abfba1acacb84921a777",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/dom/ParentNode.java"
    },
    {
      "type": "modify",
      "old_id": "82e803ac9261c299e7f89ecf1075f5d6a44f2a4f",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/dom/TextImpl.java",
      "new_id": "be31eaa998dcb38106d865f3ca513b672d8eafc1",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/dom/TextImpl.java"
    },
    {
      "type": "modify",
      "old_id": "3be40f651fa59947ba566cdb8ed0bcd1c44af674",
      "old_mode": 33188,
      "old_path": "src/org/apache/xerces/parsers/DOMParser.java",
      "new_id": "d4f5c70531f058dd66b2f986edf888357c50994a",
      "new_mode": 33188,
      "new_path": "src/org/apache/xerces/parsers/DOMParser.java"
    }
  ]
}
