Skip to content

Commit bf93957

Browse files
authored
RMS-8495: Komprise Memory leak (#618)
* ApacheHTTP enforce TLS1.2 * Fixed every instance the profiler found * Fix cross-jdk issue * remove dead code
1 parent 057295b commit bf93957

File tree

413 files changed

+528
-672
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

413 files changed

+528
-672
lines changed

ds3-metadata/src/main/java/com/spectralogic/ds3client/metadata/AbstractMetadataRestore.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -86,10 +86,10 @@ public void restoreOSName() {
8686
* @param lastModifiedTime modified time got from server
8787
* @param lastAccessedTime last aceess time got from server
8888
*/
89-
private void setFileTimes(final String filePath,
90-
final String creationTime,
91-
final String lastModifiedTime,
92-
final String lastAccessedTime)
89+
private static void setFileTimes(final String filePath,
90+
final String creationTime,
91+
final String lastModifiedTime,
92+
final String lastAccessedTime)
9393
throws IOException
9494
{
9595
final BasicFileAttributeView attributes = Files.getFileAttributeView(Paths.get(filePath), BasicFileAttributeView.class);

ds3-metadata/src/main/java/com/spectralogic/ds3client/metadata/MACMetadataRestore.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ public void restoreFileTimes() throws IOException, InterruptedException {
7777
* @param objectName path of the object where we need to restore
7878
* @param creationTime creation time got from server
7979
*/
80-
private void restoreCreationTimeMAC(final String objectName, final String creationTime) throws IOException, InterruptedException {
80+
private static void restoreCreationTimeMAC(final String objectName, final String creationTime) throws IOException, InterruptedException {
8181
final ProcessBuilder processBuilder = new ProcessBuilder("touch", "-t", getDate(Long.parseLong(creationTime), "YYYYMMddHHmm"), objectName);
8282
final Process process = processBuilder.start();
8383
//Wait to get exit value
@@ -94,7 +94,7 @@ private void restoreCreationTimeMAC(final String objectName, final String creati
9494
* @param objectName path of the object where we need to restore
9595
* @param modifiedTime modified time need to restore
9696
*/
97-
private void restoreModifiedTimeMAC(final String objectName, final String modifiedTime) throws IOException, InterruptedException {
97+
private static void restoreModifiedTimeMAC(final String objectName, final String modifiedTime) throws IOException, InterruptedException {
9898
final ProcessBuilder processBuilder = new ProcessBuilder("touch", "-mt", getDate(Long.parseLong(modifiedTime), "YYYYMMddHHmm"), objectName);
9999
final Process process = processBuilder.start();
100100

ds3-metadata/src/main/java/com/spectralogic/ds3client/metadata/MetadataAccessImpl.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,11 @@ public Map<String, String> getMetadataValue(final String filename) {
7777
* @param file local path of file
7878
* @return map builder containing the data to be stored on server
7979
*/
80-
private ImmutableMap<String, String> storeMetaData(final Path file) throws IOException {
80+
private static ImmutableMap<String, String> storeMetaData(final Path file) throws IOException {
8181
final ImmutableMap.Builder<String, String> builder = ImmutableMap.builder();
8282

8383
//get metadata store based on os type
84-
final MetadataStore metadataStore = new MetadataStoreFactory().getOsSpecificMetadataStore(builder);
84+
final MetadataStore metadataStore = MetadataStoreFactory.getOsSpecificMetadataStore(builder);
8585
metadataStore.saveOSMetaData(MetaDataUtil.getOS());
8686

8787
final BasicFileAttributes attr = Files.readAttributes(file, BasicFileAttributes.class);

ds3-metadata/src/main/java/com/spectralogic/ds3client/metadata/MetadataReceivedListenerImpl.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -73,12 +73,12 @@ public void metadataReceived(final String filename, final Metadata metadata) {
7373
* @param objectName name of the file to be restored
7474
* @param metadata metadata which needs to be set on local file
7575
*/
76-
private void restoreMetaData(final String objectName, final Metadata metadata) throws IOException, InterruptedException {
76+
private static void restoreMetaData(final String objectName, final Metadata metadata) throws IOException, InterruptedException {
7777

7878
final ImmutableList.Builder<Throwable> exceptionBuilder = ImmutableList.builder();
7979

8080
//get metadatarestore on the basis of os
81-
final MetadataRestore metadataRestore = new MetadataRestoreFactory().getOSSpecificMetadataRestore(metadata, objectName);
81+
final MetadataRestore metadataRestore = MetadataRestoreFactory.getOSSpecificMetadataRestore(metadata, objectName);
8282
//restore os name
8383
metadataRestore.restoreOSName();
8484

ds3-metadata/src/main/java/com/spectralogic/ds3client/metadata/MetadataRestoreFactory.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222

2323
public class MetadataRestoreFactory {
24-
public MetadataRestore getOSSpecificMetadataRestore(final Metadata metadata, final String filePath) {
24+
public static MetadataRestore getOSSpecificMetadataRestore(final Metadata metadata, final String filePath) {
2525
final String localOS = MetaDataUtil.getOS();
2626

2727
if (Platform.isWindows()) {

ds3-metadata/src/main/java/com/spectralogic/ds3client/metadata/MetadataStoreFactory.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
public class MetadataStoreFactory
2323
{
24-
public MetadataStore getOsSpecificMetadataStore(final ImmutableMap.Builder<String, String> metadataMap) {
24+
public static MetadataStore getOsSpecificMetadataStore(final ImmutableMap.Builder<String, String> metadataMap) {
2525
if(MetaDataUtil.getOS().contains("Windows")) {
2626
return new WindowsMetadataStore(metadataMap);
2727
}

ds3-metadata/src/main/java/com/spectralogic/ds3client/metadata/PosixMetadataRestore.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ private void setOwnerNGroupLnx(final String ownerName, final String groupName) t
9191
* @param filePath path of the file
9292
* @param permissions permissions got from the blackperl server
9393
*/
94-
private void setPermissionsLnx(final String filePath, final String permissions) throws IOException {
94+
private static void setPermissionsLnx(final String filePath, final String permissions) throws IOException {
9595
final Path file = Paths.get(filePath);
9696
final Set<PosixFilePermission> perms =
9797
PosixFilePermissions.fromString(permissions);

ds3-metadata/src/main/java/com/spectralogic/ds3client/metadata/WindowsMetadataRestore.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ private void setPermissionsForWindows() throws IOException {
128128
* @return map
129129
*/
130130

131-
private Map<String,AclEntryPermission> defaultOrdinalPermission(){
131+
private static Map<String,AclEntryPermission> defaultOrdinalPermission(){
132132
final Map<String,AclEntryPermission> defaultOrdinalMap = new HashMap<>();
133133
defaultOrdinalMap.put("0",AclEntryPermission.READ_DATA);
134134
defaultOrdinalMap.put("1",AclEntryPermission.WRITE_DATA);
@@ -147,9 +147,9 @@ private Map<String,AclEntryPermission> defaultOrdinalPermission(){
147147
return defaultOrdinalMap;
148148
}
149149

150-
private void restorePermissionByUser(final String permission,
151-
final String user,
152-
final ImmutableList.Builder<AclEntry> aclEntryBuilder)
150+
private static void restorePermissionByUser(final String permission,
151+
final String user,
152+
final ImmutableList.Builder<AclEntry> aclEntryBuilder)
153153
throws IOException
154154
{
155155
final AclEntry.Builder builderWindow = AclEntry.newBuilder();

ds3-metadata/src/main/java/com/spectralogic/ds3client/metadata/WindowsMetadataStore.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import java.io.IOException;
2929
import java.io.InputStreamReader;
3030
import java.nio.charset.Charset;
31+
import java.nio.charset.StandardCharsets;
3132
import java.nio.file.Files;
3233
import java.nio.file.Path;
3334
import java.nio.file.attribute.AclEntry;
@@ -95,7 +96,7 @@ private void saveWindowsDescriptors(final Path path) throws IOException {
9596
* @param acl acl got from jna
9697
* @return dacl string
9798
*/
98-
private String getDaclString(final WinNT.ACL acl) {
99+
private static String getDaclString(final WinNT.ACL acl) {
99100
final WinNT.ACE_HEADER[] aceHeaders = acl.getACEs();
100101
final StringBuilder daclStringBuffer = new StringBuilder();
101102
for (final WinNT.ACE_HEADER aceHeader : aceHeaders) {
@@ -129,7 +130,7 @@ private String saveFlagMetaData(final Path file) throws IOException {
129130
final ProcessBuilder processBuilder = new ProcessBuilder("attrib", file.toString());
130131
final Process process = processBuilder.start();
131132
try (final BufferedReader reader =
132-
new BufferedReader(new InputStreamReader(process.getInputStream(), Charset.forName("UTF-8")))) {
133+
new BufferedReader(new InputStreamReader(process.getInputStream(), StandardCharsets.UTF_8))) {
133134
final String flagWindows = reader.readLine();
134135
if (Guard.isStringNullOrEmpty(flagWindows)) {
135136
LOG.error("The flagWindows string was null");

ds3-metadata/src/test/java/com/spectralogic/ds3client/metadata/MACMetadataRestore_Test.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public void restoreFileTimesTest() throws Exception {
6262
}
6363

6464

65-
private Metadata genMetadata(final Header... headers) {
65+
private static Metadata genMetadata(final Header... headers) {
6666

6767
final ImmutableMultimap.Builder<String, String> mapBuilder = ImmutableMultimap.builder();
6868
for (final Header header : headers) {

ds3-metadata/src/test/java/com/spectralogic/ds3client/metadata/MetadataReceivedListenerImpl_Test.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ public void testGettingMetadata() throws IOException, InterruptedException {
6868

6969
// change permissions
7070
if (Platform.isWindows()) {
71-
Runtime.getRuntime().exec("attrib -A " + filePath.toString()).waitFor();
71+
Runtime.getRuntime().exec("attrib -A " + filePath).waitFor();
7272
} else {
7373
final PosixFileAttributes attributes = Files.readAttributes(filePath, PosixFileAttributes.class);
7474
final Set<PosixFilePermission> permissions = attributes.permissions();

ds3-metadata/src/test/java/com/spectralogic/ds3client/metadata/MetadataRestoreFactory_Test.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public void testThatRunningOnMacReturnsMacMetaDataRestore() {
3131
final Metadata metadata = null;
3232
final String filePath = ".";
3333

34-
final MetadataRestore metadataRestorer = new MetadataRestoreFactory().getOSSpecificMetadataRestore(metadata, filePath);
34+
final MetadataRestore metadataRestorer = MetadataRestoreFactory.getOSSpecificMetadataRestore(metadata, filePath);
3535

3636
assertEquals(MACMetadataRestore.class, metadataRestorer.getClass());
3737
}
@@ -43,7 +43,7 @@ public void testThatRunningOnWindowsReturnsWindowsMetaDataRestore() {
4343
final Metadata metadata = null;
4444
final String filePath = ".";
4545

46-
final MetadataRestore metadataRestorer = new MetadataRestoreFactory().getOSSpecificMetadataRestore(metadata, filePath);
46+
final MetadataRestore metadataRestorer = MetadataRestoreFactory.getOSSpecificMetadataRestore(metadata, filePath);
4747

4848
assertEquals(WindowsMetadataRestore.class, metadataRestorer.getClass());
4949
}
@@ -55,7 +55,7 @@ public void testThatRunningOnLinuxReturnsLinuxMetaDataRestore() {
5555
final Metadata metadata = null;
5656
final String filePath = ".";
5757

58-
final MetadataRestore metadataRestorer = new MetadataRestoreFactory().getOSSpecificMetadataRestore(metadata, filePath);
58+
final MetadataRestore metadataRestorer = MetadataRestoreFactory.getOSSpecificMetadataRestore(metadata, filePath);
5959

6060
assertEquals(PosixMetadataRestore.class, metadataRestorer.getClass());
6161
}

ds3-metadata/src/test/java/com/spectralogic/ds3client/metadata/PosixMetadataRestore_Test.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ public void restorePermissions() throws Exception{
9696
Assert.assertEquals(getPermissionInOctal(PosixFilePermissions.toString(fileAttributesAfterRestore.permissions())), basicHeader[0].getValue());
9797
}
9898

99-
private Metadata genMetadata(final Header... headers) {
99+
private static Metadata genMetadata(final Header... headers) {
100100

101101
final ImmutableMultimap.Builder<String, String> mapBuilder = ImmutableMultimap.builder();
102102
for (final Header header : headers) {

ds3-metadata/src/test/java/com/spectralogic/ds3client/metadata/WindowsMetadataRestore_Test.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ public void restorePermissionsTest() throws NoSuchMethodException, IOException,
148148
windowsMetadataRestore.restorePermissions();
149149
}
150150

151-
private Metadata genMetadata(final Header... headers) {
151+
private static Metadata genMetadata(final Header... headers) {
152152
final ImmutableMultimap.Builder<String, String> mapBuilder = ImmutableMultimap.builder();
153153
for (final Header header : headers) {
154154
mapBuilder.put(header.getName(), header.getValue());

ds3-sdk-integration/src/integrationTest/java/com/spectralogic/ds3client/helpers/FileSystemHelper_Test.java

+9-8
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
import java.nio.file.Paths;
4141
import java.util.ArrayList;
4242
import java.util.Arrays;
43+
import java.util.Collections;
4344
import java.util.List;
4445
import java.util.UUID;
4546
import java.util.concurrent.atomic.AtomicInteger;
@@ -98,7 +99,7 @@ public void testObjectsFitBucketWithNonExistentBucket() {
9899
maxNumObjectTransferAttempts);
99100

100101
final ObjectStorageSpaceVerificationResult result = ds3ClientHelpers.objectsFromBucketWillFitInDirectory(
101-
"bad bucket name", Arrays.asList(new String[] {}), Paths.get("."));
102+
"bad bucket name", Collections.emptyList(), Paths.get("."));
102103

103104
assertEquals(ObjectStorageSpaceVerificationResult.VerificationStatus.BucketDoesNotExist, result.getVerificationStatus());
104105
assertEquals(0, result.getRequiredSpace());
@@ -119,7 +120,7 @@ public void testObjectsFitBucketWithPathNotDirectory() throws IOException {
119120

120121
try {
121122
final ObjectStorageSpaceVerificationResult result = ds3ClientHelpers.objectsFromBucketWillFitInDirectory(
122-
"bad bucket name", Arrays.asList(new String[]{}), textFile);
123+
"bad bucket name", Collections.emptyList(), textFile);
123124

124125
assertEquals(ObjectStorageSpaceVerificationResult.VerificationStatus.PathIsNotADirectory, result.getVerificationStatus());
125126
assertEquals(0, result.getRequiredSpace());
@@ -143,7 +144,7 @@ public void testObjectsFitBucketPathDoesNotExist() throws IOException {
143144
FileUtils.deleteDirectory(directory.toFile());
144145

145146
final ObjectStorageSpaceVerificationResult result = ds3ClientHelpers.objectsFromBucketWillFitInDirectory(
146-
"bad bucket name", Arrays.asList(new String[]{}), directory);
147+
"bad bucket name", Collections.emptyList(), directory);
147148

148149
assertEquals(ObjectStorageSpaceVerificationResult.VerificationStatus.PathDoesNotExist, result.getVerificationStatus());
149150
assertEquals(0, result.getRequiredSpace());
@@ -165,7 +166,7 @@ public void testObjectsFitBucketPathLacksAccess() throws IOException, Interrupte
165166
// Deny write data access to everyone, making the directory unwritable
166167
Runtime.getRuntime().exec("icacls dir /deny Everyone:(WD)").waitFor();
167168
} else {
168-
Runtime.getRuntime().exec("chmod -w " + directory.toString()).waitFor();
169+
Runtime.getRuntime().exec("chmod -w " + directory).waitFor();
169170
final Process lsProcess = Runtime.getRuntime().exec("ls -l");
170171
lsProcess.waitFor();
171172
try (final BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(lsProcess.getInputStream()))) {
@@ -180,7 +181,7 @@ public void testObjectsFitBucketPathLacksAccess() throws IOException, Interrupte
180181

181182
try {
182183
final ObjectStorageSpaceVerificationResult result = ds3ClientHelpers.objectsFromBucketWillFitInDirectory(
183-
"bad bucket name", Arrays.asList(new String[]{}), directory);
184+
"bad bucket name", Collections.emptyList(), directory);
184185

185186
LOG.info(result.toString());
186187

@@ -194,7 +195,7 @@ public void testObjectsFitBucketPathLacksAccess() throws IOException, Interrupte
194195
// Grant write data access to everyone, making the directory writable, so we can delete it.
195196
Runtime.getRuntime().exec("icacls dir /grant Everyone:(WD)").waitFor();
196197
} else {
197-
Runtime.getRuntime().exec("chmod +w " + directory.toString()).waitFor();
198+
Runtime.getRuntime().exec("chmod +w " + directory).waitFor();
198199
}
199200

200201
FileUtils.deleteDirectory(directory.toFile());
@@ -221,8 +222,8 @@ private interface ResultVerifier {
221222
void verifyResult(final ObjectStorageSpaceVerificationResult result, final long totalRequiredSize);
222223
}
223224

224-
private void putObjectThenRunVerification(final FileSystemHelper fileSystemHelper,
225-
final ResultVerifier resultVerifier)
225+
private static void putObjectThenRunVerification(final FileSystemHelper fileSystemHelper,
226+
final ResultVerifier resultVerifier)
226227
throws IOException, URISyntaxException
227228
{
228229
try {

ds3-sdk-integration/src/integrationTest/java/com/spectralogic/ds3client/helpers/channelbuilders/RepeatStringObjectChannelBuilder.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
public class RepeatStringObjectChannelBuilder implements Ds3ClientHelpers.ObjectChannelBuilder {
2424
private final int bufferSize;
2525
private final long sizeOfFiles;
26-
private String inputDataHeader;
26+
private final String inputDataHeader;
2727

2828
public RepeatStringObjectChannelBuilder(final String inputDataHeader, final int bufferSize, final long sizeOfFile) {
2929
this.bufferSize = bufferSize;

0 commit comments

Comments
 (0)