Use a single directory for the FSFS node origin cache instead of a
commit272e1ce71111510cca5415c1c510b4b21638a0c3
authorglasser <glasser@612f8ebc-c883-4be0-9ee0-a4e9ef946e3a>
Fri, 25 Jan 2008 01:34:11 +0000 (25 01:34 +0000)
committerglasser <glasser@612f8ebc-c883-4be0-9ee0-a4e9ef946e3a>
Fri, 25 Jan 2008 01:34:11 +0000 (25 01:34 +0000)
tree17c60239deb1d92ae413816151b271c640b92814
parent1a56355cac97873616e4d6bf400b42afeead0790
Use a single directory for the FSFS node origin cache instead of a
sqlite database.

Perhaps this should be sharded.  (However, my only concern here is
"too many files in one directory", not "too many small files":
there'll only be one file here per file ever made in the repository,
so it'll take up no more space than a checkout of one branch of all
projects.)

(Technically, the node_origins table is still created in
sqlite-util.c, but that whole file is getting the wrecking ball soon.)

* subversion/include/private/svn_fs_node_origins.h
* subversion/libsvn_fs_util/node-origins-sqlite-index.c
  Delete.

* subversion/libsvn_fs_fs/fs.h
  (PATH_NODE_ORIGINS_DIR): New.

* subversion/libsvn_fs_fs/fs_fs.c
  (): Don't include svn_fs_node_origins.h
  (path_node_origins): New.
  (svn_fs_fs_hotcopy): Copy cache.
  (svn_fs_fs__commit): Call FSFS function instead of sqlite function.
  (svn_fs_fs__ensure_dir_exists): Moved from ensure_dir_exists in
   lock.c.
  (svn_fs_fs__get_node_origin, set_node_origin,
   svn_fs_fs__set_node_origins, svn_fs_fs__set_node_origin): New.

* subversion/libsvn_fs_fs/fs_fs.h
  (svn_fs_fs__get_node_origin, svn_fs_fs__set_node_origins,
   svn_fs_fs__set_node_origin): Declare.

* subversion/libsvn_fs_fs/lock.c
  (ensure_dir_exists): Move to fs_fs.c and make libsvn_fs_fs-global.
  (write_digest_file): Adjust.

* subversion/libsvn_fs_fs/structure
  Document node-origins cache.

* subversion/libsvn_fs_fs/tree.c
  (): Don't include svn_fs_node_origins.h.
  (fs_node_origin_rev): Call FSFS functions instead of sqlite
   functions.

git-svn-id: http://svn.collab.net/repos/svn/trunk@29018 612f8ebc-c883-4be0-9ee0-a4e9ef946e3a
subversion/include/private/svn_fs_node_origins.h [deleted file]
subversion/libsvn_fs_fs/fs.h
subversion/libsvn_fs_fs/fs_fs.c
subversion/libsvn_fs_fs/fs_fs.h
subversion/libsvn_fs_fs/lock.c
subversion/libsvn_fs_fs/structure
subversion/libsvn_fs_fs/tree.c
subversion/libsvn_fs_util/node-origins-sqlite-index.c [deleted file]