X-Git-Url: http://git.vrable.net/?a=blobdiff_plain;f=bluesky%2Fbluesky-private.h;h=a783629fb2e06071fed19cfdd6b5faa8123bb823;hb=c18bf50fbca7ef23908d207ef9eb53d6c2af8605;hp=117f1081db7021d6788701467bc73b08dd6d2fd4;hpb=5d183280ac0033ad534af598fea85fd802e14ffe;p=bluesky.git diff --git a/bluesky/bluesky-private.h b/bluesky/bluesky-private.h index 117f108..a783629 100644 --- a/bluesky/bluesky-private.h +++ b/bluesky/bluesky-private.h @@ -25,10 +25,12 @@ extern int bluesky_verbose; /* Target cache size levels. */ extern int bluesky_watermark_low_dirty; extern int bluesky_watermark_medium_dirty; +extern int bluesky_watermark_med2_dirty; extern int bluesky_watermark_high_dirty; extern int bluesky_watermark_low_total; extern int bluesky_watermark_medium_total; +extern int bluesky_watermark_med2_total; extern int bluesky_watermark_high_total; /* TODO: Make this go away entirely. */ @@ -268,6 +270,10 @@ struct cloudlog_header { uint32_t size1, size2, size3; } __attribute__((packed)); +// Rough size limit for a log segment. This is not a firm limit and there are +// no absolute guarantees on the size of a log segment. +#define LOG_SEGMENT_SIZE (1 << 22) + #define JOURNAL_MAGIC "\nLog" #define CLOUDLOG_MAGIC "AgI-" #define CLOUDLOG_MAGIC_ENCRYPTED "AgI=" // CLOUDLOG_MAGIC[3] ^= 0x10 @@ -357,6 +363,7 @@ void bluesky_cloudlog_insert_locked(BlueSkyCloudLog *log); BlueSkyCloudLog *bluesky_cloudlog_get(BlueSkyFS *fs, BlueSkyCloudID id); void bluesky_cloudlog_prefetch(BlueSkyCloudLog *log); void bluesky_cloudlog_fetch(BlueSkyCloudLog *log); +void bluesky_cloudlog_background_fetch(BlueSkyCloudLog *item); BlueSkyCloudPointer bluesky_cloudlog_serialize(BlueSkyCloudLog *log, BlueSkyFS *fs); void bluesky_cloudlog_flush(BlueSkyFS *fs);