234
buildIdsOfInterest []string,
235
open bool,
237
>
slices.Sort(buildIdsOfInterest)
238
>
escapedTaskQueue := sqlparser.String(sqlparser.NewStrVal([]byte(rc.taskQueue.Name())))
239
>
var statusFilter string
240
>
var escapedBuildIds []string
241
>
var includeNull bool
242
>
if open {
243
>
statusFilter = fmt.Sprintf(` AND %s = "Running"`, sadefs.ExecutionStatus)
244
>
// want: currently assigned to that build-id
245
>
// (b1, b2) --> (assigned:b1, assigned:b2)
246
>
// (b1, b2, "") --> (assigned:b1, assigned:b2, unversioned, null)
247
>
// ("") --> (unversioned, null)
248
>
for _, bid := range buildIdsOfInterest {
249
>
if bid == "" {
250
escapedBuildIds = append(escapedBuildIds, sqlparser.String(sqlparser.NewStrVal([]byte(worker_versioning.UnversionedSearchAttribute))))
251
includeNull = true
253
>
escapedBuildIds = append(escapedBuildIds, sqlparser.String(sqlparser.NewStrVal([]byte(worker_versioning.AssignedBuildIdSearchAttribute(bid)))))
254
>
}
255
}
257
>
statusFilter = fmt.Sprintf(` AND %s != "Running"`, sadefs.ExecutionStatus)
258
>
// want: closed AT that build ID, and once used that build ID
259
>
// (b1, b2) --> (versioned:b1, versioned:b2)
260
>
// (b1, b2, "") --> (versioned:b1, versioned:b2, unversioned, null)
261
>
// ("") --> (unversioned, null)
262
>
for _, bid := range buildIdsOfInterest {
263
>
if bid == "" {
264
escapedBuildIds = append(escapedBuildIds, sqlparser.String(sqlparser.NewStrVal([]byte(worker_versioning.UnversionedSearchAttribute))))
265
includeNull = true
267
>
escapedBuildIds = append(escapedBuildIds, sqlparser.String(sqlparser.NewStrVal([]byte(worker_versioning.VersionedBuildIdSearchAttribute(bid)))))
268
>
}
269
}
270
}
271
>
buildIdsFilter := fmt.Sprintf("%s IN (%s)", sadefs.BuildIds, strings.Join(escapedBuildIds, ","))
reachability.go
272
>
if includeNull {
273
buildIdsFilter = fmt.Sprintf("(%s IS NULL OR %s)", sadefs.BuildIds, buildIdsFilter)
274
}
275
>
return fmt.Sprintf("%s = %s AND %s%s", sadefs.TaskQueue, escapedTaskQueue, buildIdsFilter, statusFilter)
reachability.go
276
}
277