You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 88e5046
Browse filesBrowse the repository at this point in the historyBrowse files
The SDK's own errors carry gRPC-style codes, so a bad input reads as INVALID_ARGUMENT, not a worker bug
Four exception types in farm.query.vgi implement vgirpc's HasErrorCode
(WIRE_PROTOCOL §8) and subclass the JDK type each site threw before, so
existing catch clauses keep working. No error_kind is set.
- InvalidArgumentException (IllegalArgumentException, INVALID_ARGUMENT):
every ParameterExtractor constraint, ScalarFn's type-bound check, an
unparseable AT version/timestamp or unknown at_unit, an unsatisfiable
implementation_version / data_version_spec.
- NotFoundException (IllegalArgumentException, NOT_FOUND): unknown
function / aggregate / buffering function / scalar, a function not
registered in the requested catalog or schema, unknown table in
scan_function_get / scan_branches_get, InMemoryCatalog's missing
schema / table / view, an AT version the table does not have.
- ReadOnlyCatalogException (UnsupportedOperationException,
FAILED_PRECONDITION): DDL against a catalog that is not writable, from
VgiServiceImpl.requireHosted and CatalogInterface's default refusals.
- UnimplementedException (UnsupportedOperationException, UNIMPLEMENTED):
ADD/DROP COLUMN, which no catalog this SDK hosts supports.
The example worker's double() type rejection throws
InvalidArgumentException too, so both cross-SDK cases in
unary_error_propagation.test (double('abc') and sequence(10,
batch_size := 0)) now answer INVALID_ARGUMENT. Messages are unchanged.
JavaWorkerHttpConformanceTest asserts the decoded error_code end to end
through the vgi-rpc HTTP client for those two cases, an unknown function
(NOT_FOUND) and DDL on the read-only example catalog
(FAILED_PRECONDITION); SdkErrorCodesTest pins each type's code.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
0 commit comments