more result_stdout_text defer optimization for inventory updates

see: https://github.com/ansible/ansible-tower/issues/7568
This commit is contained in:
Ryan Petrello 2017-09-14 13:52:09 -04:00
parent 1bb6c17fe2
commit 7a958a1af1
No known key found for this signature in database
GPG Key ID: F2AA5F2122351777
3 changed files with 8 additions and 0 deletions

View File

@ -2670,6 +2670,12 @@ class InventoryUpdateList(ListAPIView):
model = InventoryUpdate
serializer_class = InventoryUpdateListSerializer
def get_queryset(self):
qs = super(InventoryUpdateList, self).get_queryset()
# TODO: remove this defer in 3.3 when we implement https://github.com/ansible/ansible-tower/issues/5436
qs = qs.defer('result_stdout_text')
return qs
class InventoryUpdateDetail(UnifiedJobDeletionMixin, RetrieveDestroyAPIView):

View File

@ -2084,6 +2084,7 @@ class UnifiedJobAccess(BaseAccess):
# 'job_template__project',
# 'job_template__credential',
#)
# TODO: remove this defer in 3.3 when we implement https://github.com/ansible/ansible-tower/issues/5436
qs = qs.defer('result_stdout_text')
return qs.all()

View File

@ -147,6 +147,7 @@ activity_stream_registrar.connect(WorkflowJob)
prevent_search(User._meta.get_field('password'))
# Always, always, always defer result_stdout_text for polymorphic UnifiedJob rows
# TODO: remove this defer in 3.3 when we implement https://github.com/ansible/ansible-tower/issues/5436
def defer_stdout(f):
def _wrapped(*args, **kwargs):
objs = f(*args, **kwargs)