int sd_indexbegin(sdindex *i, sr *r) { int rc = ss_bufensure(&i->i, r->a, sizeof(sdindexheader)); if (ssunlikely(rc == -1)) return sr_oom(r->e); sdindexheader *h = sd_indexheader(i); sr_version(&h->version); h->crc = 0; h->size = 0; h->sizevmax = 0; h->count = 0; h->keys = 0; h->total = 0; h->totalorigin = 0; h->extension = 0; h->extensions = 0; h->lsnmin = UINT64_MAX; h->lsnmax = 0; h->tsmin = 0; h->offset = 0; h->dupkeys = 0; h->dupmin = UINT64_MAX; memset(h->reserve, 0, sizeof(h->reserve)); sd_idinit(&h->id, 0, 0, 0); i->h = NULL; ss_bufadvance(&i->i, sizeof(sdindexheader)); return 0; }
void si_schemeinit(sischeme *s) { memset(s, 0, sizeof(*s)); sr_version(&s->version); sr_version_storage(&s->version_storage); si_schemecompaction_init(&s->compaction); }
int sd_indexbegin(sdindex *i, sr *r, uint64_t offset) { int rc = sr_bufensure(&i->i, r->a, sizeof(sdindexheader)); if (srunlikely(rc == -1)) return sr_error(r->e, "%s", "memory allocation failed"); sdindexheader *h = sd_indexheader(i); sr_version(&h->version); h->crc = 0; h->size = 0; h->count = 0; h->keys = 0; h->total = 0; h->totalorigin = 0; h->extension = 0; h->lsnmin = UINT64_MAX; h->lsnmax = 0; h->tsmin = 0; h->offset = offset; h->dupkeys = 0; h->dupmin = UINT64_MAX; memset(h->reserve, 0, sizeof(h->reserve)); sd_idinit(&h->id, 0, 0, 0); i->h = NULL; sr_bufadvance(&i->i, sizeof(sdindexheader)); return 0; }