0

killlist が正しく機能しない理由がわかりません。

私の sphinx.conf は次のようになります。

source main
{
    type            = mysql

    sql_host        = localhost
    sql_user        = root
    sql_pass        =
    sql_db          = sphinx

    sql_port        = 3306  # optional, default is 3306
    sql_query_pre = SET NAMES utf8
    sql_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM documents
    sql_query       = \
        SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \
        FROM documents \
        WHERE id<=( SELECT max_doc_id FROM sph_counter WHERE counter_id=1 )

    sql_attr_uint       = group_id
    sql_field_string        = title
    sql_attr_timestamp  = date_added

    sql_query_info      = SELECT * FROM documents WHERE id=$id
}

source delta : main
{
    sql_query_pre = SET NAMES utf8
    sql_query = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \
        FROM documents \
        WHERE id>( SELECT max_doc_id FROM sph_counter WHERE counter_id=1 )

    sql_query_killlist = \
    SELECT id FROM documents WHERE date_added>=@last_reindex UNION \
    SELECT id FROM documents_deleted WHERE deleted_ts>=@last_reindex
}

index main
{
    source = main
    path = C:/Sphinx/data/main
    # ... all the other settings

}

# note how all other settings are copied from main,
# but source and path are overridden (they MUST be)
index delta : main
{
    source = delta
    path = C:/Sphinx/data/delta
 }

データベースの 1 つのアイテムを更新すると、date_added が変更され、コンテンツも変更され、デルタ インデックスが更新された後でも古い結果が得られますか??

4

0 に答える 0