struct o_record * o_database_operation_context_load(struct o_operation_context * context, struct o_record_id * record_id) { struct o_database_operation_context *db = (struct o_database_operation_context *) context; struct o_record * rec = o_record_cache_get(db->cache, record_id); if (rec == 0) { struct o_raw_buffer * row = o_storage_read_record(db->storage, record_id); rec = o_database_operation_context_record_from_content(db, record_id, row); } else o_record_refer(rec); return rec; }
void o_document_refer(struct o_document * doc) { o_record_refer(&doc->record); }