OpenSearch icon indicating copy to clipboard operation
OpenSearch copied to clipboard

Adding User Behavior Insights functionality.

Open jzonthemtn opened this issue 9 months ago • 12 comments

Description

Adds the User Behavior Insights (UBI) functionality described in #12084.

Check List

  • [X] New functionality includes testing.
    • [X] All tests pass
  • [X] New functionality has been documented.
    • [X] New functionality has javadoc added
  • [X] Failing checks are inspected and point to the corresponding known issue(s) (See: Troubleshooting Failing Builds)
  • [X] Commits are signed per the DCO using --signoff
  • [X] Commit changes are listed out in CHANGELOG.md file (See: Changelog)
  • [X] Public documentation issue/PR created

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. For more information on following Developer Certificate of Origin and signing off your commits, please check here.

jzonthemtn avatar May 04 '24 23:05 jzonthemtn

:x: Gradle check result for bea92e0c4dc97ccf31b098dda0652fa4ce1f3a38: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

github-actions[bot] avatar May 05 '24 00:05 github-actions[bot]

❌ Gradle check result for bea92e0: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

I think it is a flaky test outside of UBI changes:

[Test Result](https://build.ci.opensearch.org/job/gradle-check/38340/testReport/) (1 failure / -1)
[org.opensearch.common.cache.stats.DefaultCacheStatsHolderTests.testConcurrentRemoval](https://build.ci.opensearch.org/job/gradle-check/38340/testReport/junit/org.opensearch.common.cache.stats/DefaultCacheStatsHolderTests/testConcurrentRemoval/)

And described by #13220.

jzonthemtn avatar May 05 '24 11:05 jzonthemtn

:x: Gradle check result for 2fb835fcfc7ce271208eead32d222acc46d67c4c: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

github-actions[bot] avatar May 05 '24 12:05 github-actions[bot]

❌ Gradle check result for 2fb835f: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Also appears to be a flaky test outside of the code changes here. #1006

jzonthemtn avatar May 05 '24 12:05 jzonthemtn

@jzonthemtn I haven't look into implementation yet (sorry about that), but it looks to me the plugin should not be part of the core but a separate repository (like most of the non essential plugins out there).

reta avatar May 06 '24 13:05 reta

:white_check_mark: Gradle check result for 00c7c8565e65f8ff5fae13c03e5698e888e61d85: SUCCESS

github-actions[bot] avatar May 06 '24 23:05 github-actions[bot]

Codecov Report

Attention: Patch coverage is 47.08995% with 100 lines in your changes are missing coverage. Please review.

Project coverage is 71.53%. Comparing base (b15cb0c) to head (333e45e). Report is 271 commits behind head on main.

Files Patch % Lines
.../main/java/org/opensearch/ubi/UbiActionFilter.java 16.00% 60 Missing and 3 partials :warning:
...src/main/java/org/opensearch/ubi/QueryRequest.java 0.00% 12 Missing :warning:
...ain/java/org/opensearch/ubi/ext/UbiParameters.java 83.58% 3 Missing and 8 partials :warning:
...rc/main/java/org/opensearch/ubi/QueryResponse.java 0.00% 8 Missing :warning:
...rg/opensearch/ubi/ext/UbiParametersExtBuilder.java 75.00% 3 Missing and 2 partials :warning:
.../main/java/org/opensearch/ubi/UbiModulePlugin.java 85.71% 1 Missing :warning:
Additional details and impacted files
@@             Coverage Diff              @@
##               main   #13546      +/-   ##
============================================
+ Coverage     71.42%   71.53%   +0.11%     
- Complexity    59978    61077    +1099     
============================================
  Files          4985     5058      +73     
  Lines        282275   287313    +5038     
  Branches      40946    41617     +671     
============================================
+ Hits         201603   205518    +3915     
- Misses        63999    64748     +749     
- Partials      16673    17047     +374     

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov[bot] avatar May 06 '24 23:05 codecov[bot]

:x: Gradle check result for be5b3a04aedbe1dc36046a2e0d4cb289d87975b3: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

github-actions[bot] avatar May 07 '24 13:05 github-actions[bot]

:x: Gradle check result for 1d5d8718b91a48921db459cee8d71e6c722e51de: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

github-actions[bot] avatar May 07 '24 13:05 github-actions[bot]

:grey_exclamation: Gradle check result for 333e45e930f1076d38d937ed85fde55727a4755c: UNSTABLE

  • TEST FAILURES:
      1 org.opensearch.cluster.coordination.AwarenessAttributeDecommissionIT.testConcurrentDecommissionAction

Please review all flaky tests that succeeded after retry and create an issue if one does not already exist to track the flaky failure.

github-actions[bot] avatar May 07 '24 14:05 github-actions[bot]

I haven't look into implementation yet (sorry about that), but it looks to me the plugin should not be part of the core but a separate repository (like most of the non essential plugins out there).

This is super important and something we should figure out ASAP as it will determine where this code will live. Have we discussed this yet in any other issue? My inclination is that this feature might benefit from being a separate repository where it can iterate much more quickly and not be so tightly coupled to the OpenSearch repository.

/cc @reta @msfroh

andrross avatar May 08 '24 16:05 andrross

I haven't look into implementation yet (sorry about that), but it looks to me the plugin should not be part of the core but a separate repository (like most of the non essential plugins out there).

This is super important and something we should figure out ASAP as it will determine where this code will live. Have we discussed this yet in any other issue? My inclination is that this feature might benefit from being a separate repository where it can iterate much more quickly and not be so tightly coupled to the OpenSearch repository.

/cc @reta @msfroh

Appreciate the nudge on this point. Just some history since not everyone is familiar with UBI, this project started as an external plugin and was then moved to a module (this PR).

jzonthemtn avatar May 08 '24 16:05 jzonthemtn

Apologies for missing the search triage meeting, but I heard it was decided that UBI will be moved to an external plugin project repository so I am going to close this pull request. Thanks to everyone for the comments!

jzonthemtn avatar May 10 '24 16:05 jzonthemtn