Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/accumulo
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/5c23182c Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/5c23182c Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/5c23182c Branch: refs/heads/master Commit: 5c23182cf9fb3471f83a526d7d5761dc5fde05dd Parents: 1dc7783 8353b33 Author: Eric C. Newton <[email protected]> Authored: Tue Aug 26 18:01:12 2014 -0400 Committer: Eric C. Newton <[email protected]> Committed: Tue Aug 26 18:01:12 2014 -0400 ---------------------------------------------------------------------- .gitignore | 19 +- .travis.yml | 18 + README | 41 +- assemble/.gitignore | 25 + assemble/bin/LogForwarder.sh | 50 + assemble/bin/accumulo | 166 + assemble/bin/bootstrap_config.sh | 323 + assemble/bin/bootstrap_hdfs.sh | 81 + assemble/bin/build_native_library.sh | 74 + assemble/bin/check-slaves | 199 + assemble/bin/config.sh | 171 + assemble/bin/generate_monitor_certificate.sh | 84 + assemble/bin/start-all.sh | 77 + assemble/bin/start-here.sh | 77 + assemble/bin/start-server.sh | 83 + assemble/bin/stop-all.sh | 68 + assemble/bin/stop-here.sh | 58 + assemble/bin/stop-server.sh | 54 + assemble/bin/tdown.sh | 49 + assemble/bin/tool.sh | 93 + assemble/bin/tup.sh | 45 + assemble/build.sh | 19 +- assemble/conf/examples/crypto/README | 23 + assemble/conf/examples/crypto/accumulo-site.xml | 171 + .../examples/vfs-classloader/accumulo-site.xml | 175 + assemble/conf/templates/accumulo-env.sh | 65 + assemble/conf/templates/accumulo-metrics.xml | 60 + assemble/conf/templates/accumulo-site.xml | 132 + assemble/conf/templates/accumulo.policy.example | 143 + assemble/conf/templates/auditLog.xml | 35 + assemble/conf/templates/gc | 16 + .../conf/templates/generic_logger.properties | 58 + assemble/conf/templates/generic_logger.xml | 83 + assemble/conf/templates/log4j.properties | 42 + assemble/conf/templates/masters | 16 + assemble/conf/templates/monitor | 16 + .../conf/templates/monitor_logger.properties | 44 + assemble/conf/templates/monitor_logger.xml | 64 + assemble/conf/templates/slaves | 16 + assemble/conf/templates/tracers | 16 + assemble/pom.xml | 60 + assemble/src/main/assemblies/component.xml | 71 +- .../main/scripts/generate-example-configs.sh | 25 + bin/LogForwarder.sh | 50 - bin/accumulo | 171 - bin/bootstrap_config.sh | 319 - bin/bootstrap_hdfs.sh | 84 - bin/build_native_library.sh | 74 - bin/check-slaves | 199 - bin/config.sh | 173 - bin/generate_monitor_certificate.sh | 84 - bin/start-all.sh | 77 - bin/start-here.sh | 78 - bin/start-server.sh | 85 - bin/stop-all.sh | 68 - bin/stop-here.sh | 60 - bin/stop-server.sh | 56 - bin/tdown.sh | 49 - bin/tool.sh | 93 - bin/tup.sh | 46 - conf/accumulo.policy.example | 143 - .../1GB/native-standalone/accumulo-env.sh | 66 - .../1GB/native-standalone/accumulo-metrics.xml | 60 - .../1GB/native-standalone/accumulo-site.xml | 122 - .../examples/1GB/native-standalone/auditLog.xml | 41 - conf/examples/1GB/native-standalone/gc | 16 - .../1GB/native-standalone/generic_logger.xml | 83 - .../1GB/native-standalone/log4j.properties | 42 - conf/examples/1GB/native-standalone/masters | 16 - conf/examples/1GB/native-standalone/monitor | 16 - .../1GB/native-standalone/monitor_logger.xml | 64 - conf/examples/1GB/native-standalone/slaves | 16 - conf/examples/1GB/native-standalone/tracers | 16 - conf/examples/1GB/standalone/accumulo-env.sh | 66 - .../1GB/standalone/accumulo-metrics.xml | 60 - conf/examples/1GB/standalone/accumulo-site.xml | 122 - conf/examples/1GB/standalone/auditLog.xml | 41 - conf/examples/1GB/standalone/gc | 16 - conf/examples/1GB/standalone/generic_logger.xml | 83 - conf/examples/1GB/standalone/log4j.properties | 42 - conf/examples/1GB/standalone/masters | 16 - conf/examples/1GB/standalone/monitor | 16 - conf/examples/1GB/standalone/monitor_logger.xml | 64 - conf/examples/1GB/standalone/slaves | 16 - conf/examples/1GB/standalone/tracers | 16 - .../2GB/native-standalone/accumulo-env.sh | 65 - .../2GB/native-standalone/accumulo-metrics.xml | 60 - .../2GB/native-standalone/accumulo-site.xml | 112 - .../examples/2GB/native-standalone/auditLog.xml | 41 - conf/examples/2GB/native-standalone/gc | 16 - .../2GB/native-standalone/generic_logger.xml | 83 - .../2GB/native-standalone/log4j.properties | 42 - conf/examples/2GB/native-standalone/masters | 16 - conf/examples/2GB/native-standalone/monitor | 16 - .../2GB/native-standalone/monitor_logger.xml | 64 - conf/examples/2GB/native-standalone/slaves | 16 - conf/examples/2GB/native-standalone/tracers | 16 - conf/examples/2GB/standalone/accumulo-env.sh | 66 - .../2GB/standalone/accumulo-metrics.xml | 60 - conf/examples/2GB/standalone/accumulo-site.xml | 125 - conf/examples/2GB/standalone/auditLog.xml | 41 - conf/examples/2GB/standalone/gc | 16 - conf/examples/2GB/standalone/generic_logger.xml | 83 - conf/examples/2GB/standalone/log4j.properties | 42 - conf/examples/2GB/standalone/masters | 16 - conf/examples/2GB/standalone/monitor | 16 - conf/examples/2GB/standalone/monitor_logger.xml | 64 - conf/examples/2GB/standalone/slaves | 16 - conf/examples/2GB/standalone/tracers | 16 - .../3GB/native-standalone/accumulo-env.sh | 65 - .../3GB/native-standalone/accumulo-metrics.xml | 60 - .../3GB/native-standalone/accumulo-site.xml | 107 - .../examples/3GB/native-standalone/auditLog.xml | 41 - conf/examples/3GB/native-standalone/gc | 16 - .../3GB/native-standalone/generic_logger.xml | 83 - .../3GB/native-standalone/log4j.properties | 42 - conf/examples/3GB/native-standalone/masters | 16 - conf/examples/3GB/native-standalone/monitor | 16 - .../3GB/native-standalone/monitor_logger.xml | 64 - conf/examples/3GB/native-standalone/slaves | 16 - conf/examples/3GB/native-standalone/tracers | 16 - conf/examples/3GB/standalone/accumulo-env.sh | 65 - .../3GB/standalone/accumulo-metrics.xml | 60 - conf/examples/3GB/standalone/accumulo-site.xml | 112 - conf/examples/3GB/standalone/auditLog.xml | 41 - conf/examples/3GB/standalone/gc | 16 - conf/examples/3GB/standalone/generic_logger.xml | 83 - conf/examples/3GB/standalone/log4j.properties | 42 - conf/examples/3GB/standalone/masters | 16 - conf/examples/3GB/standalone/monitor | 16 - conf/examples/3GB/standalone/monitor_logger.xml | 64 - conf/examples/3GB/standalone/slaves | 16 - conf/examples/3GB/standalone/tracers | 16 - .../512MB/native-standalone/accumulo-env.sh | 65 - .../native-standalone/accumulo-metrics.xml | 60 - .../512MB/native-standalone/accumulo-site.xml | 117 - .../512MB/native-standalone/auditLog.xml | 41 - conf/examples/512MB/native-standalone/gc | 16 - .../512MB/native-standalone/generic_logger.xml | 83 - .../512MB/native-standalone/log4j.properties | 42 - conf/examples/512MB/native-standalone/masters | 16 - conf/examples/512MB/native-standalone/monitor | 16 - .../512MB/native-standalone/monitor_logger.xml | 64 - conf/examples/512MB/native-standalone/slaves | 16 - conf/examples/512MB/native-standalone/tracers | 16 - conf/examples/512MB/standalone/accumulo-env.sh | 65 - .../512MB/standalone/accumulo-metrics.xml | 60 - .../examples/512MB/standalone/accumulo-site.xml | 123 - conf/examples/512MB/standalone/auditLog.xml | 41 - conf/examples/512MB/standalone/gc | 16 - .../512MB/standalone/generic_logger.xml | 83 - conf/examples/512MB/standalone/log4j.properties | 42 - conf/examples/512MB/standalone/masters | 16 - conf/examples/512MB/standalone/monitor | 16 - .../512MB/standalone/monitor_logger.xml | 64 - conf/examples/512MB/standalone/slaves | 16 - conf/examples/512MB/standalone/tracers | 16 - conf/examples/crypto/README | 23 - conf/examples/crypto/accumulo-site.xml | 171 - conf/examples/vfs-classloader/accumulo-site.xml | 175 - conf/templates/accumulo-env.sh | 66 - conf/templates/accumulo-metrics.xml | 60 - conf/templates/accumulo-site.xml | 132 - conf/templates/accumulo.policy.example | 143 - conf/templates/auditLog.xml | 35 - conf/templates/gc | 16 - conf/templates/generic_logger.properties | 58 - conf/templates/generic_logger.xml | 83 - conf/templates/log4j.properties | 42 - conf/templates/masters | 16 - conf/templates/monitor | 16 - conf/templates/monitor_logger.properties | 44 - conf/templates/monitor_logger.xml | 64 - conf/templates/slaves | 16 - conf/templates/tracers | 16 - core/.gitignore | 25 + core/pom.xml | 27 + .../org/apache/accumulo/core/Constants.java | 7 +- .../accumulo/core/bloomfilter/BloomFilter.java | 5 +- .../accumulo/core/cli/BatchWriterOpts.java | 1 + .../core/client/AccumuloSecurityException.java | 8 + .../accumulo/core/client/BatchWriterConfig.java | 107 +- .../apache/accumulo/core/client/Connector.java | 9 + .../core/client/admin/InstanceOperations.java | 5 + .../client/admin/ReplicationOperations.java | 78 + .../core/client/impl/BatchWriterImpl.java | 4 +- .../core/client/impl/ConnectorImpl.java | 12 + .../client/impl/InstanceOperationsImpl.java | 16 + .../accumulo/core/client/impl/MasterClient.java | 1 + .../core/client/impl/ReplicationClient.java | 246 + .../client/impl/ReplicationOperationsImpl.java | 284 + .../client/impl/ServerConfigurationUtil.java | 63 +- .../core/client/impl/TableOperationsImpl.java | 6 +- .../accumulo/core/client/impl/Tables.java | 82 +- .../client/impl/TabletServerBatchWriter.java | 100 +- .../core/client/impl/ThriftScanner.java | 16 +- .../core/client/impl/ThriftTransportPool.java | 2 +- .../core/client/impl/thrift/ClientService.java | 2939 +++++-- .../client/impl/thrift/ConfigurationType.java | 2 +- .../client/impl/thrift/SecurityErrorCode.java | 2 +- .../core/client/impl/thrift/TDiskUsage.java | 25 +- .../core/client/impl/thrift/TableOperation.java | 2 +- .../thrift/TableOperationExceptionType.java | 2 +- .../impl/thrift/ThriftSecurityException.java | 16 +- .../thrift/ThriftTableOperationException.java | 28 +- .../core/client/impl/thrift/ThriftTest.java | 243 +- .../core/client/mock/MockConnector.java | 7 + .../client/mock/MockInstanceOperations.java | 8 +- .../client/mock/MockNamespaceOperations.java | 5 +- .../core/client/mock/MockTableOperations.java | 4 +- .../client/replication/PeerExistsException.java | 36 + .../replication/PeerNotFoundException.java | 40 + .../core/client/replication/ReplicaSystem.java | 46 + .../replication/ReplicaSystemFactory.java | 82 + .../tokens/CredentialProviderToken.java | 91 + .../client/security/tokens/PasswordToken.java | 8 +- .../core/conf/AccumuloConfiguration.java | 12 - .../accumulo/core/conf/ConfigSanityCheck.java | 43 +- .../accumulo/core/conf/ConfigurationDocGen.java | 25 +- .../conf/CredentialProviderFactoryShim.java | 439 + .../core/conf/DefaultConfiguration.java | 62 +- .../core/conf/ObservableConfiguration.java | 108 + .../org/apache/accumulo/core/conf/Property.java | 61 +- .../apache/accumulo/core/conf/PropertyType.java | 3 +- .../accumulo/core/conf/SiteConfiguration.java | 69 +- .../accumulo/core/data/ConditionalMutation.java | 7 + .../org/apache/accumulo/core/data/Mutation.java | 84 +- .../core/data/thrift/InitialMultiScan.java | 16 +- .../accumulo/core/data/thrift/InitialScan.java | 16 +- .../accumulo/core/data/thrift/IterInfo.java | 20 +- .../accumulo/core/data/thrift/MapFileInfo.java | 12 +- .../core/data/thrift/MultiScanResult.java | 192 +- .../accumulo/core/data/thrift/ScanResult.java | 54 +- .../accumulo/core/data/thrift/TCMResult.java | 16 +- .../accumulo/core/data/thrift/TCMStatus.java | 2 +- .../accumulo/core/data/thrift/TColumn.java | 20 +- .../accumulo/core/data/thrift/TCondition.java | 36 +- .../core/data/thrift/TConditionalMutation.java | 58 +- .../core/data/thrift/TConditionalSession.java | 20 +- .../thrift/TConstraintViolationSummary.java | 24 +- .../apache/accumulo/core/data/thrift/TKey.java | 28 +- .../accumulo/core/data/thrift/TKeyExtent.java | 20 +- .../accumulo/core/data/thrift/TKeyValue.java | 16 +- .../accumulo/core/data/thrift/TMutation.java | 211 +- .../accumulo/core/data/thrift/TRange.java | 32 +- .../accumulo/core/data/thrift/UpdateErrors.java | 158 +- .../accumulo/core/file/rfile/PrintInfo.java | 5 +- .../apache/accumulo/core/file/rfile/RFile.java | 2 +- .../core/file/rfile/bcfile/PrintInfo.java | 5 +- .../core/gc/thrift/GCMonitorService.java | 108 +- .../accumulo/core/gc/thrift/GCStatus.java | 24 +- .../accumulo/core/gc/thrift/GcCycleStats.java | 32 +- .../accumulo/core/iterators/Combiner.java | 8 +- .../accumulo/core/iterators/IteratorUtil.java | 64 +- .../iterators/conf/ColumnToClassMapping.java | 11 +- .../core/iterators/system/HeapIterator.java | 132 +- .../system/SourceSwitchingIterator.java | 2 +- .../core/iterators/user/RegExFilter.java | 7 +- .../iterators/user/RowEncodingIterator.java | 8 - .../accumulo/core/iterators/user/RowFilter.java | 15 +- .../accumulo/core/master/thrift/Compacting.java | 16 +- .../accumulo/core/master/thrift/DeadServer.java | 20 +- .../core/master/thrift/FateOperation.java | 2 +- .../core/master/thrift/FateService.java | 441 +- .../core/master/thrift/MasterClientService.java | 7013 +++++++++------ .../core/master/thrift/MasterGoalState.java | 2 +- .../core/master/thrift/MasterMonitorInfo.java | 92 +- .../core/master/thrift/MasterState.java | 2 +- .../core/master/thrift/RecoveryException.java | 12 +- .../core/master/thrift/RecoveryStatus.java | 20 +- .../accumulo/core/master/thrift/TableInfo.java | 56 +- .../core/master/thrift/TabletLoadState.java | 2 +- .../core/master/thrift/TabletServerStatus.java | 68 +- .../core/master/thrift/TabletSplit.java | 22 +- .../core/metadata/schema/MetadataSchema.java | 97 +- .../accumulo/core/protobuf/ProtobufUtil.java | 38 + .../AccumuloReplicationReplayer.java | 33 + .../replication/PrintReplicationRecords.java | 97 + .../core/replication/ReplicaSystemHelper.java | 71 + .../ReplicationConfigurationUtil.java | 42 + .../core/replication/ReplicationConstants.java | 30 + .../core/replication/ReplicationSchema.java | 297 + .../core/replication/ReplicationTarget.java | 187 + .../core/replication/StatusFormatter.java | 187 + .../accumulo/core/replication/StatusUtil.java | 209 + .../core/replication/proto/Replication.java | 949 ++ .../core/replication/thrift/KeyValues.java | 458 + .../thrift/RemoteReplicationErrorCode.java | 70 + .../thrift/RemoteReplicationException.java | 520 ++ .../core/replication/thrift/Replication.java | 1917 ++++ .../thrift/ReplicationCoordinator.java | 1197 +++ .../thrift/ReplicationCoordinatorErrorCode.java | 64 + .../thrift/ReplicationCoordinatorException.java | 520 ++ .../replication/thrift/ReplicationServicer.java | 2483 ++++++ .../core/replication/thrift/WalEdits.java | 453 + .../apache/accumulo/core/schema/Section.java | 37 + .../core/security/ColumnVisibility.java | 66 +- .../core/security/thrift/TCredentials.java | 24 +- .../core/tabletserver/thrift/ActionStats.java | 40 +- .../tabletserver/thrift/ActiveCompaction.java | 98 +- .../core/tabletserver/thrift/ActiveScan.java | 110 +- .../tabletserver/thrift/CompactionReason.java | 2 +- .../tabletserver/thrift/CompactionType.java | 2 +- .../thrift/ConstraintViolationException.java | 18 +- .../tabletserver/thrift/IteratorConfig.java | 18 +- .../thrift/NoSuchScanIDException.java | 8 +- .../thrift/NotServingTabletException.java | 12 +- .../thrift/ReplicationFailedException.java | 402 + .../core/tabletserver/thrift/ScanState.java | 2 +- .../core/tabletserver/thrift/ScanType.java | 2 +- .../tabletserver/thrift/TIteratorSetting.java | 45 +- .../thrift/TabletClientService.java | 2651 ++++-- .../core/tabletserver/thrift/TabletStats.java | 40 +- .../thrift/TooManyFilesException.java | 12 +- .../org/apache/accumulo/core/util/Merge.java | 5 +- .../accumulo/core/util/SslConnectionParams.java | 17 +- .../core/util/format/DefaultFormatter.java | 16 +- .../apache/accumulo/core/volume/VolumeImpl.java | 4 +- core/src/main/protobuf/replication.proto | 26 + core/src/main/scripts/generate-protobuf.sh | 97 + core/src/main/scripts/generate-thrift.sh | 38 +- core/src/main/thrift/data.thrift | 3 +- core/src/main/thrift/master.thrift | 1 + core/src/main/thrift/replication.thrift | 63 + .../core/client/BatchWriterConfigTest.java | 26 + .../impl/ServerConfigurationUtilTest.java | 110 + .../tokens/CredentialProviderTokenTest.java | 129 + .../core/conf/ConfigSanityCheckTest.java | 79 + .../conf/CredentialProviderFactoryShimTest.java | 179 + .../core/conf/DefaultConfigurationTest.java | 44 + .../core/conf/ObservableConfigurationTest.java | 96 + .../core/conf/SiteConfigurationTest.java | 76 + .../accumulo/core/iterators/IterUtilTest.java | 279 - .../core/iterators/IteratorUtilTest.java | 306 + .../iterators/aggregation/NumSummationTest.java | 6 +- .../core/iterators/user/RowFilterTest.java | 215 +- .../iterators/user/VersioningIteratorTest.java | 10 +- .../ReplicationConfigurationUtilTest.java | 82 + .../ReplicationOperationsImplTest.java | 414 + .../core/replication/ReplicationSchemaTest.java | 134 + .../core/replication/ReplicationTargetTest.java | 98 + .../core/replication/StatusUtilTest.java | 57 + .../core/replication/proto/StatusTest.java | 36 + .../core/util/AsyncSocketAppenderTest.java | 10 +- .../ShardedTableDistributionFormatterTest.java | 30 +- .../accumulo-credentialprovider-site.xml | 26 + core/src/test/resources/accumulo.jceks | Bin 0 -> 946 bytes core/src/test/resources/empty.jceks | Bin 0 -> 32 bytes core/src/test/resources/passwords.jceks | Bin 0 -> 963 bytes core/src/test/resources/site-cfg.jceks | Bin 0 -> 1441 bytes docs/.gitignore | 25 + docs/pom.xml | 4 +- .../main/asciidoc/accumulo_user_manual.asciidoc | 2 + .../main/asciidoc/chapters/administration.txt | 103 +- docs/src/main/asciidoc/chapters/clients.txt | 14 +- docs/src/main/asciidoc/chapters/design.txt | 2 +- docs/src/main/asciidoc/chapters/replication.txt | 383 + docs/src/main/asciidoc/chapters/security.txt | 10 +- .../asciidoc/chapters/table_configuration.txt | 8 + .../main/asciidoc/chapters/troubleshooting.txt | 2 +- .../resources/design/ACCUMULO-378-design.mdtext | 468 + docs/src/main/resources/examples/README.batch | 2 +- docs/src/main/resources/examples/README.bloom | 8 +- .../main/resources/examples/README.maxmutation | 12 +- docs/src/main/resources/examples/README.regex | 3 +- docs/src/main/resources/metrics.html | 33 +- .../main/resources/state/replicationstatus.gv | 40 + .../main/resources/state/replicationstatus.png | Bin 0 -> 65414 bytes .../src/main/resources/state/table-lifecycle.gv | 77 + .../main/resources/state/table-lifecycle.png | Bin 0 -> 190640 bytes examples/simple/.gitignore | 25 + .../examples/simple/dirlist/Viewer.java | 4 +- .../simple/isolation/InterferenceTest.java | 2 +- .../simple/mapreduce/TokenFileWordCount.java | 5 +- .../examples/simple/mapreduce/WordCount.java | 5 +- .../examples/simple/reservations/ARS.java | 5 +- .../examples/simple/dirlist/CountTest.java | 6 +- fate/.gitignore | 25 + .../org/apache/accumulo/fate/AdminUtil.java | 6 +- .../accumulo/fate/zookeeper/ZooCache.java | 2 +- .../accumulo/fate/zookeeper/ZooSession.java | 14 +- .../accumulo/fate/zookeeper/ZooSessionTest.java | 33 + mapreduce/.gitignore | 25 + .../client/mapred/AccumuloOutputFormat.java | 4 +- .../client/mapreduce/AccumuloOutputFormat.java | 2 +- .../core/client/mapreduce/RangeInputSplit.java | 32 + .../mapreduce/lib/impl/ConfiguratorBase.java | 1 + .../client/mapred/AccumuloInputFormatTest.java | 55 + .../core/client/mapred/RangeInputSplitTest.java | 121 + .../mapreduce/AccumuloInputFormatTest.java | 2 +- .../client/mapreduce/RangeInputSplitTest.java | 48 +- maven-plugin/.gitignore | 25 + maven-plugin/pom.xml | 1 - minicluster/.gitignore | 25 + .../apache/accumulo/cluster/AccumuloConfig.java | 11 + .../minicluster/MiniAccumuloCluster.java | 8 +- .../minicluster/MiniAccumuloConfig.java | 16 +- .../minicluster/MiniAccumuloRunner.java | 24 +- .../impl/MiniAccumuloClusterImpl.java | 83 +- .../impl/MiniAccumuloConfigImpl.java | 97 +- .../MiniAccumuloClusterStartStopTest.java | 65 + .../minicluster/MiniAccumuloClusterTest.java | 4 - .../minicluster/impl/CleanShutdownMacTest.java | 57 + .../impl/MiniAccumuloClusterGCTest.java | 2 - .../impl/MiniAccumuloClusterImplTest.java | 49 +- .../impl/MiniAccumuloConfigImplTest.java | 8 + minicluster/src/test/resources/log4j.properties | 23 +- pom.xml | 98 +- proxy/.gitignore | 28 + proxy/examples/python/TestClient.py | 3 +- proxy/src/main/cpp/AccumuloProxy.cpp | 2 +- proxy/src/main/cpp/AccumuloProxy.h | 2 +- proxy/src/main/cpp/proxy_constants.cpp | 2 +- proxy/src/main/cpp/proxy_constants.h | 2 +- proxy/src/main/cpp/proxy_types.cpp | 2 +- proxy/src/main/cpp/proxy_types.h | 3 +- .../java/org/apache/accumulo/proxy/Proxy.java | 5 +- .../proxy/thrift/AccumuloException.java | 12 +- .../accumulo/proxy/thrift/AccumuloProxy.java | 8186 ++++++++++++++---- .../proxy/thrift/AccumuloSecurityException.java | 12 +- .../accumulo/proxy/thrift/ActiveCompaction.java | 63 +- .../accumulo/proxy/thrift/ActiveScan.java | 75 +- .../accumulo/proxy/thrift/BatchScanOptions.java | 57 +- .../apache/accumulo/proxy/thrift/Column.java | 20 +- .../accumulo/proxy/thrift/ColumnUpdate.java | 32 +- .../accumulo/proxy/thrift/CompactionReason.java | 2 +- .../accumulo/proxy/thrift/CompactionType.java | 2 +- .../apache/accumulo/proxy/thrift/Condition.java | 30 +- .../proxy/thrift/ConditionalStatus.java | 2 +- .../proxy/thrift/ConditionalUpdates.java | 28 +- .../proxy/thrift/ConditionalWriterOptions.java | 35 +- .../apache/accumulo/proxy/thrift/DiskUsage.java | 25 +- .../accumulo/proxy/thrift/IteratorScope.java | 2 +- .../accumulo/proxy/thrift/IteratorSetting.java | 45 +- .../org/apache/accumulo/proxy/thrift/Key.java | 28 +- .../apache/accumulo/proxy/thrift/KeyExtent.java | 20 +- .../apache/accumulo/proxy/thrift/KeyValue.java | 16 +- .../accumulo/proxy/thrift/KeyValueAndPeek.java | 16 +- .../thrift/MutationsRejectedException.java | 12 +- .../proxy/thrift/NoMoreEntriesException.java | 12 +- .../accumulo/proxy/thrift/PartialKey.java | 2 +- .../org/apache/accumulo/proxy/thrift/Range.java | 24 +- .../accumulo/proxy/thrift/ScanColumn.java | 16 +- .../accumulo/proxy/thrift/ScanOptions.java | 51 +- .../accumulo/proxy/thrift/ScanResult.java | 22 +- .../apache/accumulo/proxy/thrift/ScanState.java | 2 +- .../apache/accumulo/proxy/thrift/ScanType.java | 2 +- .../accumulo/proxy/thrift/SystemPermission.java | 2 +- .../proxy/thrift/TableExistsException.java | 12 +- .../proxy/thrift/TableNotFoundException.java | 12 +- .../accumulo/proxy/thrift/TablePermission.java | 2 +- .../apache/accumulo/proxy/thrift/TimeType.java | 2 +- .../accumulo/proxy/thrift/UnknownScanner.java | 12 +- .../accumulo/proxy/thrift/UnknownWriter.java | 12 +- .../accumulo/proxy/thrift/WriterOptions.java | 24 +- proxy/src/main/python/AccumuloProxy-remote | 6 +- proxy/src/main/python/AccumuloProxy.py | 550 +- proxy/src/main/python/constants.py | 2 +- proxy/src/main/python/ttypes.py | 4 +- proxy/src/main/ruby/accumulo_proxy.rb | 2 +- proxy/src/main/ruby/proxy_constants.rb | 2 +- proxy/src/main/ruby/proxy_types.rb | 2 +- server/base/.gitignore | 25 + server/base/pom.xml | 19 +- .../org/apache/accumulo/server/Accumulo.java | 31 +- .../apache/accumulo/server/ServerConstants.java | 9 +- .../accumulo/server/client/BulkImporter.java | 31 +- .../server/client/ClientServiceHandler.java | 25 +- .../accumulo/server/client/HdfsZooInstance.java | 21 +- .../accumulo/server/conf/ConfigSanityCheck.java | 2 +- .../server/conf/NamespaceConfWatcher.java | 40 +- .../server/conf/NamespaceConfiguration.java | 140 +- .../server/conf/ServerConfiguration.java | 131 +- .../server/conf/ServerConfigurationFactory.java | 198 + .../accumulo/server/conf/TableConfWatcher.java | 40 +- .../server/conf/TableConfiguration.java | 124 +- .../server/conf/TableConfigurationCopy.java | 77 + .../server/conf/TableParentConfiguration.java | 10 + .../server/conf/ZooCachePropertyAccessor.java | 160 + .../accumulo/server/conf/ZooConfiguration.java | 79 +- .../server/conf/ZooConfigurationFactory.java | 107 + .../server/constraints/MetadataConstraints.java | 8 +- .../accumulo/server/fs/VolumeManagerImpl.java | 70 +- .../apache/accumulo/server/fs/VolumeUtil.java | 24 +- .../apache/accumulo/server/init/Initialize.java | 159 +- .../master/balancer/ChaoticLoadBalancer.java | 27 +- .../master/balancer/DefaultLoadBalancer.java | 38 +- .../server/master/balancer/TabletBalancer.java | 101 +- .../server/master/recovery/RecoveryPath.java | 7 +- .../server/master/state/MetaDataStateStore.java | 13 +- .../server/master/state/TServerInstance.java | 13 +- .../server/metrics/AbstractMetricsImpl.java | 3 +- .../DistributedWorkQueueWorkAssignerHelper.java | 77 + .../server/replication/ReplicationTable.java | 227 + .../server/replication/ReplicationUtil.java | 273 + .../server/replication/StatusCombiner.java | 154 + .../server/replication/WorkAssigner.java | 42 + .../replication/ZooKeeperInitialization.java | 42 + .../security/AuditedSecurityOperation.java | 17 +- .../server/security/SecurityOperation.java | 12 +- .../server/security/SystemCredentials.java | 25 +- .../tabletserver/LargestFirstMemoryManager.java | 204 +- .../org/apache/accumulo/server/util/Admin.java | 9 +- .../server/util/CustomNonBlockingServer.java | 268 + .../accumulo/server/util/ListInstances.java | 6 +- .../accumulo/server/util/LoginProperties.java | 8 +- .../server/util/MasterMetadataUtil.java | 91 +- .../accumulo/server/util/MetadataTableUtil.java | 51 +- .../server/util/ReplicationTableUtil.java | 214 + .../apache/accumulo/server/util/RpcWrapper.java | 62 + .../accumulo/server/util/SystemPropUtil.java | 8 +- .../server/util/TNonblockingServerSocket.java | 2 +- .../accumulo/server/util/TServerUtils.java | 51 +- .../server/util/VerifyTabletAssignments.java | 9 +- .../org/apache/accumulo/server/util/ZooZap.java | 6 +- .../server/zookeeper/DistributedWorkQueue.java | 22 +- .../server/zookeeper/ZooReaderWriter.java | 4 +- .../zookeeper/ZooReaderWriterFactory.java | 12 +- .../apache/accumulo/server/AccumuloTest.java | 13 +- .../server/conf/NamespaceConfigurationTest.java | 160 + .../conf/ServerConfigurationFactoryTest.java | 135 + .../server/conf/TableConfigurationTest.java | 125 +- .../conf/ZooCachePropertyAccessorTest.java | 186 + .../conf/ZooConfigurationFactoryTest.java | 66 + .../server/fs/VolumeManagerImplTest.java | 94 + .../replication/ReplicationTableTest.java | 132 + .../server/replication/StatusCombinerTest.java | 278 + .../ZooKeeperInitializationTest.java | 70 + .../security/handler/ZKAuthenticatorTest.java | 6 +- .../server/util/ReplicationTableUtilTest.java | 157 + server/gc/.gitignore | 25 + server/gc/pom.xml | 18 +- .../gc/GarbageCollectWriteAheadLogs.java | 292 +- .../accumulo/gc/GarbageCollectionAlgorithm.java | 36 + .../gc/GarbageCollectionEnvironment.java | 10 + .../accumulo/gc/SimpleGarbageCollector.java | 168 +- .../CloseWriteAheadLogReferences.java | 256 + .../gc/GarbageCollectWriteAheadLogsTest.java | 267 +- .../accumulo/gc/GarbageCollectionTest.java | 89 + .../accumulo/gc/SimpleGarbageCollectorTest.java | 29 +- .../CloseWriteAheadLogReferencesTest.java | 370 + server/gc/src/test/resources/log4j.properties | 3 + server/master/.gitignore | 25 + server/master/pom.xml | 15 +- .../accumulo/master/FateServiceHandler.java | 33 +- .../java/org/apache/accumulo/master/Master.java | 177 +- .../master/MasterClientServiceHandler.java | 14 +- .../accumulo/master/TabletGroupWatcher.java | 10 +- .../master/metrics/ReplicationMetrics.java | 162 + .../master/metrics/ReplicationMetricsMBean.java | 48 + .../master/recovery/RecoveryManager.java | 8 +- .../DistributedWorkQueueWorkAssigner.java | 274 + .../master/replication/FinishedWorkUpdater.java | 175 + .../MasterReplicationCoordinator.java | 107 + .../RemoveCompleteReplicationRecords.java | 217 + .../master/replication/ReplicationDriver.java | 124 + .../replication/SequentialWorkAssigner.java | 229 + .../master/replication/StatusMaker.java | 251 + .../replication/UnorderedWorkAssigner.java | 172 + .../accumulo/master/replication/WorkDriver.java | 110 + .../accumulo/master/replication/WorkMaker.java | 199 + .../accumulo/master/state/SetGoalState.java | 4 +- .../accumulo/master/tableOps/BulkImport.java | 170 +- .../accumulo/master/tableOps/CreateTable.java | 14 +- .../accumulo/master/tableOps/ExportTable.java | 5 +- .../accumulo/master/util/TableValidators.java | 97 + ...tributedWorkQueueWorkAssignerHelperTest.java | 56 + .../replication/FinishedWorkUpdaterTest.java | 170 + .../MasterReplicationCoordinatorTest.java | 95 + .../RemoveCompleteReplicationRecordsTest.java | 335 + .../replication/SequentialWorkAssignerTest.java | 424 + .../master/replication/StatusMakerTest.java | 262 + .../replication/UnorderedWorkAssignerTest.java | 295 + .../master/replication/WorkMakerTest.java | 212 + .../master/src/test/resources/log4j.properties | 2 + server/monitor/.gitignore | 25 + server/monitor/pom.xml | 35 +- .../accumulo/monitor/EmbeddedWebServer.java | 82 +- .../org/apache/accumulo/monitor/Monitor.java | 11 +- .../accumulo/monitor/ZooKeeperStatus.java | 4 +- .../accumulo/monitor/servlets/BasicServlet.java | 1 + .../monitor/servlets/DefaultServlet.java | 6 +- .../accumulo/monitor/servlets/LogServlet.java | 14 +- .../monitor/servlets/ReplicationServlet.java | 169 + server/native/.gitignore | 25 + server/tracer/.gitignore | 25 + .../org/apache/accumulo/tracer/TraceServer.java | 15 +- server/tserver/.gitignore | 25 + server/tserver/pom.xml | 22 +- .../tserver/BulkFailedCopyProcessor.java | 6 +- .../apache/accumulo/tserver/FileManager.java | 6 +- .../apache/accumulo/tserver/InMemoryMap.java | 69 +- .../accumulo/tserver/MinorCompactionReason.java | 2 +- .../apache/accumulo/tserver/TabletServer.java | 1026 +-- .../tserver/TabletServerResourceManager.java | 6 +- .../apache/accumulo/tserver/WriteTracker.java | 96 + .../apache/accumulo/tserver/log/DfsLogger.java | 21 +- .../accumulo/tserver/log/LocalWALRecovery.java | 3 +- .../tserver/log/TabletServerLogger.java | 28 +- .../accumulo/tserver/logger/LogReader.java | 4 +- .../tserver/metrics/TabletServerMBeanImpl.java | 206 + .../replication/AccumuloReplicaSystem.java | 697 ++ .../BatchWriterReplicationReplayer.java | 165 + .../replication/ReplicationProcessor.java | 180 + .../replication/ReplicationServicerHandler.java | 124 + .../tserver/replication/ReplicationWorker.java | 77 + .../accumulo/tserver/scan/LookupTask.java | 173 + .../accumulo/tserver/scan/NextBatchTask.java | 96 + .../accumulo/tserver/scan/ScanRunState.java | 21 + .../apache/accumulo/tserver/scan/ScanTask.java | 129 + .../tserver/session/MultiScanSession.java | 2 +- .../accumulo/tserver/session/ScanSession.java | 2 +- .../tserver/session/SessionManager.java | 309 + .../tserver/tablet/DatafileManager.java | 51 +- .../apache/accumulo/tserver/tablet/Tablet.java | 160 +- .../LargestFirstMemoryManagerTest.java | 269 + .../accumulo/tserver/InMemoryMapTest.java | 44 + .../tserver/TservConstraintEnvTest.java | 54 + .../tserver/log/TestUpgradePathForWALogs.java | 6 +- .../replication/AccumuloReplicaSystemTest.java | 496 ++ .../BatchWriterReplicationReplayerTest.java | 195 + .../replication/ReplicationProcessorTest.java | 100 + .../tserver/src/test/resources/log4j.properties | 19 +- shell/.gitignore | 25 + .../shell/commands/AddAuthsCommand.java | 3 +- .../accumulo/shell/commands/ConfigCommand.java | 5 +- .../shell/commands/ConstraintCommand.java | 3 +- .../accumulo/shell/commands/DUCommand.java | 7 +- .../shell/commands/DropUserCommand.java | 44 +- .../shell/commands/ExportTableCommand.java | 3 +- .../accumulo/shell/commands/FateCommand.java | 5 +- .../shell/commands/GetAuthsCommand.java | 3 +- .../accumulo/shell/commands/GrantCommand.java | 5 +- .../accumulo/shell/commands/MaxRowCommand.java | 5 +- .../apache/accumulo/shell/commands/OptUtil.java | 13 +- .../accumulo/shell/commands/PasswdCommand.java | 3 +- .../accumulo/shell/commands/RevokeCommand.java | 5 +- .../accumulo/shell/commands/ScanCommand.java | 2 +- .../shell/commands/SetAuthsCommand.java | 3 +- .../accumulo/shell/commands/TableOperation.java | 5 +- .../shell/commands/UserPermissionsCommand.java | 3 +- .../org/apache/accumulo/shell/ShellTest.java | 19 +- .../shell/command/DropUserCommandTest.java | 83 + start/.gitignore | 25 + start/pom.xml | 5 + .../java/org/apache/accumulo/start/Main.java | 156 +- .../vfs/AccumuloReloadingVFSClassLoader.java | 4 +- .../classloader/vfs/AccumuloVFSClassLoader.java | 34 +- .../start/classloader/vfs/ContextManager.java | 6 +- .../vfs/FinalCloseDefaultFileSystemManager.java | 25 - start/src/test/shell/makeTestJars.sh | 4 +- test/.gitignore | 28 + test/pom.xml | 33 +- .../org/apache/accumulo/test/CreateRFiles.java | 5 +- .../apache/accumulo/test/GetMasterStats.java | 9 + .../accumulo/test/NativeMapConcurrencyTest.java | 5 +- .../accumulo/test/NativeMapStressTest.java | 6 +- .../accumulo/test/QueryMetadataTable.java | 11 +- .../apache/accumulo/test/WrongTabletTest.java | 4 +- .../continuous/ContinuousStatsCollector.java | 6 +- .../test/continuous/ContinuousVerify.java | 4 +- .../accumulo/test/continuous/Histogram.java | 8 +- .../test/continuous/PrintScanTimeHistogram.java | 22 +- .../test/continuous/UndefinedAnalyzer.java | 2 +- .../metadata/MetadataBatchScanTest.java | 5 +- .../performance/scan/CollectTabletStats.java | 12 +- .../apache/accumulo/test/randomwalk/Module.java | 5 +- .../test/replication/MockReplicaSystem.java | 94 + .../ReplicationTablesPrinterThread.java | 51 + .../accumulo/test/scalability/Ingest.java | 20 +- .../apache/accumulo/test/scalability/Run.java | 12 +- .../test/stress/random/RandomMutations.java | 21 +- .../accumulo/test/stress/random/Scan.java | 3 + .../accumulo/test/stress/random/ScanOpts.java | 5 +- .../accumulo/test/stress/random/Stream.java | 1 - .../accumulo/test/stress/random/Write.java | 15 +- .../test/stress/random/WriteOptions.java | 8 +- .../accumulo/fate/zookeeper/ZooLockTest.java | 77 +- .../apache/accumulo/test/Accumulo3010IT.java | 91 + .../apache/accumulo/test/Accumulo3030IT.java | 83 + .../apache/accumulo/test/Accumulo3047IT.java | 74 + .../apache/accumulo/test/BalanceFasterIT.java | 94 + .../accumulo/test/ConditionalWriterIT.java | 2 +- .../apache/accumulo/test/LargeSplitRowIT.java | 283 + .../test/MasterRepairsDualAssignmentIT.java | 5 +- .../org/apache/accumulo/test/MetaSplitIT.java | 2 +- .../org/apache/accumulo/test/ShellServerIT.java | 5 +- .../accumulo/test/SplitCancelsMajCIT.java | 83 + .../apache/accumulo/test/WaitForBalanceIT.java | 111 + .../accumulo/test/functional/AbstractMacIT.java | 5 +- .../BalanceInPresenceOfOfflineTableIT.java | 151 + .../accumulo/test/functional/BulkFileIT.java | 4 +- .../test/functional/CreateAndUseIT.java | 62 +- .../functional/DeleteTableDuringSplitIT.java | 2 +- .../functional/DeletedTablesDontFlushIT.java | 56 + .../test/functional/GarbageCollectorIT.java | 2 +- .../test/functional/MasterAssignmentIT.java | 14 +- .../accumulo/test/functional/MergeIT.java | 2 +- .../test/functional/MonitorLoggingIT.java | 2 +- .../functional/SimpleBalancerFairnessIT.java | 10 +- .../test/functional/SplitRecoveryIT.java | 2 +- .../apache/accumulo/test/functional/SslIT.java | 10 +- .../test/functional/SslWithClientAuthIT.java | 10 +- .../test/functional/WatchTheWatchCountIT.java | 62 + .../test/replication/CyclicReplicationIT.java | 241 + .../replication/MultiInstanceReplicationIT.java | 675 ++ .../replication/MultiTserverReplicationIT.java | 114 + .../test/replication/ReplicationIT.java | 1460 ++++ .../test/replication/StatusCombinerMacTest.java | 118 + .../UnorderedWorkAssignerReplicationIT.java | 679 ++ .../apache/accumulo/test/util/CertUtils.java | 43 +- .../accumulo/test/util/CertUtilsTest.java | 6 +- test/src/test/resources/log4j.properties | 16 +- test/src/test/scripts/run-test.sh | 22 +- test/system/continuous/analyze-missing.sh | 4 +- .../system/continuous/continuous-env.sh.example | 6 +- test/system/continuous/mapred-setup.sh | 4 +- test/system/continuous/run-moru.sh | 10 +- test/system/continuous/run-verify.sh | 20 +- test/system/continuous/start-agitator.sh | 43 +- test/system/continuous/start-batchwalkers.sh | 24 +- test/system/continuous/start-ingest.sh | 30 +- test/system/continuous/start-scanners.sh | 22 +- test/system/continuous/start-stats.sh | 37 +- test/system/continuous/start-walkers.sh | 26 +- test/system/continuous/stop-agitator.sh | 27 +- test/system/continuous/stop-batchwalkers.sh | 12 +- test/system/continuous/stop-ingest.sh | 12 +- test/system/continuous/stop-scanners.sh | 12 +- test/system/continuous/stop-stats.sh | 10 +- test/system/continuous/stop-walkers.sh | 12 +- test/system/randomwalk/bin/apocalypse.sh | 30 +- test/system/randomwalk/bin/copy-config.sh | 16 +- test/system/randomwalk/bin/kill-all.sh | 22 +- test/system/randomwalk/bin/kill-local.sh | 2 +- test/system/randomwalk/bin/reset-cluster.sh | 54 +- test/system/randomwalk/bin/start-all.sh | 30 +- test/system/randomwalk/bin/start-local.sh | 38 +- test/system/scalability/run.py | 9 +- test/system/stress/README.md | 95 +- test/system/stress/reader.sh | 35 +- test/system/stress/readers | 17 + test/system/stress/start-readers.sh | 40 + test/system/stress/start-writers.sh | 40 + test/system/stress/stop-readers.sh | 36 + test/system/stress/stop-writers.sh | 36 + test/system/stress/stress-env.sh.example | 60 + test/system/stress/writer.sh | 42 +- test/system/stress/writers | 17 + test/system/upgrade_test.sh | 48 +- trace/.gitignore | 25 + .../thrift/RpcClientInvocationHandler.java | 54 + .../thrift/RpcServerInvocationHandler.java | 53 + .../trace/instrument/thrift/TraceWrap.java | 68 +- .../accumulo/trace/thrift/RemoteSpan.java | 65 +- .../accumulo/trace/thrift/SpanReceiver.java | 63 +- .../org/apache/accumulo/trace/thrift/TInfo.java | 16 +- .../accumulo/trace/thrift/TestService.java | 99 +- 758 files changed, 58211 insertions(+), 18629 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/accumulo/blob/5c23182c/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java ---------------------------------------------------------------------- diff --cc server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java index b9505d9,e416568..363368c --- a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java +++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java @@@ -236,16 -236,10 +236,11 @@@ import org.apache.zookeeper.KeeperExcep import com.google.common.net.HostAndPort; - public class TabletServer extends AbstractMetricsImpl implements org.apache.accumulo.tserver.metrics.TabletServerMBean { - static enum ScanRunState { - QUEUED, RUNNING, FINISHED - } - + public class TabletServer implements Runnable { private static final Logger log = Logger.getLogger(TabletServer.class); - private static final String METRICS_PREFIX = "tserver"; private static final long MAX_TIME_TO_WAIT_FOR_SCAN_RESULT_MILLIS = 1000; private static final long RECENTLY_SPLIT_MILLIES = 60 * 1000; + private static final long TIME_BETWEEN_GC_CHECKS = 5000; private static final Set<Column> EMPTY_COLUMNS = Collections.emptySet(); private final GarbageCollectionLogger gcLogger = new GarbageCollectionLogger();
