Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
CBroz1 committed Feb 7, 2024
1 parent 06a389b commit 216891a
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 10 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
- More robust caching of join to downstream tables. #806
- Overwrite datajoint `delete` method to use `cautious_delete`. #806
- Reverse join order for session summary. #821
- Add temporary logging of use to `common_usage`. #811, #821
- Add `deprecation_factory` to facilitate table migration. #717
- Add Spyglass logger. #730
- IntervalList: Add secondary key `pipeline` #742
Expand Down
32 changes: 22 additions & 10 deletions src/spyglass/utils/dj_mixin.py
Original file line number Diff line number Diff line change
Expand Up @@ -365,17 +365,29 @@ def _usage_table(self):

def _log_use(self, start, merge_deletes=None):
"""Log use of cautious_delete."""
self._usage_table.insert1(
dict(
duration=time() - start,
dj_user=dj.config["database.user"],
origin=self.full_table_name,
restriction=(
str(self.restriction)[:255] if self.restriction else "None"
),
merge_deletes=merge_deletes,
)
if isinstance(merge_deletes, QueryExpression):
merge_deletes = merge_deletes.fetch(as_dict=True)
safe_insert = dict(
duration=time() - start,
dj_user=dj.config["database.user"],
origin=self.full_table_name,
)
try:
self._usage_table.insert1(
dict(
**safe_insert,
restriction=(
"".join(self.restriction)[255:] # handle list
if self.restriction
else "None"
),
merge_deletes=merge_deletes,
)
)
except (DataJointError, DataError):
self._usage_table.insert1(
dict(**safe_insert, restriction="Unknown")
)

# TODO: Intercept datajoint delete confirmation prompt for merge deletes
def cautious_delete(self, force_permission: bool = False, *args, **kwargs):
Expand Down

0 comments on commit 216891a

Please sign in to comment.