-
Notifications
You must be signed in to change notification settings - Fork 0
/
TODO
58 lines (55 loc) · 1.7 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
something's wrong - missing hashes when backend order changed
fuller stack tests
cache:
more testing
consider bringing back LRU
SIS:
maybe hashes should be in a blob header?
hashsets should be incremental and full and hash
coalescing should create a new full hashset and
stop deleting old hashsets by default
features:
gc
make rename safer
url sharing export
set ulimit -n automatically
support multi-command sessions
shell?
webserver?
manifest splitting
sftp:
figure out better read performance
evidently WriteTo is better than Read
get fsync support upstreamed into github/pkg/sftp
sftp supports it, [email protected] extension
fuse:
pick deterministic inode numbers?
support changing encryption settings for some data
blocksize
algorithm
root key
integrity check:
check that there aren't multiple references per hash, or that
all hash references are good (there is no guaranteed order)
other TODOs in comments
upload pipeline rewrite:
stage blob prior to uploading
fixes
hashing/file change problems
open filehandle problems
s3 concurrent uploading
breadth-first filepath.Walk (instead of sorting
internally)
store metadata in blobs also
should there be metadata just at the beginning of the blob
of what blocks are contained or at the beginning of each
block? easier to compress if it's all at the beginning,
complicates blob creation and offset calculation
within-blob block header:
block hash, path, offset within path, length
metadata?
hashes per block, block-level dedupe
compression per block? compression by file extension?
versioned blob reference (for blob migration)
post rewrite:
block-level caching?