libexec/got-index-pack/got-index-pack.c


Log

Author Commit Date CI Message
Christian Weisgerber 1367695b 2020-09-26T20:53:13 fix potential type mismatches between format specifiers and arguments Cast printf arguments of type time_t and off_t to long long to match the %lld format specifier on platforms where this might not be the case. In parse.y, switch the number variable to long long because all its interactions are with that type anyway. ok millert stsp
Christian Weisgerber 23c57b28 2020-09-11T19:44:18 Stop including <sys/syslimits.h> directly. POSIX says the limits defined there are available from <limits.h>, which almost all affected source files already included anyway. ok millert stsp
Stefan Sperling 3168e5da 2020-09-10T00:10:55 zap trailing tabs
Christian Weisgerber 78fb0967 2020-09-09T21:41:22 use the POSIX standard endian functions and explicitly include <endian.h> ok stsp
Christian Weisgerber 81a12da5 2020-09-09T19:35:32 do not rely on <zlib.h> to pull in <unistd.h> ok stsp
Stefan Sperling 3abebdc2 2020-03-24T15:24:08 make got-index-pack check the expected pack checksum passed from main process
Stefan Sperling 6ad68bce 2020-03-24T15:15:51 make got-index-pack compute and verify the pack file's SHA1 checksum
Stefan Sperling e70bf110 2020-03-22T17:20:18 move functions from privsep.c to the helpers which use them where possible
Stefan Sperling d582f26c 2020-03-18T16:13:48 write large objects to disk when resolving deltas; raise in-mem delta threshold
Stefan Sperling 18d4da03 2020-03-18T16:13:46 tweak delta cache size in got-index-pack
Stefan Sperling 93bba072 2020-03-18T16:13:46 use qsort(3) instead of mergesort(3) to avoid a large spike in memory usage
Stefan Sperling 97684601 2020-03-18T16:13:46 write CRC info in one chunk rather than calling write(2) once per object
Stefan Sperling 021b0c6f 2020-03-18T16:13:46 don't forget to send a final progress notification from got-index-pack
Stefan Sperling 5672d305 2020-03-18T16:13:46 waste less time on sending progress messages over the privsep pipe
Stefan Sperling 160bbe2e 2020-03-18T16:13:46 jump right to the index of the first delta
Stefan Sperling e6c1173d 2020-03-18T16:13:46 document why deltas will usually be resolved within a single loop iteration
Stefan Sperling 4788f1ce 2020-03-18T16:13:46 extract large objects to a temporary file in got-index-pack
Stefan Sperling ec92f929 2020-03-18T16:13:45 another indentation fix
Stefan Sperling 4c06f612 2020-03-18T16:13:45 remove now pointless error check
Stefan Sperling b3e1118b 2020-03-18T16:13:45 fix indentation
Stefan Sperling 73ab1060 2020-03-18T16:13:45 use a dedicated imsg for sending the pack index output file descriptor
Stefan Sperling 4d0fef1d 2020-03-18T16:13:44 plug a memory leak in resolve_deltified_object()
Stefan Sperling 37ebab0a 2020-03-18T16:13:44 free objects when indexing is done
Stefan Sperling 262c582a 2020-03-18T16:13:44 allocate one large indexed object array upfront, not an array of pointers
Stefan Sperling 964d3c5b 2020-03-18T16:13:44 increase delta cache size for got-index-pack
Stefan Sperling b102634c 2020-03-18T16:13:44 avoid magic numbers when writing pack index header in got-index-pack
Stefan Sperling 2e5a6fad 2020-03-18T16:13:44 add mmap support to got-index-pack
Stefan Sperling f63dc90d 2020-03-18T16:13:44 remove unnecessary & in read_packed_object()
Stefan Sperling 861f3006 2020-03-18T16:13:44 pledge got-index-pack
Stefan Sperling 7cd14ea0 2020-03-18T16:13:43 plug memory leak in error path of read_packed_object()
Stefan Sperling 836f2c92 2020-03-18T16:13:43 use a union for delta-specific data in struct got_indexed_object
Stefan Sperling cbc66309 2020-03-18T16:13:43 wrap overlong lines
Stefan Sperling 0fd91daf 2020-03-18T16:13:43 populate an in-progress pack index only if ref deltas are present
Stefan Sperling 950de2cd 2020-03-18T16:13:43 avoid unnecessary memmove calls during the first indexing pass
Stefan Sperling 55fdd257 2020-03-18T16:13:43 do not buffer more data than necessary in got_inflate_to_mem_fd()
Stefan Sperling 1e87a3c3 2020-03-18T16:13:42 avoid re-reading the entirety of an object's data to calculate the CRC
Stefan Sperling 7bad1537 2020-03-18T16:13:42 make use of the large object counter inside the packidx structure
Stefan Sperling b4152680 2020-03-18T16:13:42 remove duplicated code under #if 0
Stefan Sperling 64ab7238 2020-03-18T16:13:42 remove pointless lseek() call in index_pack()
Stefan Sperling 8bb2b40c 2020-03-18T16:13:42 fix CRC values in generated pack index
Stefan Sperling c5621f1c 2020-03-18T16:13:42 enable object CRC calculation in got-index-pack
Stefan Sperling 668a20f6 2020-03-18T16:13:41 rewritten got-index-pack; sorry about the monster commit
Stefan Sperling baa9fea0 2020-03-18T16:11:33 send indexing progress via an imsg
Stefan Sperling 6fb3a497 2020-03-18T16:11:29 add optional 'consumed' output parameter to got_inflate_to_mem()
Stefan Sperling 27937592 2020-03-18T16:11:28 add more missing \n in fprintfs from got-index-pack
Stefan Sperling fd86ad6e 2020-03-18T16:11:28 pass SEEK_SET instead of zero for fseek() whence parameter
Stefan Sperling 57138e05 2020-03-18T16:11:28 add missing \n in error print
Stefan Sperling a98e36f8 2020-03-18T16:11:28 fix inverted error check in readodelta()
Stefan Sperling 279090e1 2020-03-18T16:10:31 pass an object_id * to got_privsep_send_index_pack_req()
Stefan Sperling a251e40e 2020-03-18T16:10:31 GOT_IMSG_ACK isn't needed; just fill the pipe, reading responses will block
Stefan Sperling 93658fb9 2020-03-18T16:10:30 Add initial support for network protocol. Ported from git9 by Ori Bernstein.