From: Stefan Beller <sbeller@google.com>
To: gitster@pobox.com
Cc: git@vger.kernel.org, pclouds@gmail.com, sunshine@sunshineco.com,
jonathantanmy@google.com, Stefan Beller <sbeller@google.com>,
Jonathan Nieder <jrnieder@gmail.com>
Subject: [PATCH 02/26] object-store: move alt_odb_list and alt_odb_tail to object store
Date: Mon, 12 Feb 2018 17:22:17 -0800 [thread overview]
Message-ID: <20180213012241.187007-3-sbeller@google.com> (raw)
In-Reply-To: <20180213012241.187007-1-sbeller@google.com>
In a process with multiple repositories open, alternates should be
associated to a single repository and not shared globally. Move
alt_odb_list and alt_odb_tail into the_repository and adjust callers
to reflect this.
Now that the alternative object data base is per repository, we're
leaking its memory upon freeing a repository. The next patch plugs
this hole.
No functional change intended.
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
---
builtin/fsck.c | 4 +++-
cache.h | 4 ++--
object-store.h | 7 ++++++-
packfile.c | 3 ++-
sha1_file.c | 25 ++++++++++++-------------
sha1_name.c | 3 ++-
6 files changed, 27 insertions(+), 19 deletions(-)
diff --git a/builtin/fsck.c b/builtin/fsck.c
index 04846d46f9..1048255da1 100644
--- a/builtin/fsck.c
+++ b/builtin/fsck.c
@@ -1,5 +1,6 @@
#include "builtin.h"
#include "cache.h"
+#include "repository.h"
#include "config.h"
#include "commit.h"
#include "tree.h"
@@ -694,7 +695,8 @@ int cmd_fsck(int argc, const char **argv, const char *prefix)
fsck_object_dir(get_object_directory());
prepare_alt_odb();
- for (alt = alt_odb_list; alt; alt = alt->next)
+ for (alt = the_repository->objects.alt_odb_list;
+ alt; alt = alt->next)
fsck_object_dir(alt->path);
if (check_full) {
diff --git a/cache.h b/cache.h
index d8b975a571..918c2f15b4 100644
--- a/cache.h
+++ b/cache.h
@@ -1573,7 +1573,7 @@ extern int has_dirs_only_path(const char *name, int len, int prefix_len);
extern void schedule_dir_for_removal(const char *name, int len);
extern void remove_scheduled_dirs(void);
-extern struct alternate_object_database {
+struct alternate_object_database {
struct alternate_object_database *next;
/* see alt_scratch_buf() */
@@ -1591,7 +1591,7 @@ extern struct alternate_object_database {
struct oid_array loose_objects_cache;
char path[FLEX_ARRAY];
-} *alt_odb_list;
+};
extern void prepare_alt_odb(void);
extern char *compute_alternate_path(const char *path, struct strbuf *err);
typedef int alt_odb_fn(struct alternate_object_database *, void *);
diff --git a/object-store.h b/object-store.h
index cf35760ceb..44b8f84753 100644
--- a/object-store.h
+++ b/object-store.h
@@ -1,14 +1,19 @@
#ifndef OBJECT_STORE_H
#define OBJECT_STORE_H
+#include "cache.h"
+
struct raw_object_store {
/*
* Path to the repository's object store.
* Cannot be NULL after initialization.
*/
char *objectdir;
+
+ struct alternate_object_database *alt_odb_list;
+ struct alternate_object_database **alt_odb_tail;
};
-#define RAW_OBJECT_STORE_INIT { NULL }
+#define RAW_OBJECT_STORE_INIT { NULL, NULL, NULL }
void raw_object_store_clear(struct raw_object_store *o);
diff --git a/packfile.c b/packfile.c
index 4a5fe7ab18..d61076faaf 100644
--- a/packfile.c
+++ b/packfile.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "mru.h"
#include "pack.h"
+#include "repository.h"
#include "dir.h"
#include "mergesort.h"
#include "packfile.h"
@@ -880,7 +881,7 @@ void prepare_packed_git(void)
return;
prepare_packed_git_one(get_object_directory(), 1);
prepare_alt_odb();
- for (alt = alt_odb_list; alt; alt = alt->next)
+ for (alt = the_repository->objects.alt_odb_list; alt; alt = alt->next)
prepare_packed_git_one(alt->path, 0);
rearrange_packed_git();
prepare_packed_git_mru();
diff --git a/sha1_file.c b/sha1_file.c
index 3da70ac650..2826d5d6ed 100644
--- a/sha1_file.c
+++ b/sha1_file.c
@@ -22,6 +22,7 @@
#include "pack-revindex.h"
#include "sha1-lookup.h"
#include "bulk-checkin.h"
+#include "repository.h"
#include "streaming.h"
#include "dir.h"
#include "mru.h"
@@ -346,9 +347,6 @@ static const char *alt_sha1_path(struct alternate_object_database *alt,
return buf->buf;
}
-struct alternate_object_database *alt_odb_list;
-static struct alternate_object_database **alt_odb_tail;
-
/*
* Return non-zero iff the path is usable as an alternate object database.
*/
@@ -368,7 +366,7 @@ static int alt_odb_usable(struct strbuf *path, const char *normalized_objdir)
* Prevent the common mistake of listing the same
* thing twice, or object directory itself.
*/
- for (alt = alt_odb_list; alt; alt = alt->next) {
+ for (alt = the_repository->objects.alt_odb_list; alt; alt = alt->next) {
if (!fspathcmp(path->buf, alt->path))
return 0;
}
@@ -428,8 +426,8 @@ static int link_alt_odb_entry(const char *entry, const char *relative_base,
ent = alloc_alt_odb(pathbuf.buf);
/* add the alternate entry */
- *alt_odb_tail = ent;
- alt_odb_tail = &(ent->next);
+ *the_repository->objects.alt_odb_tail = ent;
+ the_repository->objects.alt_odb_tail = &(ent->next);
ent->next = NULL;
/* recursively add alternates */
@@ -563,7 +561,7 @@ void add_to_alternates_file(const char *reference)
fprintf_or_die(out, "%s\n", reference);
if (commit_lock_file(&lock))
die_errno("unable to move new alternates file into place");
- if (alt_odb_tail)
+ if (the_repository->objects.alt_odb_tail)
link_alt_odb_entries(reference, '\n', NULL, 0);
}
free(alts);
@@ -661,7 +659,7 @@ int foreach_alt_odb(alt_odb_fn fn, void *cb)
int r = 0;
prepare_alt_odb();
- for (ent = alt_odb_list; ent; ent = ent->next) {
+ for (ent = the_repository->objects.alt_odb_list; ent; ent = ent->next) {
r = fn(ent, cb);
if (r)
break;
@@ -673,12 +671,13 @@ void prepare_alt_odb(void)
{
const char *alt;
- if (alt_odb_tail)
+ if (the_repository->objects.alt_odb_tail)
return;
alt = getenv(ALTERNATE_DB_ENVIRONMENT);
- alt_odb_tail = &alt_odb_list;
+ the_repository->objects.alt_odb_tail =
+ &the_repository->objects.alt_odb_list;
link_alt_odb_entries(alt, PATH_SEP, NULL, 0);
read_info_alternates(get_object_directory(), 0);
@@ -717,7 +716,7 @@ static int check_and_freshen_nonlocal(const unsigned char *sha1, int freshen)
{
struct alternate_object_database *alt;
prepare_alt_odb();
- for (alt = alt_odb_list; alt; alt = alt->next) {
+ for (alt = the_repository->objects.alt_odb_list; alt; alt = alt->next) {
const char *path = alt_sha1_path(alt, sha1);
if (check_and_freshen_file(path, freshen))
return 1;
@@ -873,7 +872,7 @@ static int stat_sha1_file(const unsigned char *sha1, struct stat *st,
prepare_alt_odb();
errno = ENOENT;
- for (alt = alt_odb_list; alt; alt = alt->next) {
+ for (alt = the_repository->objects.alt_odb_list; alt; alt = alt->next) {
*path = alt_sha1_path(alt, sha1);
if (!lstat(*path, st))
return 0;
@@ -899,7 +898,7 @@ static int open_sha1_file(const unsigned char *sha1, const char **path)
most_interesting_errno = errno;
prepare_alt_odb();
- for (alt = alt_odb_list; alt; alt = alt->next) {
+ for (alt = the_repository->objects.alt_odb_list; alt; alt = alt->next) {
*path = alt_sha1_path(alt, sha1);
fd = git_open(*path);
if (fd >= 0)
diff --git a/sha1_name.c b/sha1_name.c
index 611c7d24dd..957ce25680 100644
--- a/sha1_name.c
+++ b/sha1_name.c
@@ -10,6 +10,7 @@
#include "dir.h"
#include "sha1-array.h"
#include "packfile.h"
+#include "repository.h"
static int get_oid_oneline(const char *, struct object_id *, struct commit_list *);
@@ -104,7 +105,7 @@ static void find_short_object_filename(struct disambiguate_state *ds)
*/
fakeent = alloc_alt_odb(get_object_directory());
}
- fakeent->next = alt_odb_list;
+ fakeent->next = the_repository->objects.alt_odb_list;
for (alt = fakeent; alt && !ds->ambiguous; alt = alt->next) {
int pos;
--
2.16.1.73.ga2c3e9663f.dirty
next prev parent reply other threads:[~2018-02-13 1:22 UTC|newest]
Thread overview: 239+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-13 1:22 [PATCH 00/26] Moving global state into the repository object (part 1) Stefan Beller
2018-02-13 1:22 ` [PATCH 01/26] repository: introduce raw object store field Stefan Beller
2018-02-13 1:22 ` Stefan Beller [this message]
2018-02-13 18:51 ` [PATCH 02/26] object-store: move alt_odb_list and alt_odb_tail to object store Brandon Williams
2018-02-13 19:46 ` Stefan Beller
2018-02-13 1:22 ` [PATCH 03/26] object-store: free alt_odb_list Stefan Beller
2018-02-13 1:22 ` [PATCH 04/26] object-store: move packed_git and packed_git_mru to object store Stefan Beller
2018-02-13 1:22 ` [PATCH 05/26] object-store: close all packs upon clearing the " Stefan Beller
2018-02-13 1:22 ` [PATCH 06/26] pack: move prepare_packed_git_run_once to " Stefan Beller
2018-02-13 1:22 ` [PATCH 07/26] pack: move approximate object count " Stefan Beller
2018-02-13 1:22 ` [PATCH 08/26] sha1_file: add raw_object_store argument to alt_odb_usable Stefan Beller
2018-02-13 1:22 ` [PATCH 09/26] sha1_file: add repository argument to link_alt_odb_entry Stefan Beller
2018-02-13 1:22 ` [PATCH 10/26] sha1_file: add repository argument to read_info_alternates Stefan Beller
2018-02-13 1:22 ` [PATCH 11/26] sha1_file: add repository argument to link_alt_odb_entries Stefan Beller
2018-02-13 1:22 ` [PATCH 12/26] sha1_file: add repository argument to prepare_alt_odb Stefan Beller
2018-02-13 1:22 ` [PATCH 13/26] sha1_file: allow link_alt_odb_entries to handle arbitrary repositories Stefan Beller
2018-02-13 1:22 ` [PATCH 14/26] sha1_file: allow prepare_alt_odb " Stefan Beller
2018-02-14 0:37 ` Duy Nguyen
2018-02-14 18:08 ` Brandon Williams
2018-02-23 9:56 ` [PATCH 0/2] Fix initializing the_hash_algo Nguyễn Thái Ngọc Duy
2018-02-23 9:56 ` [PATCH 1/2] setup.c: initialize the_repository correctly in all cases Nguyễn Thái Ngọc Duy
2018-02-23 22:17 ` brian m. carlson
2018-02-24 3:17 ` Duy Nguyen
2018-02-23 9:56 ` [PATCH 2/2] Revert "repository: pre-initialize hash algo pointer" Nguyễn Thái Ngọc Duy
2018-02-23 18:24 ` Stefan Beller
2018-02-23 19:50 ` Junio C Hamano
2018-02-23 20:04 ` Stefan Beller
2018-02-23 22:26 ` Junio C Hamano
2018-02-23 22:29 ` brian m. carlson
2018-02-23 23:16 ` Brandon Williams
2018-02-24 3:44 ` Duy Nguyen
2018-02-26 23:09 ` Junio C Hamano
2018-03-03 1:51 ` Duy Nguyen
2018-02-23 22:47 ` [PATCH 0/2] Fix initializing the_hash_algo brian m. carlson
2018-02-24 3:34 ` [PATCH v2 0/5] " Nguyễn Thái Ngọc Duy
2018-02-24 3:34 ` [PATCH v2 1/5] setup.c: initialize the_repository correctly in all cases Nguyễn Thái Ngọc Duy
2018-02-24 3:34 ` [PATCH v2 2/5] sha1_file.c: keep a good name for "unknown" hash_algos[UNKNOWN] Nguyễn Thái Ngọc Duy
2018-02-24 22:39 ` brian m. carlson
2018-02-24 3:34 ` [PATCH v2 3/5] index-pack: check (and optionally set) hash algo based on input file Nguyễn Thái Ngọc Duy
2018-02-24 22:56 ` brian m. carlson
2018-02-24 3:34 ` [PATCH v2 4/5] diff.c: initialize hash algo when running in --no-index mode Nguyễn Thái Ngọc Duy
2018-02-24 8:15 ` Eric Sunshine
2018-02-24 13:45 ` Duy Nguyen
2018-02-24 14:36 ` Duy Nguyen
2018-02-24 22:29 ` brian m. carlson
2018-02-24 3:34 ` [PATCH v2 5/5] Revert "repository: pre-initialize hash algo pointer" Nguyễn Thái Ngọc Duy
2018-02-24 22:58 ` brian m. carlson
2018-02-25 3:29 ` Duy Nguyen
2018-02-25 20:28 ` brian m. carlson
2018-02-25 11:18 ` [PATCH v3 0/6] Fix initializing the_hash_algo Nguyễn Thái Ngọc Duy
2018-02-25 11:18 ` [PATCH v3 1/6] setup.c: initialize the_repository correctly in all cases Nguyễn Thái Ngọc Duy
2018-02-25 11:18 ` [PATCH v3 2/6] sha1_file.c: keep a good name for "unknown" hash_algos[UNKNOWN] Nguyễn Thái Ngọc Duy
2018-02-25 11:18 ` [PATCH v3 3/6] cache.h: make the_hash_algo read-only Nguyễn Thái Ngọc Duy
2018-02-25 11:18 ` [PATCH v3 4/6] index-pack: check (and optionally set) hash algo based on input file Nguyễn Thái Ngọc Duy
2018-02-25 11:18 ` [PATCH v3 5/6] diff.c: initialize hash algo when running in --no-index mode Nguyễn Thái Ngọc Duy
2018-02-25 11:18 ` [PATCH v3 6/6] Revert "repository: pre-initialize hash algo pointer" Nguyễn Thái Ngọc Duy
2018-02-25 20:34 ` [PATCH v3 0/6] Fix initializing the_hash_algo brian m. carlson
2018-02-26 19:20 ` Stefan Beller
2018-02-26 10:30 ` [PATCH 0/4] Delete ignore_env member in struct repository Nguyễn Thái Ngọc Duy
2018-02-26 10:30 ` [PATCH 1/4] repository.c: move env-related setup code back to environment.c Nguyễn Thái Ngọc Duy
2018-02-26 18:57 ` Eric Sunshine
2018-02-27 9:11 ` Duy Nguyen
2018-02-27 9:39 ` Duy Nguyen
2018-02-26 20:30 ` Stefan Beller
2018-02-27 0:28 ` Duy Nguyen
2018-02-26 10:30 ` [PATCH 2/4] repository.c: delete dead functions Nguyễn Thái Ngọc Duy
2018-02-26 10:30 ` [PATCH 3/4] sha1_file.c: move delayed getenv(altdb) back to setup_git_env() Nguyễn Thái Ngọc Duy
2018-02-26 10:30 ` [PATCH 4/4] repository: delete ignore_env member Nguyễn Thái Ngọc Duy
2018-02-26 18:07 ` [PATCH 0/4] Delete ignore_env member in struct repository Junio C Hamano
2018-02-26 20:46 ` Stefan Beller
2018-02-27 0:18 ` Duy Nguyen
2018-02-27 9:58 ` [PATCH v2 " Nguyễn Thái Ngọc Duy
2018-02-27 9:58 ` [PATCH v2 1/4] repository.c: move env-related setup code back to environment.c Nguyễn Thái Ngọc Duy
2018-02-27 20:09 ` Brandon Williams
2018-02-27 9:58 ` [PATCH v2 2/4] repository.c: delete dead functions Nguyễn Thái Ngọc Duy
2018-02-27 20:10 ` Brandon Williams
2018-02-27 9:58 ` [PATCH v2 3/4] sha1_file.c: move delayed getenv(altdb) back to setup_git_env() Nguyễn Thái Ngọc Duy
2018-02-27 20:12 ` Brandon Williams
2018-02-28 0:58 ` Duy Nguyen
2018-02-27 9:58 ` [PATCH v2 4/4] repository: delete ignore_env member Nguyễn Thái Ngọc Duy
2018-02-27 20:14 ` Brandon Williams
2018-02-27 10:10 ` [PATCH v2 0/4] Delete ignore_env member in struct repository Eric Sunshine
2018-02-27 18:09 ` Stefan Beller
2018-02-28 1:37 ` [PATCH v3 " Nguyễn Thái Ngọc Duy
2018-02-28 1:37 ` [PATCH v3 1/4] repository.c: move env-related setup code back to environment.c Nguyễn Thái Ngọc Duy
2018-02-28 1:37 ` [PATCH v3 2/4] repository.c: delete dead functions Nguyễn Thái Ngọc Duy
2018-02-28 1:37 ` [PATCH v3 3/4] sha1_file.c: move delayed getenv(altdb) back to setup_git_env() Nguyễn Thái Ngọc Duy
2018-02-28 1:37 ` [PATCH v3 4/4] repository: delete ignore_env member Nguyễn Thái Ngọc Duy
2018-02-28 18:12 ` [PATCH v3 0/4] Delete ignore_env member in struct repository Brandon Williams
2018-02-28 18:57 ` Junio C Hamano
2018-02-13 1:22 ` [PATCH 15/26] sha1_file: add repository argument to sha1_file_name Stefan Beller
2018-02-13 1:22 ` [PATCH 16/26] sha1_file: add repository argument to stat_sha1_file Stefan Beller
2018-02-13 1:22 ` [PATCH 17/26] sha1_file: add repository argument to open_sha1_file Stefan Beller
2018-02-13 1:22 ` [PATCH 18/26] sha1_file: add repository argument to map_sha1_file_1 Stefan Beller
2018-02-13 1:22 ` [PATCH 19/26] sha1_file: add repository argument to map_sha1_file Stefan Beller
2018-02-13 1:22 ` [PATCH 20/26] sha1_file: add repository argument to sha1_loose_object_info Stefan Beller
2018-02-13 1:22 ` [PATCH 21/26] sha1_file: allow sha1_file_name to handle arbitrary repositories Stefan Beller
2018-02-13 1:22 ` [PATCH 22/26] sha1_file: allow stat_sha1_file " Stefan Beller
2018-02-13 1:22 ` [PATCH 23/26] sha1_file: allow open_sha1_file " Stefan Beller
2018-02-13 1:22 ` [PATCH 24/26] sha1_file: allow map_sha1_file_1 " Stefan Beller
2018-02-13 1:22 ` [PATCH 25/26] sha1_file: allow map_sha1_file " Stefan Beller
2018-02-13 1:22 ` [PATCH 26/26] sha1_file: allow sha1_loose_object_info " Stefan Beller
2018-02-13 1:38 ` [PATCH 00/26] Moving global state into the repository object (part 1) Stefan Beller
2018-02-13 11:49 ` Duy Nguyen
2018-02-13 12:13 ` Duy Nguyen
2018-02-13 16:52 ` Brandon Williams
2018-02-13 17:47 ` Stefan Beller
2018-02-13 18:57 ` Junio C Hamano
2018-02-13 19:23 ` Stefan Beller
2018-02-13 19:35 ` Junio C Hamano
2018-02-13 19:43 ` Stefan Beller
2018-02-14 0:30 ` Junio C Hamano
2018-02-13 19:26 ` Jonathan Nieder
2018-02-14 0:57 ` Duy Nguyen
2018-02-13 19:33 ` Brandon Williams
2018-02-15 20:42 ` Junio C Hamano
2018-02-15 21:09 ` Stefan Beller
2018-02-16 17:46 ` [PATCHv2 00/16] " Stefan Beller
2018-02-16 17:46 ` [PATCH 01/16] repository: introduce raw object store field Stefan Beller
2018-02-16 17:46 ` [PATCH 02/16] object-store: move alt_odb_list and alt_odb_tail to object store Stefan Beller
2018-02-16 17:46 ` [PATCH 03/16] object-store: free alt_odb_list Stefan Beller
2018-02-16 17:46 ` [PATCH 04/16] object-store: move packed_git and packed_git_mru to object store Stefan Beller
2018-02-16 20:27 ` Junio C Hamano
2018-02-16 17:46 ` [PATCH 05/16] object-store: close all packs upon clearing the " Stefan Beller
2018-02-16 17:46 ` [PATCH 06/16] pack: move prepare_packed_git_run_once to " Stefan Beller
2018-02-16 17:46 ` [PATCH 07/16] pack: move approximate object count " Stefan Beller
2018-02-16 17:46 ` [PATCH 08/16] sha1_file: add raw_object_store argument to alt_odb_usable Stefan Beller
2018-02-16 17:46 ` [PATCH 09/16] sha1_file: allow link_alt_odb_entries to handle arbitrary object stores Stefan Beller
2018-02-16 17:46 ` [PATCH 10/16] sha1_file: allow prepare_alt_odb " Stefan Beller
2018-02-16 17:46 ` [PATCH 11/16] sha1_file: allow sha1_file_name " Stefan Beller
2018-02-16 17:46 ` [PATCH 12/16] sha1_file: allow stat_sha1_file " Stefan Beller
2018-02-16 17:46 ` [PATCH 13/16] sha1_file: allow open_sha1_file " Stefan Beller
2018-02-16 17:46 ` [PATCH 14/16] sha1_file: allow map_sha1_file_1 " Stefan Beller
2018-02-16 17:46 ` [PATCH 15/16] sha1_file: allow map_sha1_file " Stefan Beller
2018-02-16 17:46 ` [PATCH 16/16] sha1_file: allow sha1_loose_object_info " Stefan Beller
2018-02-16 22:34 ` [PATCHv2 00/16] Moving global state into the repository object (part 1) Jonathan Nieder
2018-02-20 18:55 ` Stefan Beller
2018-02-20 19:00 ` Brandon Williams
2018-02-20 19:03 ` Stefan Beller
2018-02-20 19:03 ` Junio C Hamano
2018-02-20 19:06 ` Stefan Beller
2018-02-20 19:55 ` Junio C Hamano
2018-02-20 20:16 ` Stefan Beller
2018-02-21 1:54 ` [PATCHv3 00/27] " Stefan Beller
2018-02-21 1:54 ` [PATCH 01/27] repository: introduce raw object store field Stefan Beller
2018-02-22 6:26 ` Jonathan Nieder
2018-02-21 1:54 ` [PATCH 02/27] object-store: migrate alternates struct and functions from cache.h Stefan Beller
2018-02-22 0:37 ` Brandon Williams
2018-02-21 1:54 ` [PATCH 03/27] object-store: move alt_odb_list and alt_odb_tail to object store Stefan Beller
2018-02-22 0:41 ` Brandon Williams
2018-02-21 1:54 ` [PATCH 04/27] object-store: free alt_odb_list Stefan Beller
2018-02-22 0:42 ` Brandon Williams
2018-02-21 1:54 ` [PATCH 05/27] object-store: move packed_git and packed_git_mru to object store Stefan Beller
2018-02-21 21:51 ` Junio C Hamano
2018-02-23 20:01 ` Stefan Beller
2018-02-22 6:44 ` Jonathan Nieder
2018-02-23 21:42 ` Stefan Beller
2018-02-21 1:54 ` [PATCH 06/27] object-store: close all packs upon clearing the " Stefan Beller
2018-02-22 0:43 ` Brandon Williams
2018-02-21 1:54 ` [PATCH 07/27] pack: move prepare_packed_git_run_once to " Stefan Beller
2018-02-22 0:20 ` Jonathan Tan
2018-02-21 1:54 ` [PATCH 08/27] pack: move approximate object count " Stefan Beller
2018-02-22 0:47 ` Brandon Williams
2018-02-23 22:22 ` Stefan Beller
2018-02-26 8:55 ` Jeff King
2018-02-26 20:57 ` Stefan Beller
2018-02-21 1:54 ` [PATCH 09/27] sha1_file: add raw_object_store argument to alt_odb_usable Stefan Beller
2018-02-22 0:29 ` Jonathan Tan
2018-02-21 1:54 ` [PATCH 10/27] sha1_file: add repository argument to link_alt_odb_entry Stefan Beller
2018-02-21 1:54 ` [PATCH 11/27] sha1_file: add repository argument to read_info_alternates Stefan Beller
2018-02-21 1:54 ` [PATCH 12/27] sha1_file: add repository argument to link_alt_odb_entries Stefan Beller
2018-02-21 1:54 ` [PATCH 13/27] sha1_file: add repository argument to prepare_alt_odb Stefan Beller
2018-02-22 6:51 ` Jonathan Nieder
2018-02-23 22:33 ` Stefan Beller
2018-02-21 1:54 ` [PATCH 14/27] sha1_file: allow link_alt_odb_entries to handle arbitrary repositories Stefan Beller
2018-02-22 0:49 ` Brandon Williams
2018-02-21 1:54 ` [PATCH 15/27] sha1_file: allow prepare_alt_odb " Stefan Beller
2018-02-22 0:35 ` Jonathan Tan
2018-02-23 23:18 ` Stefan Beller
2018-02-21 1:54 ` [PATCH 16/27] sha1_file: add repository argument to sha1_file_name Stefan Beller
2018-02-22 0:51 ` Brandon Williams
2018-02-23 22:36 ` Stefan Beller
2018-02-23 23:11 ` Brandon Williams
2018-02-21 1:54 ` [PATCH 17/27] sha1_file: add repository argument to stat_sha1_file Stefan Beller
2018-02-22 6:52 ` Jonathan Nieder
2018-02-21 1:54 ` [PATCH 18/27] sha1_file: add repository argument to open_sha1_file Stefan Beller
2018-02-21 1:54 ` [PATCH 19/27] sha1_file: add repository argument to map_sha1_file_1 Stefan Beller
2018-02-22 0:36 ` Jonathan Tan
2018-02-21 1:54 ` [PATCH 20/27] sha1_file: add repository argument to map_sha1_file Stefan Beller
2018-02-21 1:54 ` [PATCH 21/27] sha1_file: add repository argument to sha1_loose_object_info Stefan Beller
2018-02-22 6:53 ` Jonathan Nieder
2018-02-21 1:54 ` [PATCH 22/27] sha1_file: allow sha1_file_name to handle arbitrary repositories Stefan Beller
2018-02-22 0:44 ` Jonathan Tan
2018-02-23 22:50 ` Stefan Beller
2018-02-21 1:54 ` [PATCH 23/27] sha1_file: allow stat_sha1_file " Stefan Beller
2018-02-21 1:54 ` [PATCH 24/27] sha1_file: allow open_sha1_file " Stefan Beller
2018-02-22 0:45 ` Jonathan Tan
2018-02-21 1:54 ` [PATCH 25/27] sha1_file: allow map_sha1_file_1 " Stefan Beller
2018-02-21 1:54 ` [PATCH 26/27] sha1_file: allow map_sha1_file " Stefan Beller
2018-02-22 6:54 ` Jonathan Nieder
2018-02-21 1:54 ` [PATCH 27/27] sha1_file: allow sha1_loose_object_info " Stefan Beller
2018-02-22 0:26 ` [PATCHv3 00/27] Moving global state into the repository object (part 1) Stefan Beller
2018-02-24 0:47 ` [PATCHv4 " Stefan Beller
2018-02-24 0:47 ` [PATCHv4 01/27] repository: introduce raw object store field Stefan Beller
2018-02-26 9:30 ` Duy Nguyen
2018-02-26 18:19 ` Junio C Hamano
2018-02-26 18:23 ` Brandon Williams
2018-02-26 19:28 ` Stefan Beller
2018-02-26 23:59 ` Duy Nguyen
2018-02-24 0:47 ` [PATCHv4 02/27] object-store: migrate alternates struct and functions from cache.h Stefan Beller
2018-02-24 0:47 ` [PATCHv4 03/27] object-store: move alt_odb_list and alt_odb_tail to object store Stefan Beller
2018-02-24 0:47 ` [PATCHv4 04/27] object-store: free alt_odb_list Stefan Beller
2018-02-24 0:47 ` [PATCHv4 05/27] object-store: move packed_git and packed_git_mru to object store Stefan Beller
2018-02-24 0:47 ` [PATCHv4 06/27] object-store: close all packs upon clearing the " Stefan Beller
2018-02-24 0:47 ` [PATCHv4 07/27] pack: move prepare_packed_git_run_once to " Stefan Beller
2018-02-24 0:47 ` [PATCHv4 08/27] pack: move approximate object count " Stefan Beller
2018-02-24 0:47 ` [PATCHv4 09/27] sha1_file: add raw_object_store argument to alt_odb_usable Stefan Beller
2018-02-24 0:47 ` [PATCHv4 10/27] sha1_file: add repository argument to link_alt_odb_entry Stefan Beller
2018-02-24 0:47 ` [PATCHv4 11/27] sha1_file: add repository argument to read_info_alternates Stefan Beller
2018-02-24 0:47 ` [PATCHv4 12/27] sha1_file: add repository argument to link_alt_odb_entries Stefan Beller
2018-02-24 0:47 ` [PATCHv4 13/27] sha1_file: add repository argument to prepare_alt_odb Stefan Beller
2018-02-24 0:47 ` [PATCHv4 14/27] sha1_file: allow link_alt_odb_entries to handle arbitrary repositories Stefan Beller
2018-02-24 0:47 ` [PATCHv4 15/27] sha1_file: allow prepare_alt_odb " Stefan Beller
2018-02-24 0:47 ` [PATCHv4 16/27] sha1_file: add repository argument to sha1_file_name Stefan Beller
2018-02-24 0:47 ` [PATCHv4 17/27] sha1_file: add repository argument to stat_sha1_file Stefan Beller
2018-02-24 0:47 ` [PATCHv4 18/27] sha1_file: add repository argument to open_sha1_file Stefan Beller
2018-02-24 0:47 ` [PATCHv4 19/27] sha1_file: add repository argument to map_sha1_file_1 Stefan Beller
2018-02-24 0:47 ` [PATCHv4 20/27] sha1_file: add repository argument to map_sha1_file Stefan Beller
2018-02-24 0:47 ` [PATCHv4 21/27] sha1_file: add repository argument to sha1_loose_object_info Stefan Beller
2018-02-24 0:47 ` [PATCHv4 22/27] sha1_file: allow sha1_file_name to handle arbitrary repositories Stefan Beller
2018-02-24 0:47 ` [PATCHv4 23/27] sha1_file: allow stat_sha1_file " Stefan Beller
2018-02-24 0:47 ` [PATCHv4 24/27] sha1_file: allow open_sha1_file " Stefan Beller
2018-02-24 0:47 ` [PATCHv4 25/27] sha1_file: allow map_sha1_file_1 " Stefan Beller
2018-02-24 0:47 ` [PATCHv4 26/27] sha1_file: allow map_sha1_file " Stefan Beller
2018-02-24 0:47 ` [PATCHv4 27/27] sha1_file: allow sha1_loose_object_info " Stefan Beller
2018-02-24 15:00 ` [PATCHv4 00/27] Moving global state into the repository object (part 1) Duy Nguyen
2018-02-26 20:50 ` Stefan Beller
2018-02-27 0:02 ` Duy Nguyen
2018-02-26 18:19 ` Jonathan Tan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180213012241.187007-3-sbeller@google.com \
--to=sbeller@google.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jonathantanmy@google.com \
--cc=jrnieder@gmail.com \
--cc=pclouds@gmail.com \
--cc=sunshine@sunshineco.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.