Hi there,
I am setting up a MySQL connector to synchronise a table with Elasticsearch. My use case is to synchronise only rows that have a field matching a given value (and exclude all the others).
I created one include rule as follows (rule with prio 0):
The rule with prio 1 is a default and uneditable rule that includes everything else (a default also described in the documentation). As expected, my rule is useless since the default rule includes everything.
But how do I only include the rows with the post_type
field set to product
?
I tried to create a catch-all exclusion rule similar to the default inclusion rule. Validation fails however:
Sync rule 0a555db2-9cbd-4ed7-939a-8336def57d20 is invalid.
Basic rule 2 (id: '0a555...57d20') is semantically equal to Basic rule 3 (id: 'D...T').
Basic rule 2 (id: '0a555...57d20') uses a match all regexps ['.*', '(.*)'], which are not allowed.
The error saying that the rule is semantically equivalent to the default rule is wrong as it excludes everything else (and not includes).
How do I implement my use case? I also tried implementing this with the filtering API with no luck.
Since it is not possible to define a "not equal" rule and since the default catch-all rule cannot be changed, I do not see how to implement this. Inclusion rules do not seem very useful if this is the default anyway.
Is there a way to change this default rule to an exclude rule?
Thanks for your help,
Angelo