Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Poor work with plugin_dir and index_token_filter #2179

Open
1 of 8 tasks
klirichek opened this issue May 14, 2024 · 2 comments
Open
1 of 8 tasks

Poor work with plugin_dir and index_token_filter #2179

klirichek opened this issue May 14, 2024 · 2 comments

Comments

@klirichek
Copy link
Contributor

klirichek commented May 14, 2024

Bug Description:

There are several things which are looking more likely defects then features.

  1. If a table has non-empty index_token_filter, and is loaded with absent common section in the config, or absent plugin_dir param, daemon issue no messages about it (i.e. everything looks 'healthy').
  2. you can't create table with invalid index_token_filter, or absent plugin_dir, or non-valid plugin.
mysql> create table t (t text) index_token_filter = 'my_lib.so:custom_blend:chars=@#&';
Query OK, 0 rows affected (0,00 sec)
  1. Insertion into such table provokes a bit confusing message:
mysql> insert into t values (0,'bla');
ERROR 1064 (42000): INTERNAL ERROR: plugin my_lib.so:custom_blend loaded ok but lookup fails, error: plugin support disabled (requires a valid plugin_dir)

Confusion is that is actually no my_lib.so available. Why, then, it says it is 'loaded ok'?

  1. Altering with any string is possible, btw. So, you can create table, insert data, and then say alter table t index_token_filter = 'bla';
  • no existence of plugin_dir
  • nothing ever unusual, that 'bla' doesn't look like so-name, and that is doesn't exists

With this things current test 284 is built, and it can be extended if something considered as real bugs to be fixed.

Manticore Search Version:

no concrete

Operating System Version:

no concrete

Have you tried the latest development version?

  • Yes

Internal Checklist:

To be completed by the assignee. Check off tasks that have been completed or are not applicable.

  • Task estimated
  • Specification created, reviewed, and approved
  • Implementation completed
  • Tests developed
  • Documentation updated
  • Documentation proofread
  • Changelog updated
@sanikolaev
Copy link
Collaborator

If a table has non-empty index_token_filter, and is loaded with absent common section in the config, or absent plugin_dir param, daemon issue no messages about it (i.e. everything looks 'healthy').

According to the docs, plugin_dir has a default value:

The default path is /usr/local/lib/manticore/

@sanikolaev
Copy link
Collaborator

Altering with any string is possible, btw. So, you can create table, insert data, and then say alter table t index_token_filter = 'bla';

As discussed with Alexey, it makes sense to think about the proper behaviour when you have different tokenization settings in different chunks in general.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants