Closed
Description
Using SDK v1.3.1 on Ubuntu 14.04 compiled using gcc 4.94.
Here's the backtrace from gdb during the hang.
Vector<S3::Model::Object> S3Manager::list_objects()
{
//std::cout << "Objects in S3 bucket: " << m_bucket << std::endl;
S3::Model::ListObjectsV2Request objects_request;
objects_request.WithBucket(m_bucket);
auto list_objects_outcome = s3_client->ListObjectsV2(objects_request); ###this is where the hang occurs.
if (list_objects_outcome.IsSuccess())
{
return list_objects_outcome.GetResult().GetContents();
}
else
{
ios_log(ERROR, "listObjects error: %s %s", list_objects_outcome.GetError().GetExceptionName().c_str(), list_objects_outcome.GetError().GetMessage().c_str());
return Vector<S3::Model::Object>();
}
}
We are calling this code on a number of buckets in the init() of our library, and it completes successfully for the first two buckets which have local s3 endpoints.
The program this is being called from is single-threaded. Should I set the executor for s3_client to be single-threaded as well?