Bug 1904681
| Summary: | "fetch the archive" play from tripleo-transfer is not reliable for huge files | ||
|---|---|---|---|
| Product: | Red Hat OpenStack | Reporter: | Alex Stupnikov <astupnik> |
| Component: | tripleo-ansible | Assignee: | Jose Luis Franco <jfrancoa> |
| Status: | CLOSED DUPLICATE | QA Contact: | Joe H. Rahme <jhakimra> |
| Severity: | high | Docs Contact: | |
| Priority: | medium | ||
| Version: | 16.1 (Train) | CC: | aschultz, ccamacho, gchamoul, jpretori, ljozsa, msufiyan, nweinber, sgolovat |
| Target Milestone: | z4 | Keywords: | Triaged |
| Target Release: | 16.1 (Train on RHEL 8.2) | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2021-01-21 16:46:09 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
Alex Stupnikov
2020-12-05 14:42:43 UTC
Hello Alex, Your modification was correct, as stated in the Ansible docs: https://docs.ansible.com/ansible/latest/collections/ansible/builtin/fetch_module.html When running fetch with become, the ansible.builtin.slurp module will also be used to fetch the contents of the file for determining the remote checksum. This effectively doubles the transfer size, and depending on the file size can consume all available memory on the remote or local hosts causing a MemoryError. Due to this it is advisable to run this module without become whenever possible. I have accessed PSI's Undercloud and got the modifications which were performed in the role tasks: [jfrancoa@localhost tripleo-ansible]$ diff roles/tripleo-transfer/tasks/main.yml ~/tripleo-transfer-main.yml 1,17d0 < --- < # Copyright 2019 Red Hat, Inc. < # All Rights Reserved. < # < # Licensed under the Apache License, Version 2.0 (the "License"); you may < # not use this file except in compliance with the License. You may obtain < # a copy of the License at < # < # http://www.apache.org/licenses/LICENSE-2.0 < # < # Unless required by applicable law or agreed to in writing, software < # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT < # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the < # License for the specific language governing permissions and limitations < # under the License. < < 33c16,18 < mode: 0700 --- > # changed just in case: > #mode: 0700 > mode: 0777 57a43,50 > - name: change ownership of archive > # added this play just in case > file: > name: "{{ tripleo_transfer_tempfile.path }}" > mode: 0777 > become: "{{ tripleo_transfer_src_become }}" > delegate_to: "{{ tripleo_transfer_src_host }}" > 58a52 > # we removed become here because of known issue with fetch and become (check BZ) 63d56 < become: "{{ tripleo_transfer_src_become }}" 103a97,99 > # (Added by Alex) added become and delegate_to because of selinux failure > become: "{{ tripleo_transfer_src_become }}" > delegate_to: localhost I will submit a patch based on the modifications done. Thank you for this update and resolving the problem! We will be handling this issue in https://bugzilla.redhat.com/show_bug.cgi?id=1916162 as it solves the problem with the large DB at the same time it improves the whole DB transfer. *** This bug has been marked as a duplicate of bug 1916162 *** |