Skip to content

Commit

Permalink
delete s3v2, add ess and essv2, add mprepare and mfilewrite in ess an…
Browse files Browse the repository at this point in the history
…d essv2
  • Loading branch information
wanghx committed Feb 18, 2022
1 parent b365dac commit 2bc3ae9
Show file tree
Hide file tree
Showing 208 changed files with 2,270 additions and 2,357 deletions.
15 changes: 9 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
*.class
#dist/osgi/plugins/cosbench*.jar
dist/osgi/plugins/cosbench*.jar

# Package Files #
#/0.3.0.10
#/0.3.0.8
#/0.3.0.9
#/META-INF
#/OSGI-INF
/0.3.0.10
/0.3.0.8
/0.3.0.9
/META-INF
/OSGI-INF

# other files #
about-git-ehualu.md
34 changes: 33 additions & 1 deletion CHANGELOG-ehualu
Original file line number Diff line number Diff line change
@@ -1,4 +1,36 @@

COSBench 0.4.7.6(ehualu 2022.02.14)
------------------------------------
- #300: Refactor: s3 and s3v2 will not be supported, so s3v2 was deleted, add ess and essv2.
e.g: <storage type="ess" config="endpoint=xxx" />
e.g: <storage type="essv2" config="endpoint=xxx" />

Notice:
if need new features, please use ess/essv2, thanks.
ess means e-SuperStor(s3), ^_^
ess use aws-sdk-java(version is 1.12.158 now)
essv2 use aws-sdk-java-v2(version is 2.17.129)

ess/essv2 storage Features:
no_verify_ssl: <storage type="ess" config="no_verify_ssl=true;...other config..."/>
storage_class: <storage type="ess" config="storage_class="GLACIER";...other config..."/>
Restore object: <operation type="restore" ...>
<storage type="ess" config="restore_days=1;...path_style_access=true;timeout=100000"/>
Multipart upload: <operation type="mwrite" ...>
<storage type="s3" config="part_size=5242880;...path_style_access=true;timeout=100000"/>
Support GiB,MiB,KiB(2^n,not 10^n):
<operation type="write" ratio="100" config="cprefix=xx;containers=c(1);oprefix=xx;objects=s(1,10);sizes=c(4)KiB" />
Head object: <operation type="head" ...>
mprepare, multipart upload object at prepare stage.
mfilewrite, multipart upload object at filewrite stage.

ess Features special:
prefetch and range read: please read s3-config-prefetch-sample.xml and s3-config-range-sample.xml in the config dir.

essv2 Features special::
aws_region: <storage type="essv2" config="endpoint=xxx;aws_region=us-east-1" />
default is us-east-1


COSBench 0.4.7.5(ehualu 2021.10.30)
------------------------------------
Expand Down Expand Up @@ -62,5 +94,5 @@

COSBench 0.4.7(ehualu 2020.11.23)
------------------------------------
- #280: Coding start here.
- #280: Coding start.

2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Copyright 2013 Intel Corporation, All Rights Reserved.
Copyright 2019 OpenIO Corporation, All Rights Reserved.
Copyright 2021 EHualu Corporation, All Rights Reserved.
Copyright 2021-2022 eHualu Corporation, All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
26 changes: 17 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,27 @@ Amazon S3 and Openstack* swift are well-known object storage solutions.
COSBench now supports OpenStack* Swift, Amazon* S3, OpenIO*, Amplidata v2.3, 2.5 and 3.1, Scality*, Ceph, CDMI, Google* Cloud Storage, Aliyun OSS as well as custom adaptors.


New features(Usage, pls read CHANGELOG-ehualu, thanks.)
New features for ess and essv2(Usage, please refer to conf/ehualu-config-sample.xml, thanks.)
----------------------------------------
- aws_region parameter for s3v2.
- New feature from bissenbay/s3-range-and-prefetch, thanks for this PR.
- head object
- s3v2(same to s3 except sdk version: s3v2 is aws-sdk-java-v2.)
- mprepare, multipart upload object at prepare stage.
- mfilewrite, multipart upload object at filewrite stage.
- aws_region parameter for essv2.
- New feature from bissenbay/s3-range-and-prefetch, thanks for this PR(only for ess, please read conf/s3-config-prefetch-sample.xml and conf/s3-config-range-sample.xml).
- Head object
- GiB, MiB, KiB: Now GB is 10^n, GiB is 2^n.
- Multipart upload: Add Multipart upload method and part_size parameter: You can set it now. Default is 5MiB.
- Restore Object: Add Restore method and restore_days parameter: restore_days. You can set it now. Default is 1.
- StorageClass: Now you can set object's storageclass.
- HTTPS: If want to disable verify SSL, please set no_verify_ssl to true.
- StorageClass: Now you can set object's storageclass. Default is STANDARD.
- HTTPS: If want to disable verify SSL, please set no_verify_ssl to true. Default is false.


eHualu - Notice
----------------------------------------
- s3v2 was deleted(essv2 instead), s3 is no longer actively maintained.
- if need new features, please use ess/essv2, thanks.
- ess means e-SuperStor(s3)
- ess use aws-sdk-java(now, version is 1.12.158)
- essv2 use aws-sdk-java-v2(now, version is 2.17.129)


Important Notice and Contact Information
Expand All @@ -30,8 +40,6 @@ the need to invest enough effort to learn how to use it effectively and to addre
b) To help COSBench develop further, please become an active member of the community and consider giving back by making
contributions.

For other questions, contact [email protected].


Licensing
---------
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.4.7.5
0.4.7.6
2 changes: 1 addition & 1 deletion dev/cosbench-ampli/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Cosbench Ampli Client Bundle
Bundle-SymbolicName: cosbench-ampli
Bundle-Version: 0.4.7.5
Bundle-Version: 0.4.7.6
Bundle-Vendor: intel
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.intel.cosbench.api.context,
Expand Down
2 changes: 1 addition & 1 deletion dev/cosbench-api/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: COSBench API Bundle
Bundle-SymbolicName: cosbench-api
Bundle-Version: 0.4.7.5
Bundle-Version: 0.4.7.6
Bundle-Vendor: intel
Bundle-RequiredExecutionEnvironment: JavaSE-1.8,
JavaSE-1.6
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@

package com.intel.cosbench.api.context;

import java.time.Duration;
import java.util.*;

public class Context {
Expand Down
2 changes: 1 addition & 1 deletion dev/cosbench-castor/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: COSBench Castor Configuration Bundle
Bundle-SymbolicName: cosbench-castor
Bundle-Version: 0.4.7.5
Bundle-Version: 0.4.7.6
Bundle-Vendor: intel
Fragment-Host: com.springsource.org.castor;bundle-version="[1.2.0,2.0.0)"
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Expand Down
2 changes: 1 addition & 1 deletion dev/cosbench-cdmi-base/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: CDMI Base Client Bundle
Bundle-SymbolicName: cosbench-cdmi-base
Bundle-Version: 0.4.7.5
Bundle-Version: 0.4.7.6
Bundle-Vendor: intel
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.intel.cosbench.api.auth,
Expand Down
2 changes: 1 addition & 1 deletion dev/cosbench-cdmi-swift/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: CDMI Client for Swift Bundle
Bundle-SymbolicName: cosbench-cdmi-swift
Bundle-Version: 0.4.7.5
Bundle-Version: 0.4.7.6
Bundle-Vendor: intel
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.intel.cosbench.api.auth,
Expand Down
2 changes: 1 addition & 1 deletion dev/cosbench-cdmi-util/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: CDMI Utility Bundle
Bundle-SymbolicName: cosbench-cdmi-util
Bundle-Version: 0.4.7.5
Bundle-Version: 0.4.7.6
Bundle-Vendor: intel
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Export-Package: com.intel.cosbench.client.cdmi.util
Expand Down
2 changes: 1 addition & 1 deletion dev/cosbench-config/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: COSBench Config Bundle
Bundle-SymbolicName: cosbench-config
Bundle-Version: 0.4.7.5
Bundle-Version: 0.4.7.6
Bundle-Vendor: intel
Bundle-RequiredExecutionEnvironment: JavaSE-1.8,
JavaSE-1.6
Expand Down
43 changes: 37 additions & 6 deletions dev/cosbench-config/src/com/intel/cosbench/config/Work.java
Original file line number Diff line number Diff line change
Expand Up @@ -274,6 +274,27 @@ private void toPrepareWork() {
op.setConfig(StringUtils.join(cfgs, ';'));
setOperations(Collections.singletonList(op));
}

// 2022.2.18, sine
private void toMPrepareWork() {
if (name == null)
name = "mprepare";
setDivision("object");
setRuntime(0);
setDefaultAfr(0);
setTotalBytes(0);
setTotalOps(getWorkers());
Operation op = new Operation();
op.setType("mprepare");
op.setRatio(100);
Object[] cfgs = null;
if (config.indexOf("createContainer=") < 0)
cfgs = new Object[] { "createContainer=false", config };
else
cfgs = new Object[] { config };
op.setConfig(StringUtils.join(cfgs, ';'));
setOperations(Collections.singletonList(op));
}

private void toCleanupWork() {
if (name == null)
Expand Down Expand Up @@ -349,18 +370,28 @@ private void setDefaultAfr(int def) {
}

public void validate() {
if (type.equals("prepare"))
if (type.equals("prepare")) {
toPrepareWork();
else if (type.equals("cleanup"))
}
else if (type.equals("mprepare")) { // 2022.2.18, sine
toMPrepareWork();
}
else if (type.equals("cleanup")) {
toCleanupWork();
else if (type.equals("init"))
}
else if (type.equals("init")) {
toInitWork();
else if (type.equals("dispose"))
}
else if (type.equals("dispose")) {
toDisposeWork();
else if (type.equals("delay"))
}
else if (type.equals("delay")) {
toDelayWork();
else
}
else {
setDefaultAfr(200000);
}

setName(getName());
setWorkers(getWorkers());
if (runtime == 0 && totalOps == 0 && totalBytes == 0)
Expand Down
2 changes: 1 addition & 1 deletion dev/cosbench-controller-web/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Web-ContextPath: controller
Bundle-ManifestVersion: 2
Bundle-Name: COSBench Controller Web Bundle
Bundle-SymbolicName: cosbench-controller-web
Bundle-Version: 0.4.7.5
Bundle-Version: 0.4.7.6
Bundle-Vendor: intel
Bundle-RequiredExecutionEnvironment: JavaSE-1.8,
JavaSE-1.6
Expand Down
2 changes: 1 addition & 1 deletion dev/cosbench-controller-web/WEB-INF/freemarker/footer.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<div class="content">
<div>
<center>
<span>Intel Corporation | EHualu Corporation</span>
<span>Intel Corporation | eHualu Corporation(Contact me via WeChat: SineCelia)</span>
</center>
</div>
</div> <#-- end of content -->
Expand Down
Binary file added dev/cosbench-controller-web/favicon.ico
Binary file not shown.
Loading

0 comments on commit 2bc3ae9

Please sign in to comment.