fix concurrent upload failures (#4484)

This commit is contained in:
JinmingHu 2023-03-27 09:04:44 +08:00 committed by GitHub
parent ef5aec8b4c
commit 42017bf69e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 42 deletions

View File

@ -1737,23 +1737,14 @@ namespace Azure { namespace Storage { namespace Test {
for (int c : {1, 2, 4})
{
std::vector<std::future<void>> futures;
// random range
for (int i = 0; i < 16; ++i)
{
// random range
int64_t fileSize = RandomInt(1, 1_MB);
futures.emplace_back(
std::async(std::launch::async, testUploadFromBuffer, c, fileSize, 4_KB, 47_KB));
futures.emplace_back(
std::async(std::launch::async, testUploadFromFile, c, fileSize, 2_KB, 185_KB));
futures.emplace_back(
std::async(std::launch::async, testUploadFromBuffer, c, fileSize, 0, 117_KB));
futures.emplace_back(
std::async(std::launch::async, testUploadFromFile, c, fileSize, 0, 259_KB));
}
for (auto& f : futures)
{
f.get();
testUploadFromBuffer(c, fileSize, 4_KB, 47_KB);
testUploadFromFile(c, fileSize, 2_KB, 185_KB);
testUploadFromBuffer(c, fileSize, 0, 117_KB);
testUploadFromFile(c, fileSize, 0, 259_KB);
}
}
}

View File

@ -868,23 +868,14 @@ namespace Azure { namespace Storage { namespace Test {
for (int c : {1, 2, 4})
{
std::vector<std::future<void>> futures;
// random range
for (int i = 0; i < 16; ++i)
{
// random range
int64_t fileSize = RandomInt(1, 1_MB);
futures.emplace_back(
std::async(std::launch::async, testUploadFromBuffer, c, fileSize, 4_KB, 56_KB));
futures.emplace_back(
std::async(std::launch::async, testUploadFromFile, c, fileSize, 2_KB, 172_KB));
futures.emplace_back(
std::async(std::launch::async, testUploadFromBuffer, c, fileSize, 0, 109_KB));
futures.emplace_back(
std::async(std::launch::async, testUploadFromFile, c, fileSize, 0, 256_KB));
}
for (auto& f : futures)
{
f.get();
testUploadFromBuffer(c, fileSize, 4_KB, 56_KB);
testUploadFromFile(c, fileSize, 2_KB, 172_KB);
testUploadFromBuffer(c, fileSize, 0, 109_KB);
testUploadFromFile(c, fileSize, 0, 256_KB);
}
}
}

View File

@ -430,23 +430,14 @@ namespace Azure { namespace Storage { namespace Test {
for (int c : {1, 2, 4})
{
std::vector<std::future<void>> futures;
// random range
for (int i = 0; i < 16; ++i)
{
// random range
int64_t fileSize = RandomInt(1, 1_MB);
futures.emplace_back(
std::async(std::launch::async, testUploadFromBuffer, c, fileSize, 4_KB, 40_KB));
futures.emplace_back(
std::async(std::launch::async, testUploadFromFile, c, fileSize, 2_KB, 162_KB));
futures.emplace_back(
std::async(std::launch::async, testUploadFromBuffer, c, fileSize, 0, 127_KB));
futures.emplace_back(
std::async(std::launch::async, testUploadFromFile, c, fileSize, 0, 253_KB));
}
for (auto& f : futures)
{
f.get();
testUploadFromBuffer(c, fileSize, 4_KB, 40_KB);
testUploadFromFile(c, fileSize, 2_KB, 162_KB);
testUploadFromBuffer(c, fileSize, 0, 127_KB);
testUploadFromFile(c, fileSize, 0, 253_KB);
}
}
}