fix: adding no_assignee index in bleve

This commit is contained in:
puni9869
2026-06-08 09:10:03 +05:30
parent 599d1a1b4b
commit 1030b50462
3 changed files with 14 additions and 14 deletions
+12 -12
View File
@@ -259,18 +259,18 @@ func (b *Indexer) Search(ctx context.Context, options *internal.SearchOptions) (
queries = append(queries, inner_bleve.NumericEqualityQuery(posterIDInt64, "poster_id"))
}
if options.AssigneeID != "" {
if options.AssigneeID == "(any)" {
queries = append(queries, inner_bleve.BoolFieldQuery(false, "no_assignee"))
} else if options.AssigneeID == "(none)" {
queries = append(queries, inner_bleve.BoolFieldQuery(true, "no_assignee"))
} else {
assigneeIDInt64, _ := strconv.ParseInt(options.AssigneeID, 10, 64)
queries = append(queries, bleve.NewDisjunctionQuery(
inner_bleve.NumericEqualityQuery(assigneeIDInt64, "assignee_ids"),
inner_bleve.NumericEqualityQuery(assigneeIDInt64, "assignee_id"),
))
}
switch options.AssigneeID {
case "":
case "(any)":
queries = append(queries, inner_bleve.BoolFieldQuery(false, "no_assignee"))
case "(none)":
queries = append(queries, inner_bleve.BoolFieldQuery(true, "no_assignee"))
default:
assigneeIDInt64, _ := strconv.ParseInt(options.AssigneeID, 10, 64)
queries = append(queries, bleve.NewDisjunctionQuery(
inner_bleve.NumericEqualityQuery(assigneeIDInt64, "assignee_ids"),
inner_bleve.NumericEqualityQuery(assigneeIDInt64, "assignee_id"),
))
}
if options.MentionID.Has() {
+1 -1
View File
@@ -36,7 +36,7 @@ type IndexerData struct {
PosterID int64 `json:"poster_id"`
AssigneeID int64 `json:"assignee_id"`
AssigneeIDs []int64 `json:"assignee_ids"`
NoAssignee bool `json:"no_assignee"` // True if AssigneeID and AssigneeIDs are empty
NoAssignee bool `json:"no_assignee"` // True if the issue has no assignees
MentionIDs []int64 `json:"mention_ids"`
ReviewedIDs []int64 `json:"reviewed_ids"`
ReviewRequestedIDs []int64 `json:"review_requested_ids"`
+1 -1
View File
@@ -119,7 +119,7 @@ func getIssueIndexerData(ctx context.Context, issueID int64) (*internal.IndexerD
PosterID: issue.PosterID,
AssigneeID: issue.AssigneeID,
AssigneeIDs: assigneeIDs,
NoAssignee: issue.AssigneeID == 0 && len(assigneeIDs) == 0,
NoAssignee: len(assigneeIDs) == 0,
MentionIDs: mentionIDs,
ReviewedIDs: reviewedIDs,
ReviewRequestedIDs: reviewRequestedIDs,