Merge pull request #22238 from mvdbeek/fix-history-purge-timestamp

[26.0] Fix batch history purge not updating user's update_time
This commit is contained in:
Nicola Soranzo
2026-03-24 11:06:50 +00:00
committed by GitHub
3 changed files with 10 additions and 1 deletions
+4
View File
@@ -46,6 +46,7 @@ from galaxy.model import (
Job,
User,
)
from galaxy.model.orm.now import now
from galaxy.model.scoped_session import galaxy_scoped_session
from galaxy.objectstore import BaseObjectStore
from galaxy.objectstore.caching import check_caches
@@ -168,6 +169,9 @@ def purge_history_datasets(
user = history.user
if user:
user.calculate_and_set_disk_usage(object_store)
if not request.preserve_owner_update_time:
user.update_time = now()
sa_session.commit()
# Remove underlying dataset files from object store
dataset_manager.purge_datasets(PurgeDatasetsTaskRequest(dataset_ids=dataset_ids))
+5 -1
View File
@@ -296,7 +296,11 @@ class HistoryManager(sharable.SharableModelManager[model.History], deletable.Pur
if self.app.config.enable_celery_tasks:
from galaxy.celery.tasks import purge_history_datasets
request = PurgeHistoryDatasetsTaskRequest(history_id=item.id)
preserve_owner_update_time = kwargs.get("preserve_owner_update_time", False)
request = PurgeHistoryDatasetsTaskRequest(
history_id=item.id,
preserve_owner_update_time=preserve_owner_update_time,
)
user = item.user
result = purge_history_datasets.delay(request=request, task_user_id=user.id if user else None)
else:
+1
View File
@@ -141,6 +141,7 @@ class PurgeDatasetsTaskRequest(Model):
class PurgeHistoryDatasetsTaskRequest(Model):
history_id: int
preserve_owner_update_time: bool = False
class TaskState(str, Enum):