-#if HAVE_LIBMEMCACHED_MEMCACHED_H
- if (r->connection->mc_st &&
- !diag && npr->which == Z_NamePlusRecord_databaseRecord)
- {
- WRBUF k = wrbuf_alloc();
- uint32_t flags = 0;
- memcached_return_t rc;
- time_t expiration = 36000;
- ODR odr = odr_createmem(ODR_ENCODE);
- char *rec_buf;
- int rec_len;
-
- z_NamePlusRecord(odr, &npr, 0, 0);
- rec_buf = odr_getbuf(odr, &rec_len, 0);
-
- wrbuf_write(k, wrbuf_buf(r->mc_key), wrbuf_len(r->mc_key));
- wrbuf_printf(k, ";%d;%s;%s;%s", pos,
- syntax ? syntax : "",
- elementSetName ? elementSetName : "",
- schema ? schema : "");
- rc = memcached_set(r->connection->mc_st,
- wrbuf_buf(k),wrbuf_len(k),
- rec_buf, rec_len,
- expiration, flags);
-
- yaz_log(YLOG_LOG, "Store record lkey=%s len=%d rc=%u %s",
- wrbuf_cstr(k), rec_len, (unsigned) rc,
- memcached_last_error_message(r->connection->mc_st));
- odr_destroy(odr);
- wrbuf_destroy(k);
- }
-#endif
+ ZOOM_memcached_add(r, npr, pos, syntax, elementSetName, schema, diag);