]> git.ipfire.org Git - thirdparty/git.git/blob - bulk-checkin.h
Merge branch 'rj/add-i-leak-fix'
[thirdparty/git.git] / bulk-checkin.h
1 /*
2 * Copyright (c) 2011, Google Inc.
3 */
4 #ifndef BULK_CHECKIN_H
5 #define BULK_CHECKIN_H
6
7 #include "object.h"
8
9 void prepare_loose_object_bulk_checkin(void);
10 void fsync_loose_object_bulk_checkin(int fd, const char *filename);
11
12 int index_blob_bulk_checkin(struct object_id *oid,
13 int fd, size_t size,
14 const char *path, unsigned flags);
15
16 /*
17 * Tell the object database to optimize for adding
18 * multiple objects. end_odb_transaction must be called
19 * to make new objects visible. Transactions can be nested,
20 * and objects are only visible after the outermost transaction
21 * is complete or the transaction is flushed.
22 */
23 void begin_odb_transaction(void);
24
25 /*
26 * Make any objects that are currently part of a pending object
27 * database transaction visible. It is valid to call this function
28 * even if no transaction is active.
29 */
30 void flush_odb_transaction(void);
31
32 /*
33 * Tell the object database to make any objects from the
34 * current transaction visible if this is the final nested
35 * transaction.
36 */
37 void end_odb_transaction(void);
38
39 #endif