@@ -278,7 +278,7 @@ uint32_t nth_midxed_pack_int_id(struct multi_pack_index *m, uint32_t pos)
278
278
(off_t )pos * MIDX_CHUNK_OFFSET_WIDTH );
279
279
}
280
280
281
- int fill_midx_entry (struct repository * r ,
281
+ int fill_midx_entry (struct repository * r ,
282
282
const struct object_id * oid ,
283
283
struct pack_entry * e ,
284
284
struct multi_pack_index * m )
@@ -913,6 +913,8 @@ static uint32_t *midx_pack_order(struct write_midx_context *ctx)
913
913
uint32_t * pack_order ;
914
914
uint32_t i ;
915
915
916
+ trace2_region_enter ("midx" , "midx_pack_order" , the_repository );
917
+
916
918
ALLOC_ARRAY (data , ctx -> entries_nr );
917
919
for (i = 0 ; i < ctx -> entries_nr ; i ++ ) {
918
920
struct pack_midx_entry * e = & ctx -> entries [i ];
@@ -930,6 +932,8 @@ static uint32_t *midx_pack_order(struct write_midx_context *ctx)
930
932
pack_order [i ] = data [i ].nr ;
931
933
free (data );
932
934
935
+ trace2_region_leave ("midx" , "midx_pack_order" , the_repository );
936
+
933
937
return pack_order ;
934
938
}
935
939
@@ -939,6 +943,8 @@ static void write_midx_reverse_index(char *midx_name, unsigned char *midx_hash,
939
943
struct strbuf buf = STRBUF_INIT ;
940
944
const char * tmp_file ;
941
945
946
+ trace2_region_enter ("midx" , "write_midx_reverse_index" , the_repository );
947
+
942
948
strbuf_addf (& buf , "%s-%s.rev" , midx_name , hash_to_hex (midx_hash ));
943
949
944
950
tmp_file = write_rev_file_order (NULL , ctx -> pack_order , ctx -> entries_nr ,
@@ -948,6 +954,8 @@ static void write_midx_reverse_index(char *midx_name, unsigned char *midx_hash,
948
954
die (_ ("cannot store reverse index file" ));
949
955
950
956
strbuf_release (& buf );
957
+
958
+ trace2_region_leave ("midx" , "write_midx_reverse_index" , the_repository );
951
959
}
952
960
953
961
static void clear_midx_files_ext (const char * object_dir , const char * ext ,
@@ -963,6 +971,8 @@ static void prepare_midx_packing_data(struct packing_data *pdata,
963
971
{
964
972
uint32_t i ;
965
973
974
+ trace2_region_enter ("midx" , "prepare_midx_packing_data" , the_repository );
975
+
966
976
memset (pdata , 0 , sizeof (struct packing_data ));
967
977
prepare_packing_data (the_repository , pdata );
968
978
@@ -973,20 +983,26 @@ static void prepare_midx_packing_data(struct packing_data *pdata,
973
983
oe_set_in_pack (pdata , to ,
974
984
ctx -> info [ctx -> pack_perm [from -> pack_int_id ]].p );
975
985
}
986
+
987
+ trace2_region_leave ("midx" , "prepare_midx_packing_data" , the_repository );
976
988
}
977
989
978
990
static int add_ref_to_pending (const char * refname ,
979
991
const struct object_id * oid ,
980
992
int flag , void * cb_data )
981
993
{
982
994
struct rev_info * revs = (struct rev_info * )cb_data ;
995
+ struct object_id peeled ;
983
996
struct object * object ;
984
997
985
998
if ((flag & REF_ISSYMREF ) && (flag & REF_ISBROKEN )) {
986
999
warning ("symbolic ref is dangling: %s" , refname );
987
1000
return 0 ;
988
1001
}
989
1002
1003
+ if (!peel_iterated_oid (oid , & peeled ))
1004
+ oid = & peeled ;
1005
+
990
1006
object = parse_object_or_die (oid , refname );
991
1007
if (object -> type != OBJ_COMMIT )
992
1008
return 0 ;
@@ -1066,6 +1082,9 @@ static struct commit **find_commits_for_midx_bitmap(uint32_t *indexed_commits_nr
1066
1082
struct rev_info revs ;
1067
1083
struct bitmap_commit_cb cb = {0 };
1068
1084
1085
+ trace2_region_enter ("midx" , "find_commits_for_midx_bitmap" ,
1086
+ the_repository );
1087
+
1069
1088
cb .ctx = ctx ;
1070
1089
1071
1090
repo_init_revisions (the_repository , & revs , NULL );
@@ -1099,6 +1118,10 @@ static struct commit **find_commits_for_midx_bitmap(uint32_t *indexed_commits_nr
1099
1118
* indexed_commits_nr_p = cb .commits_nr ;
1100
1119
1101
1120
release_revisions (& revs );
1121
+
1122
+ trace2_region_leave ("midx" , "find_commits_for_midx_bitmap" ,
1123
+ the_repository );
1124
+
1102
1125
return cb .commits ;
1103
1126
}
1104
1127
@@ -1116,6 +1139,8 @@ static int write_midx_bitmap(const char *midx_name,
1116
1139
char * bitmap_name = xstrfmt ("%s-%s.bitmap" , midx_name ,
1117
1140
hash_to_hex (midx_hash ));
1118
1141
1142
+ trace2_region_enter ("midx" , "write_midx_bitmap" , the_repository );
1143
+
1119
1144
if (flags & MIDX_WRITE_BITMAP_HASH_CACHE )
1120
1145
options |= BITMAP_OPT_HASH_CACHE ;
1121
1146
@@ -1161,6 +1186,9 @@ static int write_midx_bitmap(const char *midx_name,
1161
1186
cleanup :
1162
1187
free (index );
1163
1188
free (bitmap_name );
1189
+
1190
+ trace2_region_leave ("midx" , "write_midx_bitmap" , the_repository );
1191
+
1164
1192
return ret ;
1165
1193
}
1166
1194
@@ -1207,6 +1235,8 @@ static int write_midx_internal(const char *object_dir,
1207
1235
int result = 0 ;
1208
1236
struct chunkfile * cf ;
1209
1237
1238
+ trace2_region_enter ("midx" , "write_midx_internal" , the_repository );
1239
+
1210
1240
get_midx_filename (& midx_name , object_dir );
1211
1241
if (safe_create_leading_directories (midx_name .buf ))
1212
1242
die_errno (_ ("unable to create leading directories of %s" ),
@@ -1548,6 +1578,8 @@ static int write_midx_internal(const char *object_dir,
1548
1578
free (ctx .pack_order );
1549
1579
strbuf_release (& midx_name );
1550
1580
1581
+ trace2_region_leave ("midx" , "write_midx_internal" , the_repository );
1582
+
1551
1583
return result ;
1552
1584
}
1553
1585
0 commit comments