@@ -144,15 +144,6 @@ pub fn deinit(self: *Self) void {
144
144
self .dir .close ();
145
145
}
146
146
147
- fn loadSegment (self : * Self , info : SegmentInfo ) ! FileSegmentNode {
148
- var node = try FileSegmentList .createSegment (self .allocator , .{ .dir = self .dir });
149
- errdefer FileSegmentList .destroySegment (self .allocator , & node );
150
-
151
- try node .value .open (info );
152
-
153
- return node ;
154
- }
155
-
156
147
fn loadSegments (self : * Self , create : bool ) ! u64 {
157
148
self .segments_lock .lock ();
158
149
defer self .segments_lock .unlock ();
@@ -168,14 +159,15 @@ fn loadSegments(self: *Self, create: bool) !u64 {
168
159
return err ;
169
160
};
170
161
defer self .allocator .free (segment_ids );
162
+ log .info ("found {} segments in manifest" , .{segment_ids .len });
171
163
172
164
try self .file_segments .segments .value .nodes .ensureTotalCapacity (self .allocator , segment_ids .len );
173
-
174
165
var last_commit_id : u64 = 0 ;
175
- for (segment_ids ) | segment_id | {
176
- const node = try self .loadSegment (segment_id );
166
+ for (segment_ids , 1 .. ) | segment_id , i | {
167
+ const node = try FileSegmentList .loadSegment (self . allocator , segment_id , .{ . dir = self . dir } );
177
168
self .file_segments .segments .value .nodes .appendAssumeCapacity (node );
178
169
last_commit_id = node .value .info .getLastCommitId ();
170
+ log .info ("loaded segment {} ({}/{})" , .{ last_commit_id , i , segment_ids .len });
179
171
}
180
172
return last_commit_id ;
181
173
}
0 commit comments