This change resets provider credentials during runtime initialization even when passed in provider creds are null. Previously, when a lambda container was reused and passed in credentials were null, we would use the same credentials from the previous request.
In the extensive logging I added to verify the issue and test the fix, I also found a bug whereby every time we invoke, we add the lambda logger to the platformProxyLogger, which causes us to log any messages on that logger X number of times, where X is the number of the times the lambda container was reused. I made the 1 line change to ensure that we only log messages once.
Testing
Verified issue and tested by uploading the jar to a function on the lambda console and logging the credentials used (those log statements have been removed from this PR of course).
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Issue #, if available:
Description of changes:
Change
This change resets provider credentials during runtime initialization even when passed in provider creds are null. Previously, when a lambda container was reused and passed in credentials were null, we would use the same credentials from the previous request.
In the extensive logging I added to verify the issue and test the fix, I also found a bug whereby every time we invoke, we add the lambda logger to the platformProxyLogger, which causes us to log any messages on that logger X number of times, where X is the number of the times the lambda container was reused. I made the 1 line change to ensure that we only log messages once.
Testing
Verified issue and tested by uploading the jar to a function on the lambda console and logging the credentials used (those log statements have been removed from this PR of course).
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.