- /* record going to be updated */
- if (!delkeys.buf_used)
- {
- yaz_log (YLOG_LOG, "update %s %s " PRINTF_OFF_T,
- zh->m_record_type, fname, recordOffset);
- yaz_log (YLOG_WARN, "cannot update file above, storeKeys false");
- }
- else
- {
- if (zh->records_processed < zh->m_file_verbose_limit)
- yaz_log (YLOG_LOG, "update %s %s " PRINTF_OFF_T,
- zh->m_record_type, fname, recordOffset);
- extract_flushSortKeys (zh, *sysno, 1, &zh->reg->sortKeys);
- extract_flushRecordKeys (zh, *sysno, 1, &zh->reg->keys);
- zh->records_updated++;
- }
+ /* flush new keys for sort&search etc */
+ if (zh->records_processed < zh->m_file_verbose_limit)
+ if (matchStr)
+ yaz_log(YLOG_LOG, "update %s %s " PRINTF_OFF_T
+ " " ZINT_FORMAT " %s" ,
+ zh->m_record_type,
+ fname, recordOffset, *sysno, matchStr);
+ else
+ yaz_log(YLOG_LOG, "update %s %s " PRINTF_OFF_T
+ " " ZINT_FORMAT ,
+ zh->m_record_type,
+ fname, recordOffset, *sysno);
+
+ recordAttr->staticrank = extractCtrl.staticrank;
+#if NATTR
+ extract_flushSortKeys (zh, *sysno, 1, zh->reg->sortKeys);
+#else
+ extract_flushSortKeys (zh, *sysno, 1, &zh->reg->sortKeys);
+#endif
+ extract_flushRecordKeys (zh, *sysno, 1, zh->reg->keys,
+ recordAttr->staticrank);
+ zh->records_updated++;