#define DEFAULT_DATA_HASH_TABLE_SIZE (2047ULL*16ULL)
#define DEFAULT_FIELD_HASH_TABLE_SIZE (2047ULL*16ULL)
-#define DEFAULT_WINDOW_SIZE (128ULL*1024ULL*1024ULL)
+#define DEFAULT_WINDOW_SIZE (8ULL*1024ULL*1024ULL)
#define COMPRESSION_SIZE_THRESHOLD (512ULL)
/* This is the minimum journal file size */
-#define JOURNAL_FILE_SIZE_MIN (64ULL*1024ULL)
+#define JOURNAL_FILE_SIZE_MIN (64ULL*1024ULL) /* 64 KiB */
/* These are the lower and upper bounds if we deduce the max_use value
* from the file system size */
}
static int link_entry_into_array(JournalFile *f,
- uint64_t *first,
- uint64_t *idx,
+ le64_t *first,
+ le64_t *idx,
uint64_t p) {
int r;
uint64_t n = 0, ap = 0, q, i, a, hidx;
}
static int link_entry_into_array_plus_one(JournalFile *f,
- uint64_t *extra,
- uint64_t *first,
- uint64_t *idx,
+ le64_t *extra,
+ le64_t *first,
+ le64_t *idx,
uint64_t p) {
int r;
if (*idx == 0)
*extra = htole64(p);
else {
- uint64_t i;
+ le64_t i;
i = htole64(le64toh(*idx) - 1);
r = link_entry_into_array(f, first, &i, p);
char *p;
r = journal_file_open(fname, flags, mode, template, ret);
- if (r != -EBADMSG)
+ if (r != -EBADMSG && /* corrupted */
+ r != -ENODATA && /* truncated */
+ r != -EHOSTDOWN && /* other machine */
+ r != -EPROTONOSUPPORT) /* incompatible feature */
return r;
if ((flags & O_ACCMODE) == O_RDONLY)
items = alloca(sizeof(EntryItem) * n);
for (i = 0; i < n; i++) {
- uint64_t le_hash, l, h;
+ uint64_t l, h;
+ le64_t le_hash;
size_t t;
void *data;
Object *u;