LASSERT(env);
LASSERT(th);
LASSERT(loghandle);
+ LASSERT(rec);
+ LASSERT(rec->lrh_len <= LLOG_CHUNK_SIZE);
o = loghandle->lgh_obj;
LASSERT(o);
lgi->lgi_off = 0;
}
- lgi->lgi_buf.lb_len = 32 * 1024;
+ lgi->lgi_buf.lb_len = rec->lrh_len;
lgi->lgi_buf.lb_buf = NULL;
/* XXX: implement declared window or multi-chunks approach */
- rc = dt_declare_record_write(env, o, &lgi->lgi_buf, lgi->lgi_off, th);
+ rc = dt_declare_record_write(env, o, &lgi->lgi_buf, -1, th);
RETURN(rc);
}
if (rc)
RETURN(rc);
- lgi->lgi_buf.lb_len = LLOG_CHUNK_SIZE;
- lgi->lgi_buf.lb_buf = NULL;
- rc = dt_declare_record_write(env, o, &lgi->lgi_buf, 0, th);
- if (rc)
- RETURN(rc);
+ /* do not declare header initialization here as it's declared
+ * in llog_osd_declare_write_rec() which is always called */
if (res->lgh_name) {
struct dt_object *llog_dir;