This repository was archived by the owner on Feb 23, 2026. It is now read-only.
Description PR #286 added support for showing error status details -- unfortunately, it also breaks Bigtable's unit tests :
___ Test_retry_read_rows_exception .test_w_deadline_exceeded_wrapped_in_grpc ____
self = < tests .unit .test_row_data .Test_retry_read_rows_exception testMethod = test_w_deadline_exceeded_wrapped_in_grpc >
def test_w_deadline_exceeded_wrapped_in_grpc (self ):
from google .api_core .exceptions import DeadlineExceeded
wrapped = DeadlineExceeded ("testing" )
exception = self ._make_grpc_call_error (wrapped )
> self .assertTrue (self ._call_fut (exception ))
tests / unit / test_row_data .py :324 :
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests / unit / test_row_data .py :268 : in _call_fut
return _retry_read_rows_exception (exc )
google / cloud / bigtable / row_data .py :333 : in _retry_read_rows_exception
exc = exceptions .from_grpc_error (exc )
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / google / api_core / exceptions .py :537 : in from_grpc_error
details = _parse_grpc_error_details (rpc_exc ),
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / google / api_core / exceptions .py :490 : in _parse_grpc_error_details
status = rpc_status .from_call (rpc_exc )
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / grpc_status / rpc_status .py :48 : in from_call
if call .trailing_metadata () is None :
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = TestingException (DeadlineExceeded ('testing' ))
@abc .abstractmethod
def trailing_metadata (self ):
"""Accesses the trailing metadata sent by the server.
This method blocks until the value is available.
Returns:
The trailing :term:`metadata`.
"""
> raise NotImplementedError ()
E NotImplementedError
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / grpc / __init__ .py :382 : NotImplementedError
__________ Test_retry_read_rows_exception .test_w_miss_wrapped_in_grpc __________
self = < tests .unit .test_row_data .Test_retry_read_rows_exception testMethod = test_w_miss_wrapped_in_grpc >
def test_w_miss_wrapped_in_grpc (self ):
from google .api_core .exceptions import Conflict
wrapped = Conflict ("testing" )
exception = self ._make_grpc_call_error (wrapped )
> self .assertFalse (self ._call_fut (exception ))
tests / unit / test_row_data .py :310 :
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests / unit / test_row_data .py :268 : in _call_fut
return _retry_read_rows_exception (exc )
google / cloud / bigtable / row_data .py :333 : in _retry_read_rows_exception
exc = exceptions .from_grpc_error (exc )
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / google / api_core / exceptions .py :537 : in from_grpc_error
details = _parse_grpc_error_details (rpc_exc ),
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / google / api_core / exceptions .py :490 : in _parse_grpc_error_details
status = rpc_status .from_call (rpc_exc )
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / grpc_status / rpc_status .py :48 : in from_call
if call .trailing_metadata () is None :
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = TestingException (Conflict ('testing' ))
@abc .abstractmethod
def trailing_metadata (self ):
"""Accesses the trailing metadata sent by the server.
This method blocks until the value is available.
Returns:
The trailing :term:`metadata`.
"""
> raise NotImplementedError ()
E NotImplementedError
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / grpc / __init__ .py :382 : NotImplementedError
__ Test_retry_read_rows_exception .test_w_service_unavailable_wrapped_in_grpc ___
self = < tests .unit .test_row_data .Test_retry_read_rows_exception testMethod = test_w_service_unavailable_wrapped_in_grpc >
def test_w_service_unavailable_wrapped_in_grpc (self ):
from google .api_core .exceptions import ServiceUnavailable
wrapped = ServiceUnavailable ("testing" )
exception = self ._make_grpc_call_error (wrapped )
> self .assertTrue (self ._call_fut (exception ))
tests / unit / test_row_data .py :317 :
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests / unit / test_row_data .py :268 : in _call_fut
return _retry_read_rows_exception (exc )
google / cloud / bigtable / row_data .py :333 : in _retry_read_rows_exception
exc = exceptions .from_grpc_error (exc )
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / google / api_core / exceptions .py :537 : in from_grpc_error
details = _parse_grpc_error_details (rpc_exc ),
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / google / api_core / exceptions .py :490 : in _parse_grpc_error_details
status = rpc_status .from_call (rpc_exc )
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / grpc_status / rpc_status .py :48 : in from_call
if call .trailing_metadata () is None :
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = TestingException (ServiceUnavailable ('testing' ))
@abc .abstractmethod
def trailing_metadata (self ):
"""Accesses the trailing metadata sent by the server.
This method blocks until the value is available.
Returns:
The trailing :term:`metadata`.
"""
> raise NotImplementedError ()
E NotImplementedError
.nox / unit - 3 - 9 / lib / python3 .9 / site - packages / grpc / __init__ .py :382 : NotImplementedError Reactions are currently unavailable
PR #286 added support for showing error status details -- unfortunately, it also breaks Bigtable's unit tests: