Sphinx で MVA (複数値) 属性を作成するために期待されるデータ形式を理解できる人はいますか?
GROUP_CONCAT
と照合されたコンマ区切りの整数の行を blob として返す MySQL 関数があります
。さらに 2 つの MVA 属性があり、JOIN ステートメントの結果をGROUP_CONCAT
BLOB として照合します (ThinkingSphinx によって生成されます)。これらはすべてsql_query
my sphinx.conf に含まれています。
コンソールで小さな結果セットに対して SQL を実行しようとしましたが、うまくいきました。すべて の MVA 列について、結果は次のようなデータを含む BLOB です。
2432,35345,342347,8975,453645
等々。JOIN
/GROUP_CONCAT
組み合わせインデックスで正しく生成された 2 つの MVA 属性。ただし、MySQL 関数で生成された MVA 属性により、インデックス作成がサイレントに失敗します (データがほとんどまたはまったくインデックス作成されないように見えます)。これは、クエリがコンソールで完全に正常に機能しているにもかかわらずです..
したがって、データ形式は同じように見えますが、Sphinx は列の 1 つを拒否しています。これをデバッグするのに役立つ可能性のある MVA 属性を定義する際の落とし穴を知っている人はいますか?