- new->record = newc;
- new->next = 0;
- newc->records = record;
- newc->merge_key = merge_key;
- newc->relevance = 0;
- newc->term_frequency_vec = 0;
- newc->recid = (*total)++;
- newc->metadata = nmem_malloc(l->nmem,
- sizeof(struct record_metadata*) * service->num_metadata);
- memset(newc->metadata, 0, sizeof(struct record_metadata*) * service->num_metadata);
- newc->sortkeys = nmem_malloc(l->nmem,
- sizeof(struct record_metadata*) * service->num_sortkeys);
- memset(newc->sortkeys, 0, sizeof(union data_types*) * service->num_sortkeys);
+ new->record = cluster;
+ new->hash_next = 0;
+ cluster->records = record;
+ cluster->merge_key = nmem_strdup(l->nmem, merge_key);
+ cluster->relevance_score = 0;
+ cluster->term_frequency_vec = 0;
+ cluster->recid = nmem_strdup(l->nmem, merge_key);
+ (*total)++;
+ cluster->metadata =
+ nmem_malloc(l->nmem,
+ sizeof(struct record_metadata*) * service->num_metadata);
+ memset(cluster->metadata, 0,
+ sizeof(struct record_metadata*) * service->num_metadata);
+ cluster->sortkeys =
+ nmem_malloc(l->nmem, sizeof(struct record_metadata*) * service->num_sortkeys);
+ memset(cluster->sortkeys, 0,
+ sizeof(union data_types*) * service->num_sortkeys);