ory/hydra · error
ErrUnknownOrder
ErrUnknownOrder
Error message
unknown order
What it means
Returned by Order.extract when the Order value is neither OrderAscending ("ASC") nor OrderDescending ("DESC"). It signals a programmer error: an Order was constructed from an unvalidated string, so the SQL comparison operator (< or >) for keyset pagination cannot be determined.
Source
Thrown at oryx/pagination/keysetpagination/paginator.go:32
type (
Item = interface{ PageToken() PageToken }
Order string
columnOrdering struct {
name string
order Order
}
Paginator struct {
token, defaultToken PageToken
size, defaultSize, maxSize int
isLast bool
additionalColumn columnOrdering
}
Option func(*Paginator) *Paginator
)
var ErrUnknownOrder = errors.New("unknown order")
const (
OrderDescending Order = "DESC"
OrderAscending Order = "ASC"
DefaultSize = 100
DefaultMaxSize = 500
)
func (o Order) extract() (string, string, error) {
switch o {
case OrderAscending:
return ">", string(o), nil
case OrderDescending:
return "<", string(o), nil
default:
return "", "", ErrUnknownOrder
}View on GitHub (pinned to 4174065ffb)
Solutions
- Set the ordering to keysetpagination.OrderAscending or OrderDescending
- If the order comes from user input, validate it against the known constants before building the Paginator
- Propagate ErrUnknownOrder to the caller so it can be mapped to a 400 bad request
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at oryx/pagination/keysetpagination/paginator.go:32 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ory/hydra@4174065ffb (2026-09-03).
Data as JSON: /api/errors/be813730d78dd1c4.
Report an issue: GitHub.