mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-10-30 18:13:23 +08:00
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:
@@ -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))
|
||||
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -141,6 +141,7 @@ class PurgeDatasetsTaskRequest(Model):
|
||||
|
||||
class PurgeHistoryDatasetsTaskRequest(Model):
|
||||
history_id: int
|
||||
preserve_owner_update_time: bool = False
|
||||
|
||||
|
||||
class TaskState(str, Enum):
|
||||
|
||||
Reference in New Issue
Block a user