|
Field | Type | Tokenized* | Sortable | wiki page | forum post | blog post | article | file | trackeritem | sheet | comment | user | Available in Tiki version |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
object_type | Generic | X | X | X | X | X | X | X | X | X | X | 7 | |
object_id | Generic | X | X | X | X | X | X | X | X | X | X | 7 | |
title | Generic | X | X | X | X | X | X | X | X | X | ? | X | 7 |
title_initial | Generic | X | X | X | X | X | X | ? | ? | ? | |||
title_firstword | Generic | X | X | X | X | X | X | ? | ? | ? | |||
language | Generic | X | X | X | ? | 7 | |||||||
creation_date | Generic | X | X | X | X | X | X | X | X | X | 7/15 | ||
modification_date | Generic | X | X | X | X | X | X | X | X | X | 7 | ||
contributors | Generic | X | X | X | X | X | X | X | X | 7 | |||
description | Generic | X | X | X | X | X | 7 | ||||||
contents | Generic | X | X | X | X | X | X | X | X | X | X | 7 | |
wiki_content | Specific | X | X | 7 | |||||||||
wiki_uptodateness | Specific | X | X | 7 | |||||||||
wiki_approval_state | Specific | X | 11 | ||||||||||
post_content | Specific | X | 7 | ||||||||||
post_snippet | Specific | X | 14 | ||||||||||
parent_thread_id (not to be confused with parent_object_id) |
Specific | X | 8 | ||||||||||
root_thread_id | Specific | X | 14 | ||||||||||
parent_contributors | Specific | X | 14 | ||||||||||
blog_id | Specific | X | X | 7 | |||||||||
blog_excerpt | Specific | X | 7 | ||||||||||
blog_content | Specific | X | 7 | ||||||||||
topic_id | Specific | X | X | 7 | |||||||||
article_content | Specific | X | 7 | ||||||||||
article_topline | Specific | X | 7 | ||||||||||
article_subtitle | Specific | X | 7 | ||||||||||
article_author | Specific | X | 9 | ||||||||||
article_type | Specific | X | 9 | ||||||||||
article_heading available as description |
Specific | X | 9 | ||||||||||
published | Specific | X | 13 | ||||||||||
sitetitle | Specific | X | 13 | ||||||||||
siteurl | Specific | X | 13 | ||||||||||
gallery_id | Specific | X | X | 7 | |||||||||
filename_id | Specific | X | X | 7 | |||||||||
filetype | Specific | X | X | X | 7 | ||||||||
filesize | Specific | X | X | X | 15 | ||||||||
file_comment | Specific | X | 7 | ||||||||||
file_content | Specific | X | 7 | ||||||||||
tracker_id | Specific | X | X | 7 | |||||||||
tracker_status | Specific | X | X | 7 | |||||||||
tracker_field_PERMNAME/ID (see below for more details) |
Specific | X | ? | X | 7 | ||||||||
sheet_content | Specific | X | 7 | ||||||||||
comment_content | Specific | X | X | 7 | |||||||||
user_country | Specific | X | X | X | 10 | ||||||||
groups | Specific | X | X | X | ? | ||||||||
hits | Specific | X | 15 | ||||||||||
lastpost_title | Specific | X | 15 | ||||||||||
lastpost_modification_date | Specific | X | 15 | ||||||||||
lastpost_contributors | Specific | X | 15 | ||||||||||
lastpost_post_content | Specific | X | 15 | ||||||||||
lastpost_post_snippet | Specific | X | 15 | ||||||||||
lastpost_hits | Specific | X | 15 | ||||||||||
lastpost_thread_id | Specific | X | 15 | ||||||||||
view_permission | Internal | X | X | X | 7 | ||||||||
parent_object_type | Internal | X | X | X | X | X | X | X | 7 | ||||
parent_object_id | Internal | X | X | X | X | X | X | X | 7 | ||||
parent_view_permission | Internal | X | X | X | X | X | X | 7 | |||||
global_view_permission | Internal | X | 7 | ||||||||||
hash | Internal | X | 7 | ||||||||||
url | Internal | X | X | 7 | |||||||||
categories | Global | X | X | X | X | X | X | X | X | 7 | |||
deep_categories | Global | X | X | X | X | X | X | X | X | 7 | |||
allowed_groups | Global | X | X | X | X | X | X | X | X | 7 | |||
freetags | Global | X | X | X | X | X | X | X | X | 7 | |||
freetags_text | Global | X | X | X | X | X | X | X | X | 7 | |||
adv_rating_ID | Global | X | X | X | X | X | X | X | X | X | X | 7 | |
comment_count | Global | X | X | X | X | X | X | X | X | X | 8 | ||
relations | Global | X | X | X | X | X | X | X | X | X | 8 | ||
attachments | Global | X | X | X | X | X | X | X | X | 7 | |||
attachment_contents | Global | X | X | X | X | X | X | X | X | X | 7 | ||
geo_located | Global | X | X | X | X | X | X | X | X | X | 9 | ||
geo_location | Global | X | X | X | X | X | X | X | X | X | 9 | ||
visits | Global | X | X | X | 9.2 |
* Tokenized - as in decomposed in words for full text search
Some fields are indexed and are searchable and other are not searchable (more explanation is required). It will influence results that will be outputted when using the plugins List, CustomSearch and ListExecute (probably).
For exemple, deepcategories (child from a parent category) are indexed but not searchable. When you set one of those plugins you need to specify the searchable_only
parameter as follow, searchable_only="0"
Note that searching for not searchable objects in the Tiki "Experiment with plugin LIST tool" will output "no result found"
The plugin should start as follow:
{list(searchable_only="0")}
The indexing for tracker fields will vary depending on the field type. As a general rule, tracker_field_PERMNAME/ID will be used as the field and will be sortable. However, there are a few exceptions:
Some used in buildQuery/tiki-searchindex.php (need explanation on whether these are real fields or just helpers):
type: refers to object_type
deep: if this is set, categories will be considered deep-categories
autocomplete: Will search for items with title starting with this
Please see Rebuild Unified Index
If Unified Search is configured with the MySQL Full Text Search engine, you might encounter a failure to reindex with the following symptoms:
php console index:rebuild
stops without displaying the list of indexing statistics:
php console index:rebuild [14 mai 2020 09:26 EDT] Started rebuilding index... Unified search engine: MySQL, version 10.1.45-MariaDB (it takes a very long time and in the end nothing shows up)
If you investigate with producing a log it ends this way:
php console.php index:rebuild --log [14 mai 2020 16:10 EDT] Started rebuilding index... logging to file: temp/Search_Indexer_mysql_database_name_console.log Unified search engine: MySQL, version 10.1.45-MariaDB (it takes a very long time and in the end nothing shows up) tail temp/Search_Indexer_mysql_database_name_console.log … 2020-05-14T16:21:47-04:00 ERR (3): Indexing failed while processing "2512" (type trackeritem) with the error "Could not perform index modification: Too many columns" 2020-05-14T16:21:47-04:00 ERR (3): WARNING: PDO::query(): SQLSTATE[HY000]: General error: 1117 Too many columns {"code":null,"file":"/path/to/tikiroot/lib/core/TikiDb/Pdo.php","line":104} 2020-05-14T16:21:47-04:00 INFO (6): addDocument trackeritem 2513 {"memoryUsage":"46.5 MiB"} 2020-05-14T16:21:47-04:00 ERR (3): Indexing failed while processing "2513" (type trackeritem) with the error "Could not perform index modification: Too many columns" 2020-05-14T16:21:47-04:00 ERR (3): WARNING: PDO::query(): SQLSTATE[HY000]: General error: 1117 Too many columns {"code":null,"file":"/path/to/tikiroot/lib/core/TikiDb/Pdo.php","line":104} 2020-05-14T16:21:47-04:00 INFO (6): addDocument trackeritem 2514 {"memoryUsage":"46.5 MiB"}
What does matter is this: https://dev.mysql.com/doc/refman/5.7/en/create-table-files.html#limits-frm-file
According to those calculations, our lengthy tracker field names each prefixed with 'tracker_field_' are the reason for the early limit hit. frm files impose a 65K bytes of limit for the table definition. For example, 1500 fields with the formula from the page results in around 1500*17 + 1500 * (avg length of the column name in bytes + 1). Considering 'tracker_field_' is already 14 bytes, there is not much space left for actual column names.
…
However, now seeing this:
https://dev.mysql.com/doc/refman/8.0/en/data-dictionary-file-removal.html
I previously saw that version 8 did not have the limits section and decided to see where is MySQL going to... so it seems, they removed this 64KB frm file limit in version 8. Not sure about mariadb but it must be going in the same direction? I couldn't find relevant docs on their site.
The following options in Control panels → Search
help for this situation:
Hint: If the first option is enough for your site, you may ignore the second one.
When rebuilding your index use the following command to create a log file.
Note you need to point to the PHP for the PHP version your Tiki uses.
php console.php i:r -p --log
In the log you may see some error, this is an attempt to help and diagnose the possible issues.
Error | Possible fix |
addDocument article 275 ERR (3): NOTICE: Trying to access array offset on value of type bool.../...lib/core/Search/ContentSource/ArticleSource.php","line":53 | Edit article275, Advanced tab check the URL validity in the "Source" field. |
This error happens when rebuilding dies with fatal error, our PHP shutdown functions are not executed and thus doesn't clear the preference flag that index is being rebuilt. So you try to rebuild and it is blocked because it thinks it's still rebuilding. So make it's not (reboot or kill the process) and then
php console.php preferences:delete unified_manticore_index_rebuilding
By design the unified-index store data in the MySQL database using MyISAM no matter if your Tiki uses innoDB or MyISAM (not all versions of InnoDB offer FULLTEXT).
For some reasons you may found that your database has several index (tables like index_...alphanumeric...).
This happen when they were issues rebuilding the index or when moving and upgrading the database (Tiki upgrade).
You can delete those tables (always consider saving a backup of your data prior any work) and rebuild the unified-index. Tiki will recreate and relink everything properly. You can find information about the unified-index in use at the Search control panel, General settings under Unified search index.
See https://dev.tiki.org/Unified-Index#Developer_Notes.
Unified Search | UnifiedSearch | Enterprise search | Search Index | SearchIndex | UnifiedIndex