Graylog2 / Graylog2/graylog2-server

array_contains parameters not self explanatory

Open
#19,861 0 comments 0 reactions 0 assignees View on GitHub
bug triaged
Dominant language
Java
Stars
8.1k
Forks
1.1k
Avg merge
1d 20h
Merged PRs (30d)
217

Description

`array_contains` has a `case_sensitive` parameter. The description says "Whether or not to ignore case when checking string arrays" so does this mean true ignores case or true requires case sensitivity?

Its also not clear what the default behavior is if the parameter is not used.

`case_sensitive` also seems inconsistent with other pipeline functions which use `ignore_case`

## Expected Behavior

Pipeline description is clear an unambiguous.

## Current Behavior

Pipeline description is ambiguous.

## Possible Solution

Update function description.

Questions to answer:

* What parameter does `case_sensitive` apply to?
* It appears to apply to both `elements` and `value`
* What is the default value if not set?
* I believe this [defaults to false](https://github.com/Graylog2/graylog2-server/blob/3c873942d5a4d1bef8e533cabd62253e590bb191/graylog2-server/src/main/java/org/graylog/plugins/pipelineprocessor/functions/arrays/ArrayContains.java#L64C65-L64C96)?
* Remove the wording "ignore case" (which IMO conflicts with case_sensitive wording)
* Clarify that this parameter enables or disables case_sensitive string checking

## Context

A customer brought this up and had some confusion as noted above.

## Your Environment

* Graylog Version: 6.0

Please let me know if there are any questions.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.