This is an automated email from the ASF dual-hosted git repository.

yuqi1129 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gravitino.git


The following commit(s) were added to refs/heads/main by this push:
     new c5b9affa41 [MINOR] docs(open-api): Document job list filter 
combination and missing-timestamp sorting (#12981)
c5b9affa41 is described below

commit c5b9affa41412eb7c89a8eb9b2cff2e00f920ff9
Author: Jerry Shao <[email protected]>
AuthorDate: Tue Sep 8 19:40:12 2026 +0800

    [MINOR] docs(open-api): Document job list filter combination and 
missing-timestamp sorting (#12981)
    
    ### What changes were proposed in this pull request?
    
    Clarify the `GET /metalakes/{metalake}/jobs/runs` query-parameter docs
    in
    `docs/open-api/jobs.yaml`:
    
    - `queuedAfter`, `startedAfter` and `finishedAfter` combine with AND
    semantics
      when more than one is supplied.
    - Jobs with no value for the selected `sortBy` timestamp always sort
    last, for
      both the `asc` and `desc` sort orders.
    
    ### Why are the changes needed?
    
    Clients need these rules to correctly construct requests and interpret
    sorted
    job-list responses. Both rules already match the server behaviour in
    `JobOperations`, but were not stated in the specification.
    
    ### Does this PR introduce _any_ user-facing change?
    
    No behaviour change; OpenAPI documentation only.
    
    ### How was this patch tested?
    
    `./gradlew :docs:build` (Redocly validation passes).
    
    ---------
    
    Co-authored-by: Claude Opus 5 <[email protected]>
---
 docs/open-api/jobs.yaml | 22 +++++++++++++++++-----
 1 file changed, 17 insertions(+), 5 deletions(-)

diff --git a/docs/open-api/jobs.yaml b/docs/open-api/jobs.yaml
index 7b7a75d6ab..7729301263 100644
--- a/docs/open-api/jobs.yaml
+++ b/docs/open-api/jobs.yaml
@@ -361,7 +361,9 @@ components:
       name: queuedAfter
       in: query
       description: >-
-        Only return jobs queued at or after this ISO-8601 instant (e.g. 
2026-08-18T00:00:00Z)
+        Only return jobs queued at or after this ISO-8601 instant (e.g. 
2026-08-18T00:00:00Z).
+        A job must satisfy all supplied time filters (AND semantics), so this 
combines with
+        one or more of startedAfter and finishedAfter
       required: false
       schema:
         type: string
@@ -371,7 +373,9 @@ components:
       in: query
       description: >-
         Only return jobs started at or after this ISO-8601 instant (e.g. 
2026-08-18T00:00:00Z).
-        Jobs that have not started yet are excluded
+        Jobs that have not started yet are excluded. A job must satisfy all 
supplied time
+        filters (AND semantics), so this combines with one or more of 
queuedAfter and
+        finishedAfter
       required: false
       schema:
         type: string
@@ -381,7 +385,9 @@ components:
       in: query
       description: >-
         Only return jobs finished at or after this ISO-8601 instant (e.g. 
2026-08-18T00:00:00Z).
-        Jobs that have not finished yet are excluded
+        Jobs that have not finished yet are excluded. A job must satisfy all 
supplied time
+        filters (AND semantics), so this combines with one or more of 
queuedAfter and
+        startedAfter
       required: false
       schema:
         type: string
@@ -389,7 +395,10 @@ components:
     sortBy:
       name: sortBy
       in: query
-      description: The field to sort the returned jobs by
+      description: >-
+        The field to sort the returned jobs by. Jobs with no value for the 
selected field
+        (e.g. jobs that have not started or finished yet) always sort last, 
for both the "asc"
+        and "desc" sort orders
       required: false
       schema:
         type: string
@@ -401,7 +410,10 @@ components:
     sortOrder:
       name: sortOrder
       in: query
-      description: The sort order for the returned jobs
+      description: >-
+        The sort order for the returned jobs. It only orders the jobs that 
have a value for the
+        selected sortBy field; jobs missing that value always sort last in 
both "asc" and "desc"
+        order
       required: false
       schema:
         type: string

Reply via email to