Skip to content

Commit

Permalink
Prevent exception chaining (#705)
Browse files Browse the repository at this point in the history
The exceptions we raise off botocore exceptions contain all the required information, so chaining the botocore exception (in Python 3) just results in noisier logs.
  • Loading branch information
ikonst committed Oct 7, 2019
1 parent 921392d commit cf98a35
Showing 1 changed file with 17 additions and 17 deletions.
34 changes: 17 additions & 17 deletions pynamodb/connection/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -544,10 +544,10 @@ def get_meta_table(self, table_name, refresh=False):
data = self.dispatch(DESCRIBE_TABLE, operation_kwargs)
self._tables[table_name] = MetaTable(data.get(TABLE_KEY))
except BotoCoreError as e:
raise TableError("Unable to describe table: {}".format(e), e)
six.raise_from(TableError("Unable to describe table: {}".format(e), e), None)
except ClientError as e:
if 'ResourceNotFound' in e.response['Error']['Code']:
raise TableDoesNotExist(e.response['Error']['Message'])
six.raise_from(TableDoesNotExist(e.response['Error']['Message']), None)
else:
raise
return self._tables[table_name]
Expand Down Expand Up @@ -631,7 +631,7 @@ def create_table(self,
try:
data = self.dispatch(CREATE_TABLE, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise TableError("Failed to create table: {}".format(e), e)
six.raise_from(TableError("Failed to create table: {}".format(e), e), None)
return data

def update_time_to_live(self, table_name, ttl_attribute_name):
Expand All @@ -648,7 +648,7 @@ def update_time_to_live(self, table_name, ttl_attribute_name):
try:
return self.dispatch(UPDATE_TIME_TO_LIVE, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise TableError("Failed to update TTL on table: {}".format(e), e)
six.raise_from(TableError("Failed to update TTL on table: {}".format(e), e), None)

def delete_table(self, table_name):
"""
Expand All @@ -660,7 +660,7 @@ def delete_table(self, table_name):
try:
data = self.dispatch(DELETE_TABLE, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise TableError("Failed to delete table: {}".format(e), e)
six.raise_from(TableError("Failed to delete table: {}".format(e), e), None)
return data

def update_table(self,
Expand Down Expand Up @@ -697,7 +697,7 @@ def update_table(self,
try:
return self.dispatch(UPDATE_TABLE, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise TableError("Failed to update table: {}".format(e), e)
six.raise_from(TableError("Failed to update table: {}".format(e), e), None)

def list_tables(self, exclusive_start_table_name=None, limit=None):
"""
Expand All @@ -715,7 +715,7 @@ def list_tables(self, exclusive_start_table_name=None, limit=None):
try:
return self.dispatch(LIST_TABLES, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise TableError("Unable to list tables: {}".format(e), e)
six.raise_from(TableError("Unable to list tables: {}".format(e), e), None)

def describe_table(self, table_name):
"""
Expand Down Expand Up @@ -906,7 +906,7 @@ def delete_item(self,
try:
return self.dispatch(DELETE_ITEM, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise DeleteError("Failed to delete item: {}".format(e), e)
six.raise_from(DeleteError("Failed to delete item: {}".format(e), e), None)

def update_item(self,
table_name,
Expand Down Expand Up @@ -936,7 +936,7 @@ def update_item(self,
try:
return self.dispatch(UPDATE_ITEM, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise UpdateError("Failed to update item: {}".format(e), e)
six.raise_from(UpdateError("Failed to update item: {}".format(e), e), None)

def put_item(self,
table_name,
Expand Down Expand Up @@ -964,7 +964,7 @@ def put_item(self,
try:
return self.dispatch(PUT_ITEM, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise PutError("Failed to put item: {}".format(e), e)
six.raise_from(PutError("Failed to put item: {}".format(e), e), None)

def _get_transact_operation_kwargs(self,
client_request_token=None,
Expand Down Expand Up @@ -1015,7 +1015,7 @@ def transact_write_items(self,
try:
return self.dispatch(TRANSACT_WRITE_ITEMS, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise TransactWriteError("Failed to write transaction items", e)
six.raise_from(TransactWriteError("Failed to write transaction items", e), None)

def transact_get_items(self, get_items, return_consumed_capacity=None):
"""
Expand All @@ -1029,7 +1029,7 @@ def transact_get_items(self, get_items, return_consumed_capacity=None):
try:
return self.dispatch(TRANSACT_GET_ITEMS, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise TransactGetError("Failed to get transaction items", e)
six.raise_from(TransactGetError("Failed to get transaction items", e), None)

def batch_write_item(self,
table_name,
Expand Down Expand Up @@ -1067,7 +1067,7 @@ def batch_write_item(self,
try:
return self.dispatch(BATCH_WRITE_ITEM, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise PutError("Failed to batch write items: {}".format(e), e)
six.raise_from(PutError("Failed to batch write items: {}".format(e), e), None)

def batch_get_item(self,
table_name,
Expand Down Expand Up @@ -1106,7 +1106,7 @@ def batch_get_item(self,
try:
return self.dispatch(BATCH_GET_ITEM, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise GetError("Failed to batch get items: {}".format(e), e)
six.raise_from(GetError("Failed to batch get items: {}".format(e), e), None)

def get_item(self,
table_name,
Expand All @@ -1127,7 +1127,7 @@ def get_item(self,
try:
return self.dispatch(GET_ITEM, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise GetError("Failed to get item: {}".format(e), e)
six.raise_from(GetError("Failed to get item: {}".format(e), e), None)

def scan(self,
table_name,
Expand Down Expand Up @@ -1177,7 +1177,7 @@ def scan(self,
try:
return self.dispatch(SCAN, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise ScanError("Failed to scan table: {}".format(e), e)
six.raise_from(ScanError("Failed to scan table: {}".format(e), e), None)

def query(self,
table_name,
Expand Down Expand Up @@ -1268,7 +1268,7 @@ def query(self,
try:
return self.dispatch(QUERY, operation_kwargs)
except BOTOCORE_EXCEPTIONS as e:
raise QueryError("Failed to query items: {}".format(e), e)
six.raise_from(QueryError("Failed to query items: {}".format(e), e), None)

def _check_condition(self, name, condition):
if condition is not None:
Expand Down

0 comments on commit cf98a35

Please sign in to comment.