You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@crail.apache.org by ps...@apache.org on 2018/01/22 14:21:03 UTC
[19/29] incubator-crail git commit: Apache package renaming
Apache package renaming
Project: http://git-wip-us.apache.org/repos/asf/incubator-crail/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-crail/commit/32f8ead2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-crail/tree/32f8ead2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-crail/diff/32f8ead2
Branch: refs/heads/master
Commit: 32f8ead26ca1f95ef59875b11f05caf0163417f9
Parents: 5f85009
Author: Patrick Stuedi <st...@zurich.ibm.com>
Authored: Thu Jan 18 12:41:13 2018 +0100
Committer: Patrick Stuedi <st...@zurich.ibm.com>
Committed: Thu Jan 18 12:41:13 2018 +0100
----------------------------------------------------------------------
.../java/com/ibm/crail/CrailBlockLocation.java | 32 -
.../main/java/com/ibm/crail/CrailBuffer.java | 95 --
.../com/ibm/crail/CrailBufferedInputStream.java | 475 -------
.../ibm/crail/CrailBufferedOutputStream.java | 351 ------
.../com/ibm/crail/CrailBufferedStatistics.java | 89 --
.../main/java/com/ibm/crail/CrailContainer.java | 8 -
.../main/java/com/ibm/crail/CrailDirectory.java | 29 -
client/src/main/java/com/ibm/crail/CrailFS.java | 94 --
.../src/main/java/com/ibm/crail/CrailFile.java | 37 -
.../java/com/ibm/crail/CrailInputStream.java | 34 -
.../main/java/com/ibm/crail/CrailKeyValue.java | 5 -
.../java/com/ibm/crail/CrailLocationClass.java | 46 -
.../main/java/com/ibm/crail/CrailMultiFile.java | 28 -
.../src/main/java/com/ibm/crail/CrailNode.java | 39 -
.../main/java/com/ibm/crail/CrailNodeType.java | 74 --
.../java/com/ibm/crail/CrailOutputStream.java | 34 -
.../java/com/ibm/crail/CrailPurgeOperation.java | 48 -
.../main/java/com/ibm/crail/CrailResult.java | 26 -
.../java/com/ibm/crail/CrailStatistics.java | 64 -
.../java/com/ibm/crail/CrailStorageClass.java | 46 -
.../src/main/java/com/ibm/crail/CrailTable.java | 5 -
.../com/ibm/crail/FileBufferedInputStream.java | 57 -
.../ibm/crail/MultiFileBufferedInputStream.java | 98 --
.../src/main/java/com/ibm/crail/Upcoming.java | 28 -
.../java/com/ibm/crail/conf/Configurable.java | 8 -
.../com/ibm/crail/conf/CrailConfiguration.java | 88 --
.../java/com/ibm/crail/conf/CrailConstants.java | 263 ----
.../com/ibm/crail/core/CoreBlockLocation.java | 127 --
.../com/ibm/crail/core/CoreDataOperation.java | 137 --
.../java/com/ibm/crail/core/CoreDirectory.java | 94 --
.../main/java/com/ibm/crail/core/CoreFile.java | 202 ---
.../java/com/ibm/crail/core/CoreFileSystem.java | 654 ----------
.../com/ibm/crail/core/CoreIOStatistics.java | 252 ----
.../com/ibm/crail/core/CoreInputStream.java | 133 --
.../ibm/crail/core/CoreMetaDataOperation.java | 279 -----
.../main/java/com/ibm/crail/core/CoreNode.java | 143 ---
.../com/ibm/crail/core/CoreOutputStream.java | 118 --
.../java/com/ibm/crail/core/CoreStream.java | 263 ----
.../ibm/crail/core/CoreStreamStatistics.java | 213 ----
.../com/ibm/crail/core/CoreSubOperation.java | 85 --
.../com/ibm/crail/core/CoreSyncOperation.java | 40 -
.../ibm/crail/core/DirectoryInputStream.java | 177 ---
.../ibm/crail/core/DirectoryOutputStream.java | 86 --
.../com/ibm/crail/core/DirectoryRecord.java | 83 --
.../java/com/ibm/crail/memory/BufferCache.java | 145 ---
.../com/ibm/crail/memory/MappedBufferCache.java | 118 --
.../com/ibm/crail/memory/OffHeapBuffer.java | 237 ----
.../java/com/ibm/crail/metadata/BlockInfo.java | 103 --
.../com/ibm/crail/metadata/DataNodeInfo.java | 127 --
.../ibm/crail/metadata/DataNodeStatistics.java | 69 -
.../java/com/ibm/crail/metadata/FileInfo.java | 161 ---
.../java/com/ibm/crail/metadata/FileName.java | 129 --
.../main/java/com/ibm/crail/rpc/RpcClient.java | 43 -
.../java/com/ibm/crail/rpc/RpcConnection.java | 80 --
.../java/com/ibm/crail/rpc/RpcCreateFile.java | 32 -
.../java/com/ibm/crail/rpc/RpcDeleteFile.java | 29 -
.../java/com/ibm/crail/rpc/RpcDispatcher.java | 148 ---
.../main/java/com/ibm/crail/rpc/RpcErrors.java | 94 --
.../main/java/com/ibm/crail/rpc/RpcFuture.java | 34 -
.../java/com/ibm/crail/rpc/RpcGetBlock.java | 29 -
.../java/com/ibm/crail/rpc/RpcGetDataNode.java | 28 -
.../main/java/com/ibm/crail/rpc/RpcGetFile.java | 30 -
.../java/com/ibm/crail/rpc/RpcGetLocation.java | 31 -
.../main/java/com/ibm/crail/rpc/RpcPing.java | 26 -
.../java/com/ibm/crail/rpc/RpcRenameFile.java | 34 -
.../java/com/ibm/crail/rpc/RpcResponse.java | 26 -
.../main/java/com/ibm/crail/rpc/RpcVoid.java | 25 -
.../com/ibm/crail/storage/StorageClient.java | 44 -
.../com/ibm/crail/storage/StorageEndpoint.java | 39 -
.../com/ibm/crail/storage/StorageFuture.java | 28 -
.../com/ibm/crail/storage/StorageResult.java | 26 -
.../com/ibm/crail/tools/CrailBenchmark.java | 1180 ------------------
.../java/com/ibm/crail/tools/CrailFsck.java | 241 ----
.../ibm/crail/utils/AtomicIntegerModulo.java | 36 -
.../java/com/ibm/crail/utils/BlockCache.java | 80 --
.../com/ibm/crail/utils/BufferCheckpoint.java | 55 -
.../crail/utils/CrailImmediateOperation.java | 69 -
.../java/com/ibm/crail/utils/CrailUtils.java | 281 -----
.../java/com/ibm/crail/utils/EndpointCache.java | 170 ---
.../java/com/ibm/crail/utils/MultiFuture.java | 151 ---
.../com/ibm/crail/utils/NextBlockCache.java | 81 --
.../java/com/ibm/crail/utils/RingBuffer.java | 95 --
.../org/apache/crail/CrailBlockLocation.java | 32 +
.../main/java/org/apache/crail/CrailBuffer.java | 95 ++
.../apache/crail/CrailBufferedInputStream.java | 474 +++++++
.../apache/crail/CrailBufferedOutputStream.java | 350 ++++++
.../apache/crail/CrailBufferedStatistics.java | 90 ++
.../java/org/apache/crail/CrailContainer.java | 8 +
.../java/org/apache/crail/CrailDirectory.java | 29 +
.../src/main/java/org/apache/crail/CrailFS.java | 93 ++
.../main/java/org/apache/crail/CrailFile.java | 37 +
.../java/org/apache/crail/CrailInputStream.java | 34 +
.../java/org/apache/crail/CrailKeyValue.java | 5 +
.../org/apache/crail/CrailLocationClass.java | 46 +
.../java/org/apache/crail/CrailMultiFile.java | 28 +
.../main/java/org/apache/crail/CrailNode.java | 39 +
.../java/org/apache/crail/CrailNodeType.java | 74 ++
.../org/apache/crail/CrailOutputStream.java | 34 +
.../org/apache/crail/CrailPurgeOperation.java | 48 +
.../main/java/org/apache/crail/CrailResult.java | 26 +
.../java/org/apache/crail/CrailStatistics.java | 63 +
.../org/apache/crail/CrailStorageClass.java | 46 +
.../main/java/org/apache/crail/CrailTable.java | 5 +
.../apache/crail/FileBufferedInputStream.java | 57 +
.../crail/MultiFileBufferedInputStream.java | 99 ++
.../main/java/org/apache/crail/Upcoming.java | 28 +
.../org/apache/crail/conf/Configurable.java | 8 +
.../apache/crail/conf/CrailConfiguration.java | 87 ++
.../org/apache/crail/conf/CrailConstants.java | 262 ++++
.../apache/crail/core/CoreBlockLocation.java | 127 ++
.../apache/crail/core/CoreDataOperation.java | 137 ++
.../org/apache/crail/core/CoreDirectory.java | 94 ++
.../java/org/apache/crail/core/CoreFile.java | 202 +++
.../org/apache/crail/core/CoreFileSystem.java | 653 ++++++++++
.../org/apache/crail/core/CoreIOStatistics.java | 252 ++++
.../org/apache/crail/core/CoreInputStream.java | 132 ++
.../crail/core/CoreMetaDataOperation.java | 279 +++++
.../java/org/apache/crail/core/CoreNode.java | 143 +++
.../org/apache/crail/core/CoreOutputStream.java | 117 ++
.../java/org/apache/crail/core/CoreStream.java | 262 ++++
.../apache/crail/core/CoreStreamStatistics.java | 213 ++++
.../org/apache/crail/core/CoreSubOperation.java | 85 ++
.../apache/crail/core/CoreSyncOperation.java | 41 +
.../apache/crail/core/DirectoryInputStream.java | 176 +++
.../crail/core/DirectoryOutputStream.java | 86 ++
.../org/apache/crail/core/DirectoryRecord.java | 83 ++
.../org/apache/crail/memory/BufferCache.java | 142 +++
.../apache/crail/memory/MappedBufferCache.java | 118 ++
.../org/apache/crail/memory/OffHeapBuffer.java | 237 ++++
.../org/apache/crail/metadata/BlockInfo.java | 103 ++
.../org/apache/crail/metadata/DataNodeInfo.java | 126 ++
.../crail/metadata/DataNodeStatistics.java | 69 +
.../org/apache/crail/metadata/FileInfo.java | 161 +++
.../org/apache/crail/metadata/FileName.java | 129 ++
.../java/org/apache/crail/rpc/RpcClient.java | 43 +
.../org/apache/crail/rpc/RpcConnection.java | 80 ++
.../org/apache/crail/rpc/RpcCreateFile.java | 32 +
.../org/apache/crail/rpc/RpcDeleteFile.java | 29 +
.../org/apache/crail/rpc/RpcDispatcher.java | 147 +++
.../java/org/apache/crail/rpc/RpcErrors.java | 93 ++
.../java/org/apache/crail/rpc/RpcFuture.java | 34 +
.../java/org/apache/crail/rpc/RpcGetBlock.java | 29 +
.../org/apache/crail/rpc/RpcGetDataNode.java | 28 +
.../java/org/apache/crail/rpc/RpcGetFile.java | 30 +
.../org/apache/crail/rpc/RpcGetLocation.java | 31 +
.../main/java/org/apache/crail/rpc/RpcPing.java | 26 +
.../org/apache/crail/rpc/RpcRenameFile.java | 34 +
.../java/org/apache/crail/rpc/RpcResponse.java | 26 +
.../main/java/org/apache/crail/rpc/RpcVoid.java | 25 +
.../org/apache/crail/storage/StorageClient.java | 45 +
.../apache/crail/storage/StorageEndpoint.java | 40 +
.../org/apache/crail/storage/StorageFuture.java | 28 +
.../org/apache/crail/storage/StorageResult.java | 26 +
.../org/apache/crail/tools/CrailBenchmark.java | 1179 +++++++++++++++++
.../java/org/apache/crail/tools/CrailFsck.java | 240 ++++
.../apache/crail/utils/AtomicIntegerModulo.java | 36 +
.../java/org/apache/crail/utils/BlockCache.java | 80 ++
.../apache/crail/utils/BufferCheckpoint.java | 54 +
.../crail/utils/CrailImmediateOperation.java | 69 +
.../java/org/apache/crail/utils/CrailUtils.java | 280 +++++
.../org/apache/crail/utils/EndpointCache.java | 169 +++
.../org/apache/crail/utils/MultiFuture.java | 151 +++
.../org/apache/crail/utils/NextBlockCache.java | 81 ++
.../java/org/apache/crail/utils/RingBuffer.java | 95 ++
.../src/test/java/com/ibm/crail/ClientTest.java | 176 ---
.../test/java/org/apache/crail/ClientTest.java | 185 +++
.../main/java/com/ibm/crail/hdfs/CrailHDFS.java | 303 -----
.../ibm/crail/hdfs/CrailHDFSInputStream.java | 197 ---
.../ibm/crail/hdfs/CrailHDFSOutputStream.java | 35 -
.../ibm/crail/hdfs/CrailHadoopFileSystem.java | 309 -----
.../main/java/com/ibm/crail/hdfs/GetConf.java | 46 -
.../ibm/crail/hdfs/tools/HdfsIOBenchmark.java | 496 --------
.../java/org/apache/crail/hdfs/CrailHDFS.java | 302 +++++
.../apache/crail/hdfs/CrailHDFSInputStream.java | 196 +++
.../crail/hdfs/CrailHDFSOutputStream.java | 35 +
.../crail/hdfs/CrailHadoopFileSystem.java | 308 +++++
.../java/org/apache/crail/hdfs/GetConf.java | 46 +
.../crail/hdfs/tools/HdfsIOBenchmark.java | 496 ++++++++
.../ibm/crail/hdfs/TestCrailHDFSContract.java | 71 --
.../crail/hdfs/TestCrailHDFSContract.java | 72 ++
.../com/ibm/crail/namenode/AbstractNode.java | 111 --
.../java/com/ibm/crail/namenode/BlockStore.java | 276 ----
.../com/ibm/crail/namenode/DataNodeBlocks.java | 93 --
.../com/ibm/crail/namenode/DirectoryBlocks.java | 107 --
.../java/com/ibm/crail/namenode/FileBlocks.java | 111 --
.../java/com/ibm/crail/namenode/FileStore.java | 90 --
.../java/com/ibm/crail/namenode/GCServer.java | 56 -
.../com/ibm/crail/namenode/KeyValueBlocks.java | 11 -
.../com/ibm/crail/namenode/LogDispatcher.java | 121 --
.../java/com/ibm/crail/namenode/LogRecord.java | 286 -----
.../com/ibm/crail/namenode/LogResponse.java | 268 ----
.../java/com/ibm/crail/namenode/LogService.java | 131 --
.../com/ibm/crail/namenode/MultiFileBlocks.java | 12 -
.../java/com/ibm/crail/namenode/NameNode.java | 101 --
.../ibm/crail/namenode/NameNodeBlockInfo.java | 45 -
.../com/ibm/crail/namenode/NameNodeService.java | 600 ---------
.../java/com/ibm/crail/namenode/Sequencer.java | 5 -
.../com/ibm/crail/namenode/TableBlocks.java | 20 -
.../org/apache/crail/namenode/AbstractNode.java | 111 ++
.../org/apache/crail/namenode/BlockStore.java | 277 ++++
.../apache/crail/namenode/DataNodeBlocks.java | 92 ++
.../apache/crail/namenode/DirectoryBlocks.java | 107 ++
.../org/apache/crail/namenode/FileBlocks.java | 111 ++
.../org/apache/crail/namenode/FileStore.java | 90 ++
.../org/apache/crail/namenode/GCServer.java | 55 +
.../apache/crail/namenode/KeyValueBlocks.java | 11 +
.../apache/crail/namenode/LogDispatcher.java | 121 ++
.../org/apache/crail/namenode/LogRecord.java | 285 +++++
.../org/apache/crail/namenode/LogResponse.java | 268 ++++
.../org/apache/crail/namenode/LogService.java | 130 ++
.../apache/crail/namenode/MultiFileBlocks.java | 12 +
.../org/apache/crail/namenode/NameNode.java | 100 ++
.../crail/namenode/NameNodeBlockInfo.java | 45 +
.../apache/crail/namenode/NameNodeService.java | 599 +++++++++
.../org/apache/crail/namenode/Sequencer.java | 5 +
.../org/apache/crail/namenode/TableBlocks.java | 20 +
.../namenode/rpc/darpc/DaRPCConstants.java | 101 --
.../crail/namenode/rpc/darpc/DaRPCNameNode.java | 33 -
.../namenode/rpc/darpc/DaRPCNameNodeClient.java | 60 -
.../rpc/darpc/DaRPCNameNodeConnection.java | 301 -----
.../namenode/rpc/darpc/DaRPCNameNodeFuture.java | 83 --
.../rpc/darpc/DaRPCNameNodeProtocol.java | 37 -
.../rpc/darpc/DaRPCNameNodeRequest.java | 266 ----
.../rpc/darpc/DaRPCNameNodeResponse.java | 290 -----
.../namenode/rpc/darpc/DaRPCNameNodeServer.java | 66 -
.../rpc/darpc/DaRPCServiceDispatcher.java | 180 ---
.../namenode/rpc/darpc/DaRPCConstants.java | 100 ++
.../crail/namenode/rpc/darpc/DaRPCNameNode.java | 33 +
.../namenode/rpc/darpc/DaRPCNameNodeClient.java | 62 +
.../rpc/darpc/DaRPCNameNodeConnection.java | 301 +++++
.../namenode/rpc/darpc/DaRPCNameNodeFuture.java | 84 ++
.../rpc/darpc/DaRPCNameNodeProtocol.java | 37 +
.../rpc/darpc/DaRPCNameNodeRequest.java | 266 ++++
.../rpc/darpc/DaRPCNameNodeResponse.java | 291 +++++
.../namenode/rpc/darpc/DaRPCNameNodeServer.java | 66 +
.../rpc/darpc/DaRPCServiceDispatcher.java | 180 +++
.../ibm/crail/namenode/rpc/tcp/TcpFuture.java | 84 --
.../ibm/crail/namenode/rpc/tcp/TcpNameNode.java | 39 -
.../namenode/rpc/tcp/TcpNameNodeClient.java | 68 -
.../namenode/rpc/tcp/TcpNameNodeRequest.java | 265 ----
.../namenode/rpc/tcp/TcpNameNodeResponse.java | 246 ----
.../namenode/rpc/tcp/TcpNameNodeServer.java | 76 --
.../namenode/rpc/tcp/TcpRpcConnection.java | 190 ---
.../crail/namenode/rpc/tcp/TcpRpcConstants.java | 56 -
.../namenode/rpc/tcp/TcpRpcDispatcher.java | 105 --
.../crail/namenode/rpc/tcp/TcpFuture.java | 85 ++
.../crail/namenode/rpc/tcp/TcpNameNode.java | 39 +
.../namenode/rpc/tcp/TcpNameNodeClient.java | 68 +
.../namenode/rpc/tcp/TcpNameNodeRequest.java | 266 ++++
.../namenode/rpc/tcp/TcpNameNodeResponse.java | 246 ++++
.../namenode/rpc/tcp/TcpNameNodeServer.java | 76 ++
.../namenode/rpc/tcp/TcpRpcConnection.java | 190 +++
.../crail/namenode/rpc/tcp/TcpRpcConstants.java | 55 +
.../namenode/rpc/tcp/TcpRpcDispatcher.java | 105 ++
.../main/java/com/ibm/crail/rpc/RpcBinding.java | 39 -
.../com/ibm/crail/rpc/RpcNameNodeService.java | 83 --
.../com/ibm/crail/rpc/RpcNameNodeState.java | 27 -
.../java/com/ibm/crail/rpc/RpcProtocol.java | 115 --
.../com/ibm/crail/rpc/RpcRequestMessage.java | 575 ---------
.../com/ibm/crail/rpc/RpcResponseMessage.java | 648 ----------
.../main/java/com/ibm/crail/rpc/RpcServer.java | 7 -
.../java/org/apache/crail/rpc/RpcBinding.java | 41 +
.../apache/crail/rpc/RpcNameNodeService.java | 83 ++
.../org/apache/crail/rpc/RpcNameNodeState.java | 27 +
.../java/org/apache/crail/rpc/RpcProtocol.java | 116 ++
.../org/apache/crail/rpc/RpcRequestMessage.java | 575 +++++++++
.../apache/crail/rpc/RpcResponseMessage.java | 658 ++++++++++
.../java/org/apache/crail/rpc/RpcServer.java | 7 +
.../ibm/crail/storage/tcp/TcpStorageClient.java | 68 -
.../crail/storage/tcp/TcpStorageConstants.java | 78 --
.../crail/storage/tcp/TcpStorageEndpoint.java | 85 --
.../ibm/crail/storage/tcp/TcpStorageFuture.java | 79 --
.../crail/storage/tcp/TcpStorageProtocol.java | 30 -
.../crail/storage/tcp/TcpStorageRequest.java | 200 ---
.../crail/storage/tcp/TcpStorageResponse.java | 138 --
.../ibm/crail/storage/tcp/TcpStorageServer.java | 191 ---
.../ibm/crail/storage/tcp/TcpStorageTier.java | 32 -
.../ibm/crail/storage/tcp/TcpStorageUtils.java | 38 -
.../crail/storage/tcp/TcpStorageClient.java | 68 +
.../crail/storage/tcp/TcpStorageConstants.java | 77 ++
.../crail/storage/tcp/TcpStorageEndpoint.java | 87 ++
.../crail/storage/tcp/TcpStorageFuture.java | 80 ++
.../crail/storage/tcp/TcpStorageProtocol.java | 30 +
.../crail/storage/tcp/TcpStorageRequest.java | 201 +++
.../crail/storage/tcp/TcpStorageResponse.java | 140 +++
.../crail/storage/tcp/TcpStorageServer.java | 191 +++
.../crail/storage/tcp/TcpStorageTier.java | 32 +
.../crail/storage/tcp/TcpStorageUtils.java | 39 +
.../ibm/crail/storage/nvmf/NvmfBufferCache.java | 70 --
.../crail/storage/nvmf/NvmfStorageClient.java | 71 --
.../storage/nvmf/NvmfStorageConstants.java | 174 ---
.../crail/storage/nvmf/NvmfStorageServer.java | 113 --
.../ibm/crail/storage/nvmf/NvmfStorageTier.java | 39 -
.../nvmf/client/NvmfStorageEndpoint.java | 229 ----
.../storage/nvmf/client/NvmfStorageFuture.java | 118 --
.../nvmf/client/NvmfStorageUnalignedFuture.java | 114 --
.../client/NvmfStorageUnalignedRMWFuture.java | 79 --
.../client/NvmfStorageUnalignedReadFuture.java | 63 -
.../client/NvmfStorageUnalignedWriteFuture.java | 52 -
.../storage/nvmf/client/NvmfStorageUtils.java | 51 -
.../crail/storage/nvmf/NvmfBufferCache.java | 71 ++
.../crail/storage/nvmf/NvmfStorageClient.java | 71 ++
.../storage/nvmf/NvmfStorageConstants.java | 173 +++
.../crail/storage/nvmf/NvmfStorageServer.java | 113 ++
.../crail/storage/nvmf/NvmfStorageTier.java | 38 +
.../nvmf/client/NvmfStorageEndpoint.java | 229 ++++
.../storage/nvmf/client/NvmfStorageFuture.java | 119 ++
.../nvmf/client/NvmfStorageUnalignedFuture.java | 113 ++
.../client/NvmfStorageUnalignedRMWFuture.java | 79 ++
.../client/NvmfStorageUnalignedReadFuture.java | 63 +
.../client/NvmfStorageUnalignedWriteFuture.java | 53 +
.../storage/nvmf/client/NvmfStorageUtils.java | 51 +
.../com/ibm/crail/storage/rdma/MrCache.java | 108 --
.../ibm/crail/storage/rdma/RdmaConstants.java | 159 ---
.../crail/storage/rdma/RdmaStorageClient.java | 72 --
.../rdma/RdmaStorageEndpointFactory.java | 42 -
.../crail/storage/rdma/RdmaStorageGroup.java | 35 -
.../crail/storage/rdma/RdmaStorageServer.java | 199 ---
.../storage/rdma/RdmaStorageServerEndpoint.java | 46 -
.../ibm/crail/storage/rdma/RdmaStorageTier.java | 33 -
.../storage/rdma/client/RdmaActiveFuture.java | 131 --
.../storage/rdma/client/RdmaLocalFuture.java | 101 --
.../storage/rdma/client/RdmaPassiveFuture.java | 152 ---
.../rdma/client/RdmaStorageActiveEndpoint.java | 286 -----
.../RdmaStorageActiveEndpointFactory.java | 40 -
.../rdma/client/RdmaStorageActiveGroup.java | 88 --
.../rdma/client/RdmaStorageLocalEndpoint.java | 198 ---
.../rdma/client/RdmaStoragePassiveEndpoint.java | 383 ------
.../RdmaStoragePassiveEndpointFactory.java | 39 -
.../rdma/client/RdmaStoragePassiveGroup.java | 88 --
.../org/apache/crail/storage/rdma/MrCache.java | 109 ++
.../crail/storage/rdma/RdmaConstants.java | 158 +++
.../crail/storage/rdma/RdmaStorageClient.java | 71 ++
.../rdma/RdmaStorageEndpointFactory.java | 42 +
.../crail/storage/rdma/RdmaStorageGroup.java | 36 +
.../crail/storage/rdma/RdmaStorageServer.java | 199 +++
.../storage/rdma/RdmaStorageServerEndpoint.java | 46 +
.../crail/storage/rdma/RdmaStorageTier.java | 33 +
.../storage/rdma/client/RdmaActiveFuture.java | 131 ++
.../storage/rdma/client/RdmaLocalFuture.java | 103 ++
.../storage/rdma/client/RdmaPassiveFuture.java | 151 +++
.../rdma/client/RdmaStorageActiveEndpoint.java | 287 +++++
.../RdmaStorageActiveEndpointFactory.java | 40 +
.../rdma/client/RdmaStorageActiveGroup.java | 89 ++
.../rdma/client/RdmaStorageLocalEndpoint.java | 198 +++
.../rdma/client/RdmaStoragePassiveEndpoint.java | 383 ++++++
.../RdmaStoragePassiveEndpointFactory.java | 39 +
.../rdma/client/RdmaStoragePassiveGroup.java | 89 ++
.../com/ibm/crail/storage/StorageResource.java | 50 -
.../com/ibm/crail/storage/StorageRpcClient.java | 74 --
.../com/ibm/crail/storage/StorageServer.java | 195 ---
.../java/com/ibm/crail/storage/StorageTier.java | 39 -
.../apache/crail/storage/StorageResource.java | 50 +
.../apache/crail/storage/StorageRpcClient.java | 73 ++
.../org/apache/crail/storage/StorageServer.java | 194 +++
.../org/apache/crail/storage/StorageTier.java | 41 +
356 files changed, 22440 insertions(+), 22428 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailBlockLocation.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailBlockLocation.java b/client/src/main/java/com/ibm/crail/CrailBlockLocation.java
deleted file mode 100644
index 786f281..0000000
--- a/client/src/main/java/com/ibm/crail/CrailBlockLocation.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-public interface CrailBlockLocation {
- public long getOffset();
- public long getLength();
- public String[] getNames();
- public String[] getHosts();
- public String[] getTopology();
- public int[] getStorageTypes();
- public int[] getLocationAffinities();
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailBuffer.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailBuffer.java b/client/src/main/java/com/ibm/crail/CrailBuffer.java
deleted file mode 100644
index d3d624d..0000000
--- a/client/src/main/java/com/ibm/crail/CrailBuffer.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.nio.ByteBuffer;
-
-public interface CrailBuffer {
-
- //ByteBuffer metadata
-
- public int capacity();
-
- public int position();
-
- public CrailBuffer position(int newPosition);
-
- public int limit();
-
- public CrailBuffer limit(int newLimit);
-
- public CrailBuffer clear();
-
- public CrailBuffer flip();
-
- public int remaining();
-
- public boolean hasRemaining();
-
- public CrailBuffer slice();
-
- //Crail metadata
-
- public long address();
-
- public CrailBuffer getRegion();
-
- public ByteBuffer getByteBuffer();
-
- //ByteBuffer data
-
- public byte get();
-
- public ByteBuffer put(byte b);
-
- public CrailBuffer get(byte[] buf, int off, int bufferRemaining);
-
- public CrailBuffer put(byte[] dataBuf, int off, int bufferRemaining);
-
- public CrailBuffer get(byte[] bytes);
-
- public CrailBuffer put(byte[] bytes);
-
- public short getShort();
-
- public CrailBuffer putShort(short value);
-
- public int getInt();
-
- public CrailBuffer putInt(int value);
-
- public long getLong();
-
- public CrailBuffer putLong(long value);
-
- public float getFloat();
-
- public CrailBuffer putFloat(float value);
-
- public double getDouble();
-
- public CrailBuffer putDouble(double value);
-
- public CrailBuffer put(ByteBuffer buf);
-
- public CrailBuffer get(ByteBuffer buf);
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailBufferedInputStream.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailBufferedInputStream.java b/client/src/main/java/com/ibm/crail/CrailBufferedInputStream.java
deleted file mode 100644
index 9b1b831..0000000
--- a/client/src/main/java/com/ibm/crail/CrailBufferedInputStream.java
+++ /dev/null
@@ -1,475 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.io.EOFException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.nio.ByteBuffer;
-import java.util.LinkedList;
-import java.util.concurrent.Future;
-
-import org.slf4j.Logger;
-
-import com.ibm.crail.conf.CrailConstants;
-import com.ibm.crail.utils.CrailUtils;
-import com.ibm.crail.utils.RingBuffer;
-
-public abstract class CrailBufferedInputStream extends InputStream {
- private static final Logger LOG = CrailUtils.getLogger();
-
- private CrailFS fs;
- private byte[] tmpByteBuf;
- private ByteBuffer tmpBoundaryBuffer;
- private LinkedList<CrailBuffer> originalBuffers;
- private RingBuffer<CrailBuffer> readySlices;
- private RingBuffer<CrailBuffer> pendingSlices;
- private RingBuffer<Future<CrailResult>> pendingFutures;
- private RingBuffer<CrailBuffer> freeSlices;
- private RingBuffer<CrailBuffer> tmpSlices;
- private long position;
- private boolean open;
- private CrailBufferedStatistics statistics;
- private int actualSliceSize;
- private long capacity;
-
- public abstract CrailInputStream getStream() throws Exception;
- public abstract void putStream() throws Exception;
-
- CrailBufferedInputStream(CrailFS fs, int queueDepth, long capacity) throws Exception {
- this.fs = fs;
- this.position = 0;
- this.capacity = capacity;
- this.tmpByteBuf = new byte[1];
- this.tmpBoundaryBuffer = ByteBuffer.allocate(8);
- this.statistics = new CrailBufferedStatistics("buffered/in");
-
- this.actualSliceSize = Math.min(CrailConstants.BUFFER_SIZE, CrailConstants.SLICE_SIZE);
- int allocationSize = queueDepth*actualSliceSize;
- this.originalBuffers = new LinkedList<CrailBuffer>();
- this.readySlices = new RingBuffer<CrailBuffer>(queueDepth);
- this.pendingSlices = new RingBuffer<CrailBuffer>(queueDepth);
- this.freeSlices = new RingBuffer<CrailBuffer>(queueDepth);
- this.pendingFutures = new RingBuffer<Future<CrailResult>>(queueDepth);
- this.tmpSlices = new RingBuffer<CrailBuffer>(queueDepth);
-
- for (int currentSize = 0; currentSize < allocationSize; currentSize += CrailConstants.BUFFER_SIZE){
- CrailBuffer buffer = fs.allocateBuffer();
- originalBuffers.add(buffer);
- }
- for (CrailBuffer buffer : originalBuffers){
- while(buffer.hasRemaining()){
- buffer.limit(buffer.position() + actualSliceSize);
- CrailBuffer slice = buffer.slice();
- slice.clear();
- freeSlices.add(slice);
- if (freeSlices.size() >= queueDepth){
- break;
- }
-
- int newpos = buffer.position() + actualSliceSize;
- buffer.clear();
- buffer.position(newpos);
- }
- }
- this.open = true;
- }
-
- public final int read() throws IOException {
- int ret = read(tmpByteBuf);
- return (ret <= 0) ? -1 : (tmpByteBuf[0] & 0xff);
- }
-
- public final int read(byte b[]) throws IOException {
- return read(b, 0, b.length);
- }
-
- public final int read(long position, byte[] buffer, int offset, int length) throws IOException {
- long oldPos = position();
- int nread = -1;
- try {
- seek(position);
- nread = read(buffer, offset, length);
- } finally {
- seek(oldPos);
- }
- return nread;
- }
-
- @Override
- public final int read(byte[] buf, int off, int len) throws IOException {
- try {
- if (buf == null) {
- throw new NullPointerException();
- } else if (off < 0 || len < 0 || len > buf.length - off) {
- throw new IndexOutOfBoundsException("off " + off + ", len " + len + ", length " + buf.length);
- } else if (!open) {
- throw new IOException("strem closed");
- } else if (len == 0) {
- return 0;
- }
-
- int sumLen = 0;
- while (len > 0) {
- CrailBuffer slice = getSlice(true);
- if (slice == null){
- break;
- }
- int bufferRemaining = Math.min(len, slice.remaining());
- slice.get(buf, off, bufferRemaining);
- len -= bufferRemaining;
- off += bufferRemaining;
- sumLen += bufferRemaining;
- position += bufferRemaining;
- syncSlice();
- }
- if (sumLen > 0){
- return sumLen;
- } else if (readySlices.size() + pendingSlices.size() > 0){
- return 0;
- } else {
- return -1;
- }
- } catch (Exception e) {
- e.printStackTrace();
- throw new IOException(e);
- }
- }
-
- public final int read(ByteBuffer dataBuf) throws IOException {
- try {
- if (dataBuf == null) {
- throw new NullPointerException();
- } else if (!open) {
- throw new IOException("strem closed");
- } else if (dataBuf.remaining() == 0) {
- return 0;
- }
-
- int len = dataBuf.remaining();
- int sumLen = 0;
- while (len > 0) {
- CrailBuffer slice = getSlice(true);
- if (slice == null){
- break;
- }
- int bufferRemaining = Math.min(len, slice.remaining());
- int oldLimit = slice.limit();
- slice.limit(slice.position() + bufferRemaining);
- dataBuf.put(slice.getByteBuffer());
- slice.limit(oldLimit);
- len -= bufferRemaining;
- sumLen += bufferRemaining;
- position += bufferRemaining;
- syncSlice();
- }
- if (sumLen > 0){
- return sumLen;
- } else if (readySlices.size() + pendingSlices.size() > 0){
- return 0;
- } else {
- return -1;
- }
- } catch (Exception e) {
- throw new IOException(e);
- }
-
- }
-
- public final double readDouble() throws Exception {
- CrailBuffer slice = getSlice(true);
- if (slice == null){
- throw new EOFException();
- }
- if (slice.remaining() >= Double.BYTES){
- double val = slice.getDouble();
- position += Double.BYTES;
- syncSlice();
- return val;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.limit(Double.BYTES);
- read(tmpBoundaryBuffer);
- tmpBoundaryBuffer.flip();
- return tmpBoundaryBuffer.getDouble();
- }
- }
-
- public final float readFloat() throws Exception {
- CrailBuffer slice = getSlice(true);
- if (slice == null){
- throw new EOFException();
- }
- if (slice.remaining() >= Float.BYTES){
- float val = slice.getFloat();
- position += Float.BYTES;
- syncSlice();
- return val;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.limit(Float.BYTES);
- read(tmpBoundaryBuffer);
- tmpBoundaryBuffer.flip();
- return tmpBoundaryBuffer.getFloat();
- }
- }
-
- public final int readInt() throws Exception {
- CrailBuffer slice = getSlice(true);
- if (slice == null){
- throw new EOFException();
- }
- if (slice.remaining() >= Integer.BYTES){
- int val = slice.getInt();
- position += Integer.BYTES;
- syncSlice();
- return val;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.limit(Integer.BYTES);
- read(tmpBoundaryBuffer);
- tmpBoundaryBuffer.flip();
- return tmpBoundaryBuffer.getInt();
- }
- }
-
- public final double readLong() throws Exception {
- CrailBuffer slice = getSlice(true);
- if (slice == null){
- throw new EOFException();
- }
- if (slice.remaining() >= Long.BYTES){
- long val = slice.getLong();
- position += Long.BYTES;
- syncSlice();
- return val;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.limit(Long.BYTES);
- read(tmpBoundaryBuffer);
- tmpBoundaryBuffer.flip();
- return tmpBoundaryBuffer.getLong();
- }
- }
-
- public final double readShort() throws Exception {
- CrailBuffer slice = getSlice(true);
- if (slice == null){
- throw new EOFException();
- }
- if (slice.remaining() >= Short.BYTES){
- short val = slice.getShort();
- position += Short.BYTES;
- syncSlice();
- return val;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.limit(Short.BYTES);
- read(tmpBoundaryBuffer);
- tmpBoundaryBuffer.flip();
- return tmpBoundaryBuffer.getShort();
- }
- }
-
- @Override
- public void close() throws IOException {
- try {
- if (!open){
- return;
- }
-
- while(!pendingFutures.isEmpty()){
- Future<CrailResult> future = pendingFutures.poll();
- future.get();
- }
-
- while(!originalBuffers.isEmpty()){
- CrailBuffer buffer = originalBuffers.remove();
- fs.freeBuffer(buffer);
- }
-
- this.fs.getStatistics().addProvider(statistics);
- open = false;
- } catch (Exception e) {
- throw new IOException(e);
- }
- }
-
- @Override
- public long skip(long n) throws IOException {
- if (n <= 0) {
- return 0;
- }
-
- long oldPos = position();
- this.seek(oldPos + n);
- long newPos = position();
-
- if (newPos >= oldPos) {
- return newPos - oldPos;
- } else {
- throw new IOException("Error in skip operation");
- }
- }
-
- public void seek(long pos) throws IOException {
- try {
- if (pos >= capacity){
- return;
- }
- if (pos == position){
- return;
- }
-
- long startPosition = CrailUtils.bufferStartAddress(position, actualSliceSize);
- long endPosition = startPosition + (readySlices.size() + pendingSlices.size())*actualSliceSize;
- if (pos >= startPosition && pos < endPosition){
- long currentPosition = startPosition;
- tmpSlices.clear();
- while(!freeSlices.isEmpty()){
- tmpSlices.add(freeSlices.poll());
- }
- while(!readySlices.isEmpty() && pos >= currentPosition + actualSliceSize){
- currentPosition += actualSliceSize;
- tmpSlices.add(readySlices.poll());
- }
- while(!pendingFutures.isEmpty() && pos >= currentPosition + actualSliceSize){
- Future<CrailResult> future = pendingFutures.poll();
- future.get();
- currentPosition += actualSliceSize;
- tmpSlices.add(pendingSlices.poll());
- }
- while(!tmpSlices.isEmpty()){
- triggerRead(tmpSlices.poll());
- }
- this.position = pos;
- CrailBuffer slice = getSlice(true);
- long bufPosition = pos - currentPosition;
- slice.position((int) bufPosition);
- } else {
- long sliceStart = CrailUtils.bufferStartAddress(pos, actualSliceSize);
- getStream().seek(sliceStart);
- tmpSlices.clear();
- while(!freeSlices.isEmpty()){
- tmpSlices.add(freeSlices.poll());
- }
- while(!readySlices.isEmpty()){
- tmpSlices.add(readySlices.poll());
- }
- while(!pendingFutures.isEmpty()){
- Future<CrailResult> future = pendingFutures.poll();
- future.get();
- tmpSlices.add(pendingSlices.poll());
- }
- while(!tmpSlices.isEmpty()){
- triggerRead(tmpSlices.poll());
- }
- this.position = pos;
- CrailBuffer slice = getSlice(true);
- long bufPosition = pos - sliceStart;
- slice.position((int) bufPosition);
- }
- } catch(Exception e){
- e.printStackTrace();
- throw new IOException("position " + position + ", pos " + pos + ", free " + freeSlices.size() + ", ready " + readySlices.size() + ", pending " + pendingSlices.size() + ", capacity " + capacity + ", exception " + e);
- }
- }
-
- public int available() {
- try {
- CrailBuffer buffer = getSlice(false);
-// LOG.info("available on path " + file.getPath() + ", inputStream.pos " + inputStream.position() + ", buffered.position " + this.position() + ", ready " + readySlices.size() + ", pending " + pendingSlices.size() + ", buffer " + buffer);
- if (buffer != null){
- return buffer.remaining();
- } else {
- return 0;
- }
- } catch(Exception e){
- return -1;
- }
- }
-
- public long position() {
- return position;
- }
-
- //---------------------- ByteBuffer interface
-
- private CrailBuffer getSlice(boolean blocking) throws Exception {
- CrailBuffer slice = readySlices.peek();
- if (slice == null){
- Future<CrailResult> future = pendingFutures.peek();
- if (future == null){
- tmpSlices.clear();
- while(!freeSlices.isEmpty()){
- tmpSlices.add(freeSlices.poll());
- }
- while(!tmpSlices.isEmpty()){
- triggerRead(tmpSlices.poll());
- }
- future = pendingFutures.peek();
- }
- if (future != null){
- statistics.incTotalOps();
- if (blocking){
- future.get();
- }
- if (future.isDone()){
- future = pendingFutures.poll();
- statistics.incNonBlockingOps();
- slice = pendingSlices.poll();
- slice.flip();
- readySlices.add(slice);
- } else {
- slice = null;
- }
- } else {
- slice = null;
- }
- }
- return slice;
- }
-
- private void syncSlice() throws Exception {
- CrailBuffer slice = readySlices.peek();
- if (slice != null && slice.remaining() == 0){
- slice = readySlices.poll();
- triggerRead(slice);
- }
- }
-
- private void triggerRead(CrailBuffer slice) throws Exception {
- slice.clear();
- CrailInputStream inputStream = getStream();
- if (inputStream != null){
- Future<CrailResult> future = inputStream.read(slice);
- if (future != null){
- pendingSlices.add(slice);
- pendingFutures.add(future);
- } else {
- freeSlices.add(slice);
- }
- putStream();
- }
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailBufferedOutputStream.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailBufferedOutputStream.java b/client/src/main/java/com/ibm/crail/CrailBufferedOutputStream.java
deleted file mode 100644
index 385d082..0000000
--- a/client/src/main/java/com/ibm/crail/CrailBufferedOutputStream.java
+++ /dev/null
@@ -1,351 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.nio.ByteBuffer;
-import java.util.LinkedList;
-import java.util.concurrent.Future;
-
-import org.slf4j.Logger;
-
-import com.ibm.crail.conf.CrailConstants;
-import com.ibm.crail.utils.CrailImmediateOperation;
-import com.ibm.crail.utils.CrailUtils;
-import com.ibm.crail.utils.RingBuffer;
-
-
-public class CrailBufferedOutputStream extends OutputStream {
- public static final Logger LOG = CrailUtils.getLogger();
-
- private CrailFS crailFS;
- private CrailFile file;
- private long writeHint;
- private CrailOutputStream outputStream;
- private LinkedList<CrailBuffer> originalBuffers;
- private RingBuffer<CrailBuffer> readySlices;
- private RingBuffer<CrailBuffer> pendingSlices;
- private RingBuffer<Future<CrailResult>> pendingFutures;
- private long position;
- private boolean open;
- private CrailBufferedStatistics statistics;
- private int actualSliceSize;
-
- private CrailImmediateOperation noOp;
- private ByteBuffer tmpBoundaryBuffer;
- private byte[] tmpByteBuf;
-
- CrailBufferedOutputStream(CrailFile file, long writeHint) throws Exception {
- this.crailFS = file.getFileSystem();
- this.file = file;
- this.writeHint = writeHint;
- this.outputStream = null;
- this.statistics = new CrailBufferedStatistics("buffered/out");
-
- int allocationSize = Math.max(CrailConstants.BUFFER_SIZE, CrailConstants.SLICE_SIZE);
- this.actualSliceSize = Math.min(CrailConstants.BUFFER_SIZE, CrailConstants.SLICE_SIZE);
- int sliceCount = allocationSize / actualSliceSize;
- this.originalBuffers = new LinkedList<CrailBuffer>();
- this.readySlices = new RingBuffer<CrailBuffer>(sliceCount);
- this.pendingSlices = new RingBuffer<CrailBuffer>(sliceCount);
- this.pendingFutures = new RingBuffer<Future<CrailResult>>(sliceCount);
-
- for (int currentSize = 0; currentSize < allocationSize; currentSize += CrailConstants.BUFFER_SIZE){
- CrailBuffer buffer = crailFS.allocateBuffer();
- originalBuffers.add(buffer);
- }
- for (CrailBuffer buffer : originalBuffers){
- while(buffer.hasRemaining()){
- buffer.limit(buffer.position() + actualSliceSize);
- CrailBuffer slice = buffer.slice();
- slice.clear();
- readySlices.add(slice);
-
- int newpos = buffer.position() + actualSliceSize;
- buffer.clear();
- buffer.position(newpos);
- }
- }
- this.tmpByteBuf = new byte[1];
- this.tmpBoundaryBuffer = ByteBuffer.allocate(8);
- this.noOp = new CrailImmediateOperation(0);
- this.position = 0;
- this.open = true;
- }
-
- public final void write(int dataBuf) throws IOException {
- tmpByteBuf[0] = (byte) dataBuf;
- this.write(tmpByteBuf);
- }
-
- public final void write(byte[] dataBuf) throws IOException {
- this.write(dataBuf, 0, dataBuf.length);
- }
-
- public final void write(byte[] dataBuf, int off, int len) throws IOException {
- try {
- if (dataBuf == null) {
- throw new NullPointerException();
- } else if ((off < 0) || (off > dataBuf.length) || (len < 0) || ((off + len) > dataBuf.length) || ((off + len) < 0)) {
- throw new IndexOutOfBoundsException();
- } else if (!open) {
- throw new IOException("stream closed");
- } else if (len == 0) {
- return;
- }
-
- while (len > 0){
- CrailBuffer slice = getSlice();
- int bufferRemaining = Math.min(len, slice.remaining());
- slice.put(dataBuf, off, bufferRemaining);
- off += bufferRemaining;
- len -= bufferRemaining;
- position += bufferRemaining;
- syncSlice();
- }
- } catch (Exception e) {
- throw new IOException(e);
- }
- }
-
- public final void write(ByteBuffer dataBuf) throws IOException {
- try {
- if (dataBuf == null) {
- throw new NullPointerException();
- } else if (!open) {
- throw new IOException("stream closed");
- } else if (dataBuf.remaining() == 0) {
- return;
- }
-
- int len = dataBuf.remaining();
- while (len > 0) {
- CrailBuffer slice = getSlice();
- int bufferRemaining = Math.min(len, slice.remaining());
- int oldLimit = dataBuf.limit();
- dataBuf.limit(dataBuf.position() + bufferRemaining);
- slice.put(dataBuf);
- dataBuf.limit(oldLimit);
- len -= bufferRemaining;
- position += bufferRemaining;
- syncSlice();
- }
- } catch (Exception e) {
- throw new IOException(e);
- }
- }
-
- public final void writeDouble(double value) throws Exception {
- CrailBuffer slice = getSlice();
- if (slice.remaining() >= Double.BYTES){
- slice.putDouble(value);
- syncSlice();
- position += Double.BYTES;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.putDouble(value);
- tmpBoundaryBuffer.flip();
- write(tmpBoundaryBuffer);
- }
- }
-
- public final void writeFloat(float value) throws Exception {
- CrailBuffer slice = getSlice();
- if (slice.remaining() >= Float.BYTES){
- slice.putFloat(value);
- syncSlice();
- position += Float.BYTES;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.putFloat(value);
- tmpBoundaryBuffer.flip();
- write(tmpBoundaryBuffer);
- }
- }
-
- public final void writeInt(int value) throws Exception {
- CrailBuffer slice = getSlice();
- if (slice.remaining() >= Integer.BYTES){
- slice.putInt(value);
- syncSlice();
- position += Integer.BYTES;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.putInt(value);
- tmpBoundaryBuffer.flip();
- write(tmpBoundaryBuffer);
- }
- }
-
- public final void writeLong(long value) throws Exception {
- CrailBuffer slice = getSlice();
- if (slice.remaining() >= Long.BYTES){
- slice.putLong(value);
- syncSlice();
- position += Long.BYTES;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.putLong(value);
- tmpBoundaryBuffer.flip();
- write(tmpBoundaryBuffer);
- }
- }
-
- public final void writeShort(short value) throws Exception {
- CrailBuffer slice = getSlice();
- if (slice.remaining() >= Short.BYTES){
- slice.putShort(value);
- syncSlice();
- position += Short.BYTES;
- } else {
- tmpBoundaryBuffer.clear();
- tmpBoundaryBuffer.putShort(value);
- tmpBoundaryBuffer.flip();
- write(tmpBoundaryBuffer);
- }
- }
-
- public Future<CrailResult> purge() throws IOException {
- if (!open) {
- throw new IOException("stream closed");
- }
-
- try {
- while(!readySlices.isEmpty()){
- CrailBuffer slice = readySlices.poll();
- if (slice.position() > 0){
- slice.flip();
- Future<CrailResult> future = outputStream().write(slice);
- pendingSlices.add(slice);
- pendingFutures.add(future);
- }
- }
-
- if (pendingFutures.isEmpty()){
- return noOp;
- } else {
- CrailPurgeOperation purgeOp = new CrailPurgeOperation();
- while(!pendingFutures.isEmpty()){
- Future<CrailResult> future = pendingFutures.poll();
- purgeOp.add(future);
- }
- return purgeOp;
- }
- } catch (Exception e) {
- throw new IOException(e);
- }
- }
-
- public Future<Void> sync() throws IOException {
- Future<Void> future = outputStream().sync();
- return future;
- }
-
- public void close() throws IOException {
- try {
- if (!open){
- return;
- }
-
- while(!readySlices.isEmpty()){
- CrailBuffer slice = readySlices.poll();
- if (slice.position() > 0){
- slice.flip();
- Future<CrailResult> future = outputStream().write(slice);
- pendingSlices.add(slice);
- pendingFutures.add(future);
- }
- }
-
- while(!pendingFutures.isEmpty()){
- Future<CrailResult> future = pendingFutures.poll();
- future.get();
- }
-
- while(!originalBuffers.isEmpty()){
- CrailBuffer buffer = originalBuffers.remove();
- crailFS.freeBuffer(buffer);
- }
-
- outputStream().close();
- this.crailFS.getStatistics().addProvider(statistics);
- open = false;
- } catch (Exception e) {
- throw new IOException(e);
- }
- }
-
- public long position() {
- return position;
- }
-
- @Override
- public void flush() throws IOException {
- //flush should not be called, use purge instead!
- }
-
- public CrailNode getFile() throws IOException {
- return outputStream().getFile();
- }
-
- private CrailBuffer getSlice() throws Exception {
- CrailBuffer slice = readySlices.peek();
- if (slice == null){
- Future<CrailResult> future = pendingFutures.poll();
- statistics.incTotalOps();
- if (future.isDone()){
- statistics.incNonBlockingOps();
- } else {
- statistics.incBlockingOps();
- }
- future.get();
- slice = pendingSlices.poll();
- slice.clear();
- readySlices.add(slice);
- }
- return slice;
- }
-
- private void syncSlice() throws Exception {
- CrailBuffer slice = readySlices.peek();
- if (slice != null && slice.remaining() == 0){
- slice = readySlices.poll();
- slice.flip();
- Future<CrailResult> future = outputStream().write(slice);
- pendingSlices.add(slice);
- pendingFutures.add(future);
- }
- }
-
- private final CrailOutputStream outputStream() throws IOException {
- if (outputStream == null){
- try {
- outputStream = file.getDirectOutputStream(writeHint);
- } catch(Exception e){
- throw new IOException(e);
- }
- }
- return outputStream;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailBufferedStatistics.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailBufferedStatistics.java b/client/src/main/java/com/ibm/crail/CrailBufferedStatistics.java
deleted file mode 100644
index a03bbd4..0000000
--- a/client/src/main/java/com/ibm/crail/CrailBufferedStatistics.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.util.concurrent.atomic.AtomicLong;
-import com.ibm.crail.CrailStatistics.StatisticsProvider;
-
-class CrailBufferedStatistics implements StatisticsProvider {
- private String type;
- private AtomicLong totalOps;
- private AtomicLong blockingOps;
- private AtomicLong nonBlockingOps;
-
- public CrailBufferedStatistics(String type){
- this.type = type;
- this.totalOps = new AtomicLong(0);
- this.blockingOps = new AtomicLong(0);
- this.nonBlockingOps = new AtomicLong(0);
- }
-
- public void mergeStatistics(StatisticsProvider provider){
- if (provider instanceof CrailBufferedStatistics){
- CrailBufferedStatistics newProvider = (CrailBufferedStatistics) provider;
- this.totalOps.addAndGet(newProvider.getTotalOps());
- this.blockingOps.addAndGet(newProvider.getBlockingOps());
- this.nonBlockingOps.addAndGet(newProvider.getNonBlockingOps());
- }
- }
-
- @Override
- public String providerName() {
- return type;
- }
-
- @Override
- public String printStatistics() {
- return "totalOps " + getTotalOps() + ", blockingOps " + getBlockingOps() + ", nonBlockingOps " + getNonBlockingOps();
- }
-
- @Override
- public void resetStatistics() {
- this.totalOps.set(0);
- this.blockingOps.set(0);
- this.nonBlockingOps.set(0);
- }
-
- public void incTotalOps(){
- this.totalOps.incrementAndGet();
- }
-
- public void incBlockingOps(){
- this.blockingOps.incrementAndGet();
- }
-
- public void incNonBlockingOps(){
- this.nonBlockingOps.incrementAndGet();
- }
-
- public long getTotalOps(){
- return totalOps.get();
- }
-
- public long getBlockingOps(){
- return blockingOps.get();
- }
-
- public long getNonBlockingOps(){
- return nonBlockingOps.get();
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailContainer.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailContainer.java b/client/src/main/java/com/ibm/crail/CrailContainer.java
deleted file mode 100644
index a8c2756..0000000
--- a/client/src/main/java/com/ibm/crail/CrailContainer.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package com.ibm.crail;
-
-import java.util.Iterator;
-
-public interface CrailContainer extends CrailNode {
- public abstract int files();
- public abstract Iterator<String> listEntries() throws Exception;
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailDirectory.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailDirectory.java b/client/src/main/java/com/ibm/crail/CrailDirectory.java
deleted file mode 100644
index deb1396..0000000
--- a/client/src/main/java/com/ibm/crail/CrailDirectory.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.util.Iterator;
-
-public interface CrailDirectory extends CrailContainer {
- public abstract int files();
- public abstract Iterator<String> listEntries() throws Exception;
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailFS.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailFS.java b/client/src/main/java/com/ibm/crail/CrailFS.java
deleted file mode 100644
index 631578a..0000000
--- a/client/src/main/java/com/ibm/crail/CrailFS.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.io.IOException;
-import java.util.concurrent.atomic.AtomicLong;
-
-import org.slf4j.Logger;
-
-import com.ibm.crail.conf.CrailConfiguration;
-import com.ibm.crail.conf.CrailConstants;
-import com.ibm.crail.core.CoreFileSystem;
-import com.ibm.crail.utils.CrailUtils;
-
-public abstract class CrailFS {
- private static final Logger LOG = CrailUtils.getLogger();
- private static AtomicLong referenceCounter = new AtomicLong(0);
- private static CrailFS instance = null;
-
- public abstract Upcoming<CrailNode> create(String path, CrailNodeType type, CrailStorageClass storageClass, CrailLocationClass locationClass) throws Exception;
- public abstract Upcoming<CrailNode> lookup(String path) throws Exception;
- public abstract Upcoming<CrailNode> rename(String srcPath, String dstPath) throws Exception;
- public abstract Upcoming<CrailNode> delete(String path, boolean recursive) throws Exception;
- public abstract CrailBuffer allocateBuffer() throws Exception;
- public abstract void freeBuffer(CrailBuffer buffer) throws Exception;
- public abstract CrailStatistics getStatistics();
- public abstract CrailLocationClass getLocationClass();
- protected abstract void closeFileSystem() throws Exception;
-
- public void close() throws Exception {
- synchronized(referenceCounter){
- if (CrailConstants.SINGLETON){
- long counter = referenceCounter.decrementAndGet();
- if (counter == 0){
- LOG.info("Closing CrailFS singleton");
- try {
- closeFileSystem();
- instance = null;
- } catch (Exception e){
- throw new IOException(e);
- }
- }
- } else {
- LOG.info("Closing CrailFS non-singleton");
- try {
- closeFileSystem();
- } catch (Exception e){
- throw new IOException(e);
- }
- }
-
- }
- }
-
- public static CrailFS newInstance(CrailConfiguration conf) throws Exception {
- synchronized(referenceCounter){
- boolean isSingleton = conf.getBoolean(CrailConstants.SINGLETON_KEY, false);
- if (isSingleton) {
- referenceCounter.incrementAndGet();
- if (instance == null) {
- LOG.info("creating singleton crail file system");
- instance = new CoreFileSystem(conf);
- return instance;
- } else {
- LOG.info("returning singleton crail file system");
- return instance;
- }
- } else {
- LOG.info("creating non-singleton crail file system");
- return new CoreFileSystem(conf);
- }
- }
- }
-}
-
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailFile.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailFile.java b/client/src/main/java/com/ibm/crail/CrailFile.java
deleted file mode 100644
index 37509dc..0000000
--- a/client/src/main/java/com/ibm/crail/CrailFile.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-public interface CrailFile extends CrailNode {
- public abstract CrailInputStream getDirectInputStream(long readHint) throws Exception;
- public abstract CrailOutputStream getDirectOutputStream(long writeHint) throws Exception;
- public abstract long getToken();
- public abstract long getFd();
-
- default CrailBufferedInputStream getBufferedInputStream(long readHint) throws Exception {
- return new FileBufferedInputStream(this, readHint);
- }
-
- default CrailBufferedOutputStream getBufferedOutputStream(long writeHint) throws Exception {
- return new CrailBufferedOutputStream(this, writeHint);
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailInputStream.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailInputStream.java b/client/src/main/java/com/ibm/crail/CrailInputStream.java
deleted file mode 100644
index 8bd43ef..0000000
--- a/client/src/main/java/com/ibm/crail/CrailInputStream.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.io.IOException;
-import java.util.concurrent.Future;
-
-public interface CrailInputStream {
- public CrailNode getFile();
- public Future<CrailResult> read(CrailBuffer dataBuf) throws Exception;
- public void seek(long pos) throws IOException;
- public int available();
- public long position();
- void close() throws Exception;
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailKeyValue.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailKeyValue.java b/client/src/main/java/com/ibm/crail/CrailKeyValue.java
deleted file mode 100644
index 1b9c35f..0000000
--- a/client/src/main/java/com/ibm/crail/CrailKeyValue.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package com.ibm.crail;
-
-public interface CrailKeyValue extends CrailFile {
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailLocationClass.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailLocationClass.java b/client/src/main/java/com/ibm/crail/CrailLocationClass.java
deleted file mode 100644
index 7a8ce2c..0000000
--- a/client/src/main/java/com/ibm/crail/CrailLocationClass.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-public class CrailLocationClass {
- public static final CrailLocationClass PARENT = CrailLocationClass.get(-1);
- public static final CrailLocationClass DEFAULT = CrailLocationClass.get(0);
-
- private int value;
-
- public static CrailLocationClass get(int value){
- return new CrailLocationClass(value);
- }
-
- private CrailLocationClass(int value){
- this.value = value;
- }
-
- public int value(){
- return this.value;
- }
-
- @Override
- public String toString() {
- return "" + value;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailMultiFile.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailMultiFile.java b/client/src/main/java/com/ibm/crail/CrailMultiFile.java
deleted file mode 100644
index ba30b4e..0000000
--- a/client/src/main/java/com/ibm/crail/CrailMultiFile.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-public interface CrailMultiFile extends CrailContainer {
- default CrailBufferedInputStream getMultiStream(int outstanding) throws Exception{
- return new MultiFileBufferedInputStream(this.getFileSystem(), listEntries(), outstanding, files());
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailNode.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailNode.java b/client/src/main/java/com/ibm/crail/CrailNode.java
deleted file mode 100644
index be8b405..0000000
--- a/client/src/main/java/com/ibm/crail/CrailNode.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-
-public interface CrailNode {
- public CrailFS getFileSystem();
- public String getPath();
- public abstract CrailNode syncDir() throws Exception;
- public abstract long getModificationTime();
- public abstract long getCapacity();
- public abstract CrailNodeType getType();
- public abstract CrailFile asFile() throws Exception;
- public abstract CrailContainer asContainer() throws Exception;
- public abstract CrailDirectory asDirectory() throws Exception;
- public abstract CrailMultiFile asMultiFile() throws Exception;
- public abstract CrailTable asTable() throws Exception;
- public abstract CrailKeyValue asKeyValue() throws Exception;
- public abstract CrailBlockLocation[] getBlockLocations(long start, long len) throws Exception;
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailNodeType.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailNodeType.java b/client/src/main/java/com/ibm/crail/CrailNodeType.java
deleted file mode 100644
index 4fdec15..0000000
--- a/client/src/main/java/com/ibm/crail/CrailNodeType.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-public enum CrailNodeType {
- DATAFILE(0), DIRECTORY(1), MULTIFILE(2), STREAMFILE(3), TABLE(4), KEYVALUE(5);
-
- private int label;
-
- CrailNodeType(int label){
- this.label = label;
- }
-
- public int getLabel(){
- return this.label;
- }
-
- public boolean isDirectory(){
- return this == DIRECTORY;
- }
-
- public boolean isDataFile(){
- return this == DATAFILE;
- }
-
- public boolean isMultiFile(){
- return this == MULTIFILE;
- }
-
- public boolean isStreamFile(){
- return this == STREAMFILE;
- }
-
- public boolean isTable() {
- return this == TABLE;
- }
-
- public boolean isKeyValue() {
- return this == KEYVALUE;
- }
-
- public boolean isContainer(){
- return this == DIRECTORY || this == MULTIFILE || this == TABLE;
- }
-
- public static CrailNodeType parse(int label) {
- for (CrailNodeType val : CrailNodeType.values()) {
- if (val.getLabel() == label) {
- return val;
- }
- }
- throw new IllegalArgumentException();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailOutputStream.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailOutputStream.java b/client/src/main/java/com/ibm/crail/CrailOutputStream.java
deleted file mode 100644
index 4889a4e..0000000
--- a/client/src/main/java/com/ibm/crail/CrailOutputStream.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.io.IOException;
-import java.util.concurrent.Future;
-
-public interface CrailOutputStream {
- public CrailNode getFile();
- public Future<CrailResult> write(CrailBuffer dataBuf) throws Exception;
- public Future<Void> sync() throws IOException;
- public long position();
- public long getWriteHint();
- public void close() throws Exception;
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailPurgeOperation.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailPurgeOperation.java b/client/src/main/java/com/ibm/crail/CrailPurgeOperation.java
deleted file mode 100644
index ab7e0da..0000000
--- a/client/src/main/java/com/ibm/crail/CrailPurgeOperation.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import com.ibm.crail.utils.MultiFuture;
-
-class CrailPurgeOperation extends MultiFuture<CrailResult, CrailResult> implements CrailResult {
- private long completedLen;
-
- public CrailPurgeOperation() {
- this.completedLen = 0;
- }
-
- @Override
- public void aggregate(CrailResult obj) {
- this.completedLen += obj.getLen();
- }
-
- @Override
- public CrailResult getAggregate() {
- return this;
- }
-
- @Override
- public long getLen() {
- return completedLen;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailResult.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailResult.java b/client/src/main/java/com/ibm/crail/CrailResult.java
deleted file mode 100644
index 549c340..0000000
--- a/client/src/main/java/com/ibm/crail/CrailResult.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-public interface CrailResult {
- public long getLen();
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailStatistics.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailStatistics.java b/client/src/main/java/com/ibm/crail/CrailStatistics.java
deleted file mode 100644
index 2368cd5..0000000
--- a/client/src/main/java/com/ibm/crail/CrailStatistics.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.util.concurrent.ConcurrentHashMap;
-
-import org.slf4j.Logger;
-
-import com.ibm.crail.utils.CrailUtils;
-
-public class CrailStatistics {
- private static final Logger LOG = CrailUtils.getLogger();
- private ConcurrentHashMap<String, StatisticsProvider> statistics;
-
- public CrailStatistics(){
- statistics = new ConcurrentHashMap<String, StatisticsProvider>();
- }
-
- public void addProvider(StatisticsProvider provider){
- StatisticsProvider existing = statistics.putIfAbsent(provider.providerName(), provider);
- if (existing != null){
- existing.mergeStatistics(provider);
- }
- }
-
- public void print(String tag){
- LOG.info("CrailStatistics, tag=" + tag);
- for (StatisticsProvider provider : statistics.values()){
- LOG.info("provider=" + provider.providerName() + " [" + provider.printStatistics() + "]");
- }
- }
-
- public void reset(){
- for (StatisticsProvider provider : statistics.values()){
- provider.resetStatistics();
- }
- }
-
- public static interface StatisticsProvider {
- public String providerName();
- public String printStatistics();
- public void mergeStatistics(StatisticsProvider provider);
- public void resetStatistics();
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailStorageClass.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailStorageClass.java b/client/src/main/java/com/ibm/crail/CrailStorageClass.java
deleted file mode 100644
index 7f582ee..0000000
--- a/client/src/main/java/com/ibm/crail/CrailStorageClass.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-public class CrailStorageClass {
- public static final CrailStorageClass PARENT = CrailStorageClass.get(-1);
- public static final CrailStorageClass DEFAULT = CrailStorageClass.get(0);
-
- private int value;
-
- public static CrailStorageClass get(int value){
- return new CrailStorageClass(value);
- }
-
- private CrailStorageClass(int value){
- this.value = value;
- }
-
- public int value(){
- return this.value;
- }
-
- @Override
- public String toString() {
- return "" + value;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/CrailTable.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/CrailTable.java b/client/src/main/java/com/ibm/crail/CrailTable.java
deleted file mode 100644
index 3c3579b..0000000
--- a/client/src/main/java/com/ibm/crail/CrailTable.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package com.ibm.crail;
-
-public interface CrailTable extends CrailContainer {
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/FileBufferedInputStream.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/FileBufferedInputStream.java b/client/src/main/java/com/ibm/crail/FileBufferedInputStream.java
deleted file mode 100644
index fb16cee..0000000
--- a/client/src/main/java/com/ibm/crail/FileBufferedInputStream.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.io.IOException;
-
-import com.ibm.crail.conf.CrailConstants;
-
-class FileBufferedInputStream extends CrailBufferedInputStream {
- private CrailInputStream inputStream;
-
- FileBufferedInputStream(CrailFile file, long readHint) throws Exception {
- super(file.getFileSystem(), Math.max(CrailConstants.BUFFER_SIZE, CrailConstants.SLICE_SIZE)/Math.min(CrailConstants.BUFFER_SIZE, CrailConstants.SLICE_SIZE), file.getCapacity());
- this.inputStream = file.getDirectInputStream(readHint);
- }
-
- @Override
- public CrailInputStream getStream() throws Exception {
- return inputStream;
- }
-
- @Override
- public void putStream() throws Exception {
-
- }
-
- @Override
- public void close() throws IOException {
- super.close();
- try {
- inputStream.close();
- } catch(Exception e){
- throw new IOException(e);
- }
- }
-
-}
-
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/MultiFileBufferedInputStream.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/MultiFileBufferedInputStream.java b/client/src/main/java/com/ibm/crail/MultiFileBufferedInputStream.java
deleted file mode 100644
index a78b168..0000000
--- a/client/src/main/java/com/ibm/crail/MultiFileBufferedInputStream.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.io.IOException;
-import java.util.Iterator;
-import java.util.LinkedList;
-import com.ibm.crail.utils.RingBuffer;
-
-class MultiFileBufferedInputStream extends CrailBufferedInputStream {
- private CrailFS fs;
- private Iterator<String> paths;
- private RingBuffer<CrailInputStream> readyStreams;
- private LinkedList<CrailInputStream> finalStreams;
-
- MultiFileBufferedInputStream(CrailFS fs, Iterator<String> paths, int outstanding, int files) throws Exception {
- super(fs, outstanding, 0);
- this.fs = fs;
- this.paths = paths;
- this.readyStreams = new RingBuffer<CrailInputStream>(1);
- this.finalStreams = new LinkedList<CrailInputStream>();
- }
-
- @Override
- public CrailInputStream getStream() throws Exception {
- while(readyStreams.isEmpty() && paths.hasNext()){
- String path = paths.next();
- CrailNode node = fs.lookup(path).get();
- if (node != null){
- CrailFile file = node.asFile();
- if (file.getCapacity() > 0){
- CrailInputStream stream = file.getDirectInputStream(file.getCapacity());
- readyStreams.add(stream);
- }
- }
- }
- return readyStreams.peek();
- }
-
-
- public void putStream() throws Exception {
- CrailInputStream stream = readyStreams.peek();
- if (stream.position() >= stream.getFile().getCapacity()) {
- stream = readyStreams.poll();
- finalStreams.add(stream);
- }
- }
-
- @Override
- public void close() throws IOException {
- super.close();
- try {
- while(!readyStreams.isEmpty()){
- finalStreams.add(readyStreams.poll());
- }
- while(paths.hasNext()){
- String path = paths.next();
- CrailFile file = fs.lookup(path).get().asFile();
- if (file != null){
- CrailInputStream stream = file.getDirectInputStream(file.getCapacity());
- finalStreams.add(stream);
- }
- }
- while(!finalStreams.isEmpty()){
- CrailInputStream stream = finalStreams.poll();
- stream.close();
- }
- } catch(Exception e){
- throw new IOException(e);
- }
- }
-
- @Override
- public void seek(long pos) throws IOException {
- throw new IOException("Seek not supported on multistream");
- }
-
-}
-
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/Upcoming.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/Upcoming.java b/client/src/main/java/com/ibm/crail/Upcoming.java
deleted file mode 100644
index dba6be7..0000000
--- a/client/src/main/java/com/ibm/crail/Upcoming.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Crail: A Multi-tiered Distributed Direct Access File System
- *
- * Author: Patrick Stuedi <st...@zurich.ibm.com>
- *
- * Copyright (C) 2016, IBM Corporation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.ibm.crail;
-
-import java.util.concurrent.Future;
-
-public interface Upcoming<T> extends Future<T> {
- T early() throws Exception;
-}
http://git-wip-us.apache.org/repos/asf/incubator-crail/blob/32f8ead2/client/src/main/java/com/ibm/crail/conf/Configurable.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/com/ibm/crail/conf/Configurable.java b/client/src/main/java/com/ibm/crail/conf/Configurable.java
deleted file mode 100644
index de72f8e..0000000
--- a/client/src/main/java/com/ibm/crail/conf/Configurable.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package com.ibm.crail.conf;
-
-import org.slf4j.Logger;
-
-public interface Configurable {
- public void init(CrailConfiguration conf, String[] args) throws Exception;
- public void printConf(Logger log);
-}