Inconsistent search results between Global Code Search and Project-level Repository Filter when using partial strings with punctuation

XMLWordPrintable

    • Type: Bug
    • Resolution: Unresolved
    • Priority: Low
    • None
    • Affects Version/s: 10.2.7
    • Component/s: Search - Code Search
    • None
    • 1
    • Severity 3 - Minor
    • 19

      Issue Summary

      Bitbucket Data Center exhibits inconsistent search behavior when searching for strings containing periods (for example, abc.def.ghi). The Global Code Search (powered by OpenSearch) correctly identifies all relevant repositories by tokenizing the string and allowing prefix matching. However, the Project-level repository filter (database/UI filter) fails to return the same results for the identical string, requiring an explicit wildcard (*) to match the same repositories. This creates a fragmented and confusing user experience, making scoped search less effective.

      Steps to Reproduce

      1. Create multiple repositories within a project with names following a dotted convention, such as abc.def.utils.repo1, abc.def.utils.repo2, etc.
      2. Ensure the repositories are fully indexed (Status: IDLE).
      3. Perform a Global Search for the partial string abc.def.uti. Observe that it returns all repositories containing abc.def.utils.
      4. Navigate into the specific Project containing these repositories.
      5. Use the repository filter bar within that project to search for the same string: abc.def.uti.

      Expected Results

      The Project-level filter should return the same set of repositories as the Global Search, identifying "uti" as a prefix/partial match for the token "utils".

      Actual Results

      The Project-level filter returns significantly fewer results (or only one result) compared to the Global Search. It appears to treat the string literally rather than using the "smart" tokenization logic employed by the OpenSearch engine.

      Workaround

      Users must append a wildcard () to the end of the partial string when searching within the Project-level filter (e.g., search for abc.def.uti instead of abc.def.uti).

              Assignee:
              Unassigned
              Reporter:
              Felipe Kraemer
              Votes:
              2 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: