Skip to content

Commit 79f4177

Browse files
committed
CLOUDSTACK-9628: Use correct virtualsize with Swift as secondary storage
1 parent 7da9517 commit 79f4177

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

services/secondary-storage/server/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1585,19 +1585,28 @@ Map<String, TemplateProp> swiftListTemplate(SwiftTO swift) {
15851585
String line = null;
15861586
String uniqName = null;
15871587
Long size = null;
1588+
Long physicalSize = null;
15881589
String name = null;
15891590
while ((line = brf.readLine()) != null) {
15901591
if (line.startsWith("uniquename=")) {
15911592
uniqName = line.split("=")[1];
15921593
} else if (line.startsWith("size=")) {
1594+
physicalSize = Long.parseLong(line.split("=")[1]);
1595+
} else if (line.startsWith("virtualsize=")){
15931596
size = Long.parseLong(line.split("=")[1]);
15941597
} else if (line.startsWith("filename=")) {
15951598
name = line.split("=")[1];
15961599
}
15971600
}
1601+
1602+
//fallback
1603+
if (size == null) {
1604+
size = physicalSize;
1605+
}
1606+
15981607
tempFile.delete();
15991608
if (uniqName != null) {
1600-
TemplateProp prop = new TemplateProp(uniqName, container + File.separator + name, size, size, true, false);
1609+
TemplateProp prop = new TemplateProp(uniqName, container + File.separator + name, size, physicalSize, true, false);
16011610
tmpltInfos.put(uniqName, prop);
16021611
}
16031612
} catch (IOException ex)
@@ -1615,7 +1624,6 @@ Map<String, TemplateProp> swiftListTemplate(SwiftTO swift) {
16151624
}
16161625
}
16171626
return tmpltInfos;
1618-
16191627
}
16201628

16211629
Map<String, TemplateProp> s3ListTemplate(S3TO s3) {

0 commit comments

Comments
 (0)