Add LIKE-based CJK (Chinese, Japanese, Korean) search support for PostgreSQL, gated behind a `CJKSearch` feature flag. PostgreSQL's built-in full-text search (`to_tsvector`/`to_tsquery`) does not support CJK languages because it relies on whitespace-based tokenization, which doesn't work for logographic/syllabic scripts that don't use spaces between words. This PR adds a `LIKE`-based fallback for search terms containing CJK characters. **How it works:** When the `CJKSearch` feature flag is enabled and a search term contains CJK characters (Han, Hiragana, Katakana, or Hangul), the query builder generates `LIKE '%term%'` clauses instead of `to_tsvector @@ to_tsquery` expressions. Case-sensitive `LIKE` is used rather than `ILIKE` since CJK scripts have no letter casing, which also allows potential use of standard B-tree indexes.
Enterprise
This folder contains source available enterprise code as well as import directives for closed source enterprise code.
Build Information
The source code in this folder is only included with builds specifying the enterprise or sourceavailble build tags. If you have a copy of https://github.com/mattermost/enterprise checked out as a peer to this repository, enterprise will be set automatically and the imports from both external_imports.go and local_imports.go will apply.
In a development environment (when BUILD_NUMBER is left undefined or explicitly set to dev), the sourceavailable build tag will be set automatically and only the imports from local_imports.go will apply.
License
See the LICENSE file for license rights and limitations. See also Mattermost Source Available License to learn more.
Contributing
Contributions to source available enterprise code are welcome. Please see CONTRIBUTING.md.