)]}'
{
  "commit": "b1dac0a73baa3f7e95341af49b97fa37cf8c0711",
  "tree": "9d3bfc2df7f807470d8e9d1ea26440dfc15af60c",
  "parents": [
    "b80f07dd5e7d4323d729f2cbdfcd258742977252"
  ],
  "author": {
    "name": "Shawn O. Pearce",
    "email": "sop@google.com",
    "time": "Thu Dec 31 10:26:26 2009 -0800"
  },
  "committer": {
    "name": "Shawn O. Pearce",
    "email": "sop@google.com",
    "time": "Wed Jan 13 14:40:27 2010 -0800"
  },
  "message": "Remove @SecondaryKey from AccountGroup\n\nLike our prior changes, we need to drop these @SecondaryKey\nannotations for databases which don\u0027t support multiple keys\non a single entity.\n\nFor the external name attribute we simply change it to honor\na list of groups which match the external name.  This allows\nan administrator to create multiple groups in Gerrit that use\nthe same underlying LDAP group for membership.  Its crazy to\ndo, but there isn\u0027t really any good reason to not allow it.\n\nFor the internal name attribute we create a new entity that\ncan be used to enforce uniqueness on the name attribute, and\nconnects the name to the group.\n\nChange-Id: I933c38a6a4e2c3ed3d7d5a66cab04c2e7175e24f\nSigned-off-by: Shawn O. Pearce \u003csop@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3f7c7a7c004c1d7ad5eb3fe95270ba3061c0a5d9",
      "old_mode": 33188,
      "old_path": "gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/account/AccountModule.java",
      "new_id": "13dd9b4389aa9b041770a9733f2849d33975ddc8",
      "new_mode": 33188,
      "new_path": "gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/account/AccountModule.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1525b27f1b422ead9b739a8c7ee4bb5be7678add",
      "new_mode": 33188,
      "new_path": "gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/account/CreateGroup.java"
    },
    {
      "type": "modify",
      "old_id": "fa072c11562603803255d159b29f75167a87c4e3",
      "old_mode": 33188,
      "old_path": "gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/account/GroupAdminServiceImpl.java",
      "new_id": "e5449eadf251a640747f8c9043c29be5066cd10e",
      "new_mode": 33188,
      "new_path": "gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/account/GroupAdminServiceImpl.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "63b5bceb108c14cd79303e20286cd785020e39e5",
      "new_mode": 33188,
      "new_path": "gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/account/RenameGroup.java"
    },
    {
      "type": "modify",
      "old_id": "362eb11197f73463b94dbfc8c1eff2086f7e3b6e",
      "old_mode": 33188,
      "old_path": "gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/project/AddProjectRight.java",
      "new_id": "b12c92f489b04c315ff941d23fe9e042bf5a387c",
      "new_mode": 33188,
      "new_path": "gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/project/AddProjectRight.java"
    },
    {
      "type": "modify",
      "old_id": "231ff0ab3b1dd52e237b53cad4b7d4ebe142f866",
      "old_mode": 33188,
      "old_path": "gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/AccountGroupAccess.java",
      "new_id": "14a28222219bddebacca8657692a15ef3dc48db9",
      "new_mode": 33188,
      "new_path": "gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/AccountGroupAccess.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8c7ecaef8a8bc9edab2ef47b24250fb6d3306215",
      "new_mode": 33188,
      "new_path": "gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/AccountGroupName.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f49df45cb07aa4e1e67609e8969d8d69bb399008",
      "new_mode": 33188,
      "new_path": "gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/AccountGroupNameAccess.java"
    },
    {
      "type": "modify",
      "old_id": "35c30d93654e4b0f9a385a78c2d2101c0ab43c7c",
      "old_mode": 33188,
      "old_path": "gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/ReviewDb.java",
      "new_id": "168112e4fe745bb737de9017941212d049f7b37b",
      "new_mode": 33188,
      "new_path": "gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/ReviewDb.java"
    },
    {
      "type": "modify",
      "old_id": "cfdb23681ebedab3b6dc63cfd11783dc894719d8",
      "old_mode": 33188,
      "old_path": "gerrit-reviewdb/src/main/resources/com/google/gerrit/reviewdb/index_generic.sql",
      "new_id": "ea6b9d9c8061f56f6ae971657e165ad380893f4d",
      "new_mode": 33188,
      "new_path": "gerrit-reviewdb/src/main/resources/com/google/gerrit/reviewdb/index_generic.sql"
    },
    {
      "type": "modify",
      "old_id": "455d96018dc5b49e267c95aadc57c185585a0181",
      "old_mode": 33188,
      "old_path": "gerrit-reviewdb/src/main/resources/com/google/gerrit/reviewdb/index_postgres.sql",
      "new_id": "a74e2f725c00f825b5dc6daf688ca6c5ce513a62",
      "new_mode": 33188,
      "new_path": "gerrit-reviewdb/src/main/resources/com/google/gerrit/reviewdb/index_postgres.sql"
    },
    {
      "type": "modify",
      "old_id": "880ae2cc49c0a2d8589c2fd43e9e694295be8a9c",
      "old_mode": 33188,
      "old_path": "gerrit-server/src/main/java/com/google/gerrit/server/account/GroupCache.java",
      "new_id": "978d9c2a90eda2bccf06f3be478f47f6079135c5",
      "new_mode": 33188,
      "new_path": "gerrit-server/src/main/java/com/google/gerrit/server/account/GroupCache.java"
    },
    {
      "type": "modify",
      "old_id": "74e32184537a44494b0fcbefc6526ddc42c6f6c5",
      "old_mode": 33188,
      "old_path": "gerrit-server/src/main/java/com/google/gerrit/server/account/GroupCacheImpl.java",
      "new_id": "9fedd806a2577e382e5cbc78a123dd7f4e55401b",
      "new_mode": 33188,
      "new_path": "gerrit-server/src/main/java/com/google/gerrit/server/account/GroupCacheImpl.java"
    },
    {
      "type": "modify",
      "old_id": "324f25431a1262ef9f242867af4a9e08fba69244",
      "old_mode": 33188,
      "old_path": "gerrit-server/src/main/java/com/google/gerrit/server/auth/ldap/LdapRealm.java",
      "new_id": "8b2444a858793bb89068153342d6c0218560b86b",
      "new_mode": 33188,
      "new_path": "gerrit-server/src/main/java/com/google/gerrit/server/auth/ldap/LdapRealm.java"
    },
    {
      "type": "modify",
      "old_id": "3981223bea2e8f4fd18c4e3d0bac47cfa1b5719f",
      "old_mode": 33188,
      "old_path": "gerrit-server/src/main/java/com/google/gerrit/server/git/PushReplication.java",
      "new_id": "daec791ae82ac7612b09c0b054464f25f41e5cb3",
      "new_mode": 33188,
      "new_path": "gerrit-server/src/main/java/com/google/gerrit/server/git/PushReplication.java"
    },
    {
      "type": "modify",
      "old_id": "1a3db8ec1e539ff015b27242dd975f8416753d45",
      "old_mode": 33188,
      "old_path": "gerrit-server/src/main/java/com/google/gerrit/server/schema/SchemaVersion.java",
      "new_id": "1f04777d4c85ab219d15c1b1b1704a175bd7f8b8",
      "new_mode": 33188,
      "new_path": "gerrit-server/src/main/java/com/google/gerrit/server/schema/SchemaVersion.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bb68bcff606548bc4f4ecb6506d4c97e9a1adf01",
      "new_mode": 33188,
      "new_path": "gerrit-server/src/main/java/com/google/gerrit/server/schema/Schema_23.java"
    },
    {
      "type": "modify",
      "old_id": "7966142b1002d0de320a8ab5123126dc09d859b7",
      "old_mode": 33188,
      "old_path": "gerrit-sshd/src/main/java/com/google/gerrit/sshd/args4j/AccountGroupIdHandler.java",
      "new_id": "13ff1b10f06e111446ded674990def6c087fc69d",
      "new_mode": 33188,
      "new_path": "gerrit-sshd/src/main/java/com/google/gerrit/sshd/args4j/AccountGroupIdHandler.java"
    }
  ]
}
