diff options
| author | Patrick Steinhardt <ps@pks.im> | 2025-07-01 14:22:13 +0200 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2025-07-01 14:46:33 -0700 |
| commit | 1ace06644926bcf1f05e291e8a9476c977c25eeb (patch) | |
| tree | 3d5d79eaaba8674384669363ce9b479d8e69943c /object-store.c | |
| parent | A bit more topics for -rc1 (diff) | |
| download | git-1ace06644926bcf1f05e291e8a9476c977c25eeb.tar.gz git-1ace06644926bcf1f05e291e8a9476c977c25eeb.zip | |
object-store: rename `raw_object_store` to `object_database`
The `raw_object_store` structure is the central entry point for reading
and writing objects in a repository. The main purpose of this structure
is to manage object directories and provide an interface to access and
write objects in those object directories.
Right now, many of the functions associated with the raw object store
implicitly rely on `the_repository` to get access to its `objects`
pointer, which is the `raw_object_store`. As we want to generally get
rid of using `the_repository` across our codebase we will have to
convert this implicit dependency on this global variable into an
explicit parameter.
This conversion can be done by simply passing in an explicit pointer to
a repository and then using its `->objects` pointer. But there is a
second effort underway, which is to make the object subsystem more
selfcontained so that we can eventually have pluggable object backends.
As such, passing in a repository wouldn't make a ton of sense, and the
goal is to convert the object store interfaces such that we always pass
in a reference to the `raw_object_store` instead.
This will expose the `raw_object_store` type to a lot more callers
though, which surfaces that this type is named somewhat awkwardly. The
"raw_" prefix makes readers wonder whether there is a non-raw variant of
the object store, but there isn't. Furthermore, we nowadays want to name
functions in a way that they can be clearly attributed to a specific
subsystem, but calling them e.g. `raw_object_store_has_object()` is just
too unwieldy, even when dropping the "raw_" prefix.
Instead, rename the structure to `object_database`. This term is already
used a lot throughout our codebase, and it cannot easily be mistaken for
"object directories", either. Furthermore, its acronym ODB is already
well-known and works well as part of a function's name, like for example
`odb_has_object()`.
Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'object-store.c')
| -rw-r--r-- | object-store.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/object-store.c b/object-store.c index 58cde0313a..f4e8f99d90 100644 --- a/object-store.c +++ b/object-store.c @@ -44,7 +44,7 @@ struct cached_object_entry { } value; }; -static const struct cached_object *find_cached_object(struct raw_object_store *object_store, +static const struct cached_object *find_cached_object(struct object_database *object_store, const struct object_id *oid) { static const struct cached_object empty_tree = { @@ -86,7 +86,7 @@ int odb_mkstemp(struct strbuf *temp_filename, const char *pattern) /* * Return non-zero iff the path is usable as an alternate object database. */ -static int alt_odb_usable(struct raw_object_store *o, +static int alt_odb_usable(struct object_database *o, struct strbuf *path, const char *normalized_objdir, khiter_t *pos) { @@ -950,9 +950,9 @@ void assert_oid_type(const struct object_id *oid, enum object_type expect) type_name(expect)); } -struct raw_object_store *raw_object_store_new(void) +struct object_database *odb_new(void) { - struct raw_object_store *o = xmalloc(sizeof(*o)); + struct object_database *o = xmalloc(sizeof(*o)); memset(o, 0, sizeof(*o)); INIT_LIST_HEAD(&o->packed_git_mru); @@ -961,7 +961,7 @@ struct raw_object_store *raw_object_store_new(void) return o; } -static void free_object_directories(struct raw_object_store *o) +static void free_object_directories(struct object_database *o) { while (o->odb) { struct object_directory *next; @@ -974,7 +974,7 @@ static void free_object_directories(struct raw_object_store *o) o->odb_by_path = NULL; } -void raw_object_store_clear(struct raw_object_store *o) +void odb_clear(struct object_database *o) { FREE_AND_NULL(o->alternate_db); |
