Exemplo n.º 1
0
couchstore_error_t write_view_group_header(tree_file *file,
                                           uint64_t *pos,
                                           const index_header_t *header)
{
    couchstore_error_t ret;
    sized_buf buf = { NULL, 0 };
    cs_off_t p;

    if (file->handle == NULL) {
        return COUCHSTORE_ERROR_FILE_CLOSED;
    }

    ret = encode_index_header(header, &buf.buf, &buf.size);
    if (ret != COUCHSTORE_SUCCESS) {
        return ret;
    }

    ret = write_header(file, &buf, &p);
    if (ret != COUCHSTORE_SUCCESS) {
        goto out;
    }

    assert(p >= 0);
    *pos = (uint64_t) p;

out:
    free(buf.buf);

    return ret;
}
Exemplo n.º 2
0
static void test_index_header_encoding(const index_header_t *header,
                                       char **buffer,
                                       size_t *size)
{
    couchstore_error_t res;

    res = encode_index_header(header, buffer, size);
    assert(res == COUCHSTORE_SUCCESS);
}