1

テキスト ハッシュ関数を GIN インデクサーに組み込みたいと考えています。

以下の拡張性を参照してください。

http://www.postgresql.org/docs/9.0/static/gin-extensibility.html

compareについては理解できます。

int compare(Datum a, Datum b)

しかし、 extractValueextractQuery、およびconsistentはどうですか。

Datum *extractValue(Datum inputValue, int32 *nkeys)

Datum *extractQuery(Datum query, int32 *nkeys, StrategyNumber n, bool **pmatch, Pointer **extra_data)

bool consistent(bool check[], StrategyNumber n, Datum query, int32 nkeys, Pointer extra_data[], bool *recheck)

マニュアルは、それらを実装するのに役立ちません。

私はそれらを実装する方法を知っています。詳細に:

  • extractValueのinputValueには何が渡されますか?
  • extractValueによって何が返されますか?
  • extractQueryのクエリには何が渡されますか?
  • extractQueryによって何が返されますか?
  • 一貫性のあるクエリには何が渡されますか?
  • 一貫性のチェックには何が渡されますか?

インデックス ストレージ (ハッシュされたキー) はint4になります。入力タイプはtextです。

4

1 に答える 1