lordgamez opened a new pull request #1031:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1031
Previously S3 wrappers had the client configuration and the S3 credentials
as part of their internal state. Because of this S3 requests could not be run
parallel as two parallel S3 calls may have used separate client configurations.
Removing the internal state and passing client configuration and credentials to
the S3 client for each call allows us to have overlapping S3 requests.
Another issue encountered was that the Aws::S3::ClientConfigration
constructor tries to make some curl calls to retrieve some metadata from the
EC2 instance. If we do not use the S3 processor in an EC2 environment these
calls hang and fail every time a new object is created. To minimize these calls
we create a single ClientConfiguration for each S3 processor and copy the
configuration in each S3 client call, modifying the call specific members only.
This way the EC2 calls only occur on startup.
---------------------------------------
Thank you for submitting a contribution to Apache NiFi - MiNiFi C++.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
### For all changes:
- [ ] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?
- [ ] Does your PR title start with MINIFICPP-XXXX where XXXX is the JIRA
number you are trying to resolve? Pay particular attention to the hyphen "-"
character.
- [ ] Has your PR been rebased against the latest commit within the target
branch (typically main)?
- [ ] Is your initial contribution a single, squashed commit?
### For code changes:
- [ ] If adding new dependencies to the code, are these dependencies
licensed in a way that is compatible for inclusion under [ASF
2.0](http://www.apache.org/legal/resolved.html#category-a)?
- [ ] If applicable, have you updated the LICENSE file?
- [ ] If applicable, have you updated the NOTICE file?
### For documentation related changes:
- [ ] Have you ensured that format looks appropriate for the output in which
it is rendered?
### Note:
Please ensure that once the PR is submitted, you check GitHub Actions CI
results for build issues and submit an update to your PR as soon as possible.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]