accumulo.git
22 months ago[maven-release-plugin] prepare release rel/1.10.0 rel/1.10.0
Mike Miller [Thu, 27 Aug 2020 15:56:15 +0000 (11:56 -0400)] 
[maven-release-plugin] prepare release rel/1.10.0

22 months agoFix file permissions in source assembly tarball (#1692)
Christopher Tubbs [Thu, 27 Aug 2020 12:18:02 +0000 (08:18 -0400)] 
Fix file permissions in source assembly tarball (#1692)

Fix permissions mangling caused by the latest versions of the assembly
plugin.

Use maven-assembly-plugin-3.1.1 because of MASSEMBLY-941
https://issues.apache.org/jira/browse/MASSEMBLY-941

22 months agoUpdate powermock to 2.0.7 (#1691)
Mike Miller [Mon, 24 Aug 2020 18:48:39 +0000 (14:48 -0400)] 
Update powermock to 2.0.7 (#1691)

22 months agoUpdate bouncycastle version to 1.66 (#1690)
Mike Miller [Mon, 24 Aug 2020 18:48:15 +0000 (14:48 -0400)] 
Update bouncycastle version to 1.66 (#1690)

22 months agoTune timeouts for some flakey tests
Christopher Tubbs [Fri, 21 Aug 2020 15:20:44 +0000 (11:20 -0400)] 
Tune timeouts for some flakey tests

Increase default timeouts for some tests which routinely time out during
CI testing on Jenkins.

22 months agoFix issues in prep for 1.10 release (#1688)
Christopher Tubbs [Thu, 20 Aug 2020 19:47:19 +0000 (15:47 -0400)] 
Fix issues in prep for 1.10 release (#1688)

* Bump snapshot versions to 1.10.0-SNAPSHOT
* Converge the Hadoop 2 and Hadoop 3 assemblies, so only one is
  necessary (tested both on Hadoop 2.6.5, 3.0.3, and 3.3.0 using
  fluo-uno)
* Bumped plugin versions and added timestamp flag for increased build
  reproducibility; timestamp should automatically update during release
  process; verified the built jars differ only in the contents of the
  generated META-INF/DEPENDENCIES file when building with the Hadoop2
  vs. the Hadoop3 profiles, and since this file doesn't matter, they are
  now provably equivalent builds
* Fixed some Hadoop profile issues, and updated Hadoop versions to
  latest patch version in the minor release lines we had previously been
  building with as our minimum supported versions
* Update Guava-related code to work with both Hadoop 2 and 3;
  suppress warnings or migrate code to avoid code paths that won't work
  across Guava versions, for fewer class path surprises related to
  Guava
* Update asciidoc plugin, and fix various doc build issues warned about
  by the plugin
* Use last commons-io that doesn't break vfs2
* Make Guava version configurable at build time, so it's easier to build a
  package that contains a version of guava suitable for Hadoop 3.1 and later.

22 months agoFix warnings from #1687
Christopher Tubbs [Mon, 17 Aug 2020 16:40:40 +0000 (12:40 -0400)] 
Fix warnings from #1687

22 months agoUpdate commons-* libraries (#1687)
Mike Miller [Mon, 17 Aug 2020 14:40:15 +0000 (10:40 -0400)] 
Update commons-* libraries (#1687)

* Update commons-cli to 1.4
* Update commons-codec to 1.14
* Update commons-io to 2.7
* Update commons-lang to 2.6
* Update commons-logging to 1.2

22 months agoFix typo in workflow file
Christopher Tubbs [Sun, 16 Aug 2020 19:11:56 +0000 (15:11 -0400)] 
Fix typo in workflow file

22 months agoAdd workflow for triggering a custom build
Christopher Tubbs [Sun, 16 Aug 2020 19:05:09 +0000 (15:05 -0400)] 
Add workflow for triggering a custom build

Add a `workflow_dispatcher` action that can be triggered manually to run
the full ITs, a single test, or anything in-between, on demand.

22 months agoFix JCommander warnings from #1684
Christopher Tubbs [Sat, 15 Aug 2020 20:56:00 +0000 (16:56 -0400)] 
Fix JCommander warnings from #1684

22 months agoUpdate jcommander to 1.78 (#1684)
Mike Miller [Fri, 14 Aug 2020 19:24:07 +0000 (15:24 -0400)] 
Update jcommander to 1.78 (#1684)

22 months agoUpdate gson to 2.8.6 (#1686)
Mike Miller [Fri, 14 Aug 2020 18:39:55 +0000 (14:39 -0400)] 
Update gson to 2.8.6 (#1686)

22 months agoSupport IteratorEnvironment in test harness (#1681)
Christopher Tubbs [Fri, 14 Aug 2020 00:57:35 +0000 (20:57 -0400)] 
Support IteratorEnvironment in test harness (#1681)

* Adds the ability to provide a custom IteratorEnvironment to the
  iterator-test-harness
* This fixes a test failure in SummingCombinerTest caused by recent
  changes to Combiner in #1680

22 months agoModify Combiner init method to honor all options. Fixes #1678 (#1680)
Mike Miller [Thu, 13 Aug 2020 12:06:47 +0000 (08:06 -0400)] 
Modify Combiner init method to honor all options. Fixes #1678 (#1680)

22 months agoMove MinorCompaction method call into retry catch block. Fixes #1298 (#1675)
Mike Miller [Wed, 12 Aug 2020 12:30:40 +0000 (08:30 -0400)] 
Move MinorCompaction method call into retry catch block. Fixes #1298 (#1675)

* Fixes the situation when MinorCompactionTask creates a
new File and an IOException leaves the Tablet in a bad state
* Moves the new file code into the try/catch block that will
retry during an IOException

22 months agoIgnore some warnings in CI workflow (#1671)
Christopher Tubbs [Fri, 7 Aug 2020 08:40:20 +0000 (04:40 -0400)] 
Ignore some warnings in CI workflow (#1671)

Ignore warnings produced by upload-artifact step if no files are
available to upload. Not all jobs in the matrix build are expected to
produce artifacts, so this isn't a problem worth warning about.

22 months agoPublish test results in CI workflow (#1671)
Christopher Tubbs [Fri, 7 Aug 2020 08:30:12 +0000 (04:30 -0400)] 
Publish test results in CI workflow (#1671)

22 months agoFix javadoc html header elements on newer JDKs
Christopher Tubbs [Wed, 5 Aug 2020 23:06:33 +0000 (19:06 -0400)] 
Fix javadoc html header elements on newer JDKs

As of JDK 13, the javadoc tool's linter requires user headers in
javadocs to start at h2, and checks that h1 appears before h2 in
generated HTML. The side-effect of this check is that any raw (not
generated by javadoc) doc-files html needs to start at h1, before using
h2.

22 months agoImprove CI workflow (#1671)
Christopher Tubbs [Wed, 5 Aug 2020 18:53:22 +0000 (14:53 -0400)] 
Improve CI workflow (#1671)

* Add timeout
* Make matrix similar across branches
* Better naming of matrix jobs
* Better branch pattern matching
* Exclude accumulo artifacts from cache
* Suppress transfer progress when downloading artifacts

22 months agoUse GitHub Actions for CI testing (#1671)
Christopher Tubbs [Wed, 5 Aug 2020 16:22:01 +0000 (12:22 -0400)] 
Use GitHub Actions for CI testing (#1671)

Add GitHub Actions for CI and remove Travis CI configuration, for the
1.9/1.10 maintenance branch.

22 months agoFix #1663 Missing metrics files running CI tests (#1667)
EdColeman [Tue, 4 Aug 2020 20:41:58 +0000 (16:41 -0400)] 
Fix #1663 Missing metrics files running CI tests (#1667)

- excluded hadoop-metrics2-accumulo.properties from jar plugin
- added gc metrics config sample to template

Co-authored-by: Ed Coleman <edcoleman.apache.org>
Co-authored-by: Christopher Tubbs <ctubbsii@apache.org>
23 months agoRemove obsolete workaround for Eclipse bug
Christopher Tubbs [Thu, 16 Jul 2020 18:22:49 +0000 (14:22 -0400)] 
Remove obsolete workaround for Eclipse bug

Remove unneeded Maven profile for runtime dependency resolution in the
compile scope while using Eclipse/M2E. Newer versions of Eclipse have
fixed the bug.

Related to #1652 (but for the 1.9 branch).

23 months agoClose unclosed Scanners
Christopher Tubbs [Thu, 16 Jul 2020 06:11:52 +0000 (02:11 -0400)] 
Close unclosed Scanners

Close unclosed scanners detected by Eclipse IDE

23 months agoRename yield method (future restricted identifier)
Christopher Tubbs [Thu, 16 Jul 2020 04:58:16 +0000 (00:58 -0400)] 
Rename yield method (future restricted identifier)

(Backport of c5ecd474dbed016cc6653870fedcce863550a44f)

Rename a private yield method in SourceSwitchingIteratorTest to avoid
conflicting with future versions of Java. In future Java releases,
'yield' is a restricted keyword.

Verified failure (and fix) using the following on OpenJDK13:

```
mvn clean package -DskipTests -Dmaven.compiler.failOnWarning=true
```

23 months agoMerge pull request #1646 from ivakegg/ACCUMULO-1644
Ivan Bella [Tue, 7 Jul 2020 12:22:58 +0000 (08:22 -0400)] 
Merge pull request #1646 from ivakegg/ACCUMULO-1644

fixes #1644: minor compaction retry

23 months agofixes #1644: minor compaction retry 1646/head
Ivan Bella [Tue, 30 Jun 2020 18:33:22 +0000 (18:33 +0000)] 
fixes #1644: minor compaction retry
* Updated the minor compaction to gracefully handle temporary VFS class loader issues while minor compacting

2 years agoUpdate spotbugs-maven-plugin (for JDK14)
Christopher Tubbs [Tue, 21 Apr 2020 20:35:05 +0000 (16:35 -0400)] 
Update spotbugs-maven-plugin (for JDK14)

2 years agoUpdate maven-enforcer-plugin (for JDK14)
Christopher Tubbs [Tue, 21 Apr 2020 20:32:04 +0000 (16:32 -0400)] 
Update maven-enforcer-plugin (for JDK14)

2 years agoFix idempotency bug in importtable (#1555)
Arvind Shyamsundar [Thu, 12 Mar 2020 18:02:45 +0000 (11:02 -0700)] 
Fix idempotency bug in importtable (#1555)

* Fix idempotency bug in importtable
The previous implementation would fail when an interrupted importtable
operation was retried by FATE, as it would not find (already moved)
files in the exported directory. Additionally, this commit also removes
a chatty fs.exists() check.

* Use Set operations to streamline code
This code uses set operations to validate if there are missing files in
the exported (source) directory. In addition the usage of sets improves
perf compared to the lambda scanning the file status arrays.

* Fix formatting and use inbuilt Java joiner

2 years agoUpdate copyright dates for 2020 releases
Christopher Tubbs [Sun, 8 Mar 2020 14:11:05 +0000 (10:11 -0400)] 
Update copyright dates for 2020 releases

2 years agoFix unused variable warning from #1536
Christopher Tubbs [Fri, 6 Mar 2020 23:57:32 +0000 (18:57 -0500)] 
Fix unused variable warning from #1536

2 years agoImprove master metrics rported (#1536)
EdColeman [Fri, 6 Mar 2020 20:16:32 +0000 (15:16 -0500)] 
Improve master metrics rported (#1536)

Adds FATE transaction state and op types reported via hadoop metrics2
Improves metrics tests
Add IT to verify that enabling legacy metrics does not crash master
Added ZooReaderWriter getInstance() for testing.

2 years agoFixes #1525 - remove lines added in b67d3f9 in VolumeUtil (#1539)
Jeffrey Zeiberg [Tue, 3 Mar 2020 16:58:41 +0000 (11:58 -0500)] 
Fixes #1525 - remove lines added in b67d3f9 in VolumeUtil (#1539)

* Revert optimization that broke special tablet directory volume code
that is still needed in 1.X

2 years agoEnable logs for accumulo-maven-plugin's IT
Christopher Tubbs [Thu, 27 Feb 2020 19:42:22 +0000 (14:42 -0500)] 
Enable logs for accumulo-maven-plugin's IT

2 years agoFix #1532 Remove need for Ant on class path
Christopher Tubbs [Thu, 27 Feb 2020 19:32:32 +0000 (14:32 -0500)] 
Fix #1532 Remove need for Ant on class path

Make MetricsConfiguration use a MapConfiguration with System.getenv()
rather than EnvironmentConfiguration, to get the environment properties.
EnvironmentConfiguration uses Ant code, which is not available on the
class path (typically) to get the environment, so it should be avoided.

2 years agoRe #1492 Disable unreliable replication tests (#1524)
Christopher Tubbs [Mon, 24 Feb 2020 21:55:19 +0000 (16:55 -0500)] 
Re #1492 Disable unreliable replication tests (#1524)

Fixes #1226 Disables frequently failing CyclicReplicationIT

2 years agoDecrease recovery cache time from 45s to 15s (#1526)
Mike Miller [Thu, 20 Feb 2020 14:40:48 +0000 (09:40 -0500)] 
Decrease recovery cache time from 45s to 15s (#1526)

* This should help timing of ITs which deal with recovery but will
still prevent too many exist calls to NN in production

2 years agoFix #1520 Limit UnsynchronizedBuffer max size (#1523)
Christopher Tubbs [Wed, 19 Feb 2020 23:25:44 +0000 (18:25 -0500)] 
Fix #1520 Limit UnsynchronizedBuffer max size (#1523)

Limit UnsynchronizedBuffer maximum size to Integer.MAX_VALUE - 8, the
same limit as ArrayList, because of some JVM behavior being unable to
allocate arrays with Integer.MAX_VALUE.

2 years agoMake Accumulo 1.9 compatible with ZK 3.5 (#1506)
Karthick Narendran [Wed, 12 Feb 2020 17:43:39 +0000 (12:43 -0500)] 
Make Accumulo 1.9 compatible with ZK 3.5 (#1506)

2 years agoOptimize Tablet volume replacement (#1505)
Mike Miller [Wed, 12 Feb 2020 13:28:02 +0000 (08:28 -0500)] 
Optimize Tablet volume replacement (#1505)

* Stop volume replacements from checking every file when not used

2 years agoClean-up / remove comments in code from gc_metrics_backport when merged. (#1499)
EdColeman [Tue, 4 Feb 2020 19:40:17 +0000 (14:40 -0500)] 
Clean-up / remove comments in code from gc_metrics_backport when merged. (#1499)

2 years agoBackport gc metrics to 1.9.x to use hadoop metrics2. (#1406)
EdColeman [Tue, 4 Feb 2020 17:53:21 +0000 (12:53 -0500)] 
Backport gc metrics to 1.9.x to use hadoop metrics2. (#1406)

* Backport gc metrics to 1.9.x to use hadoop metrics2.

This backport bring the gc metrics from master / 2.0 into the 1.9.x branch. The metrics
can be enabled / disabled with GC_METRICS_ENABLED property (default false for 1.9.x)  The
metrics changes include:

- Publish current gc metrics to hadoop 2 metrics reporting system.
- Add gc run counter that increments on each gc cycle run
- Add metric to track time required for gc post op (compact, flush, none)

Also Includes:

- Move IT resource file for PR #1381 to correct directory so test passes
in CI and on the command-line. Previously, it may have only worked in
some IDEs, because of the way those IDEs put test resources on the class
path.

* checkpoint: warning clean-up

* Code clean-up and prep for review

one open todo - check if metadata consistency check can be added as a metric.

* defer master check reproting

Co-authored-by: Christopher Tubbs <ctubbsii@apache.org>
2 years agoFix #1482 Increase timeouts on some slow ITs
Christopher Tubbs [Fri, 31 Jan 2020 12:47:26 +0000 (07:47 -0500)] 
Fix #1482 Increase timeouts on some slow ITs

Stabilize some ITs by increasing timeouts to values which cause them to
pass more frequently on modest developer hardware and adding a timeout
to one that was missing it.

Also backport the removal of some flakey performance-related tests,
which were already removed in newer branches.

2 years agoFix #1491 Stabilize ChaoticBalancerIT in 1.x
Christopher Tubbs [Fri, 31 Jan 2020 10:32:29 +0000 (05:32 -0500)] 
Fix #1491 Stabilize ChaoticBalancerIT in 1.x

Backport fixes from ACCUMULO-4602
(520d23d85dfce9297bab887726322861163a1fb2)

2 years agoFix unused var and generics warning
Christopher Tubbs [Thu, 30 Jan 2020 18:19:11 +0000 (13:19 -0500)] 
Fix unused var and generics warning

2 years agofixes #1474: Option to leave cloned tables offline (#1475)
Ivan Bella [Tue, 28 Jan 2020 18:59:09 +0000 (13:59 -0500)] 
fixes #1474: Option to leave cloned tables offline (#1475)

* Added an optional keepOffline option to TableOperations.clone via a CloneConfiguration
* Updated the shell clone command with a -o option
* Updated the CloneTestIT to test the keepOffline option
* Updated the ShellServerIT to test the -o option

2 years agoMake ITs override defaultTimeoutSeconds (#1483)
Mike Miller [Mon, 27 Jan 2020 21:27:18 +0000 (16:27 -0500)] 
Make ITs override defaultTimeoutSeconds (#1483)

* Some ITs were setting timeout using junit, instead of the miniaccumulo
method defaultTimeoutSeconds which allows use of system prop timeout.factor
* Decrease timeout of DeleteRowsIT

2 years agoRequire x tservers on start (#1158)
EdColeman [Mon, 27 Jan 2020 19:22:06 +0000 (14:22 -0500)] 
Require x tservers on start (#1158)

* Adding tserver availability blocking on startup

Check for tserver availability when master gets lock and when configured, block until threshold tserver count reached, or wait time-out expires.  Adds two properties:

MASTER_STARTUP_TSERVER_AVAIL_MIN_COUNT - the number of desired tservers
MASTER_STARTUP_TSERVER_AVAIL_MAX_WAIT - the max time willing to wait

2 years agoIncrease timeout for GarbageCollectWALIT to allow recovery
Mike Miller [Fri, 17 Jan 2020 20:14:03 +0000 (15:14 -0500)] 
Increase timeout for GarbageCollectWALIT to allow recovery

2 years agoAdd color back to travis CI console
Christopher Tubbs [Thu, 23 Jan 2020 00:12:03 +0000 (19:12 -0500)] 
Add color back to travis CI console

2 years agoValidate ClientOpts instance name and Zookeeper paths (#1478)
Arvind Shyamsundar [Tue, 21 Jan 2020 16:48:24 +0000 (08:48 -0800)] 
Validate ClientOpts instance name and Zookeeper paths (#1478)

* Only override instance name and ZK paths if those were specified by caller.

2 years agoUpdate to Java 1.8 and related fixes (#1467)
Mike Miller [Wed, 15 Jan 2020 19:14:53 +0000 (14:14 -0500)] 
Update to Java 1.8 and related fixes (#1467)

* Update to maven compiler source and target to Java 1.8
* Add optional dependency to pom for modernizer annotations
* Add SuppressModernizer annotation to uses of Guava Predicate in
AccumuloConfiguration and its subclasses, Optional in VolumeChooser,
and Function in GroupBalancer
* Replace Guava Function, Predicate, Preconditions, Optional and
Iterators where able with java.util equivalents
* Replace core.util.Base64 class with java.util equivalent
* Fix warnings introduced by Java 1.8
* Drop method in MockConfiguration causing compiler warning and made
PropertyFilter in AccumuloConfiguration extend guava Predicate
* Rename execute methods in MasterClient and ServerClient, like the 2.0
changes to fix the overload warnings

Co-Authored-By: Christopher Tubbs <ctubbsii@apache.org>
2 years agofixes #1456 by adding rate limiter to shutdown queue (#1457)
alerman [Thu, 2 Jan 2020 21:05:18 +0000 (16:05 -0500)] 
fixes #1456 by adding rate limiter to shutdown queue (#1457)

2 years agoTemporarily cache existence of recovery wals (#1462)
Keith Turner [Thu, 2 Jan 2020 20:04:17 +0000 (15:04 -0500)] 
Temporarily cache existence of recovery wals (#1462)

For the case where a lot of tablet servers died, the master was
frequently checking for the existence of a recovery log for each tablet.
Its very likely that many tablets point to the same recovery logs and
the existence checks are redundant.  This patch caches the result of
existence checks for a short period.

2 years agoTurn off trim stacktrace on failsafe plugin (#1452)
Mike Miller [Tue, 10 Dec 2019 20:26:19 +0000 (15:26 -0500)] 
Turn off trim stacktrace on failsafe plugin (#1452)

2 years agoBackport license and typo fixes for bloomfilter code
Christopher Tubbs [Sat, 16 Nov 2019 03:23:07 +0000 (22:23 -0500)] 
Backport license and typo fixes for bloomfilter code

* Remove incorrect redundant license headers from bloomfilter code
* Add exceptions for rat (because it doesn't recognize the style of the
  BSD license header for the bloomfilter code)
* Backport any spelling typos fixed in bloomfilter code in master branch
  back to 1.9

2 years agoFix #1308 - Refactor fate concurrency IT (#1414)
EdColeman [Thu, 7 Nov 2019 22:30:32 +0000 (17:30 -0500)] 
Fix #1308 - Refactor fate concurrency IT (#1414)

fix error that caused test failure.

2 years agoFix #1401, trace servlet parameter handling (#1409)
Richard W. Eggert II [Wed, 6 Nov 2019 05:16:40 +0000 (00:16 -0500)] 
Fix #1401, trace servlet parameter handling (#1409)

* corrected servlet parameter handling so that it does not break things

This resolves #1401.

I removed the previous implementation of  string sanitization, replacing it with more specific checks at the places where the parameters are used.

BasicTest was deleted because it was exclusively testing the broken
sanitization mechanism.

* Update server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/trace/ShowTrace.java

Added null check to avoid NPE

Co-Authored-By: Christopher Tubbs <ctubbsii@apache.org>
* automatically adjusted formatting

2 years agoImproved metadata table consitency checking and testing (#1379)
Keith Turner [Thu, 10 Oct 2019 14:55:08 +0000 (10:55 -0400)] 
Improved metadata table consitency checking and testing (#1379)

Added unit test to exercise the code that checks the consistency of the
metadata table during GC scans.  Also added a check to ensure the last
tablet was seen.  This should cause an error to be thrown if the scanner
stops returning data for any reason.  These changes were already made in
2.0 in #1266.  However the code in 1.9 is so different that they could
not be back-ported, but had to be re-implemented.

2 years agoExpanded InputConfigurator permissions checks to include Namespace.READ (#1371)
Richard W. Eggert II [Fri, 4 Oct 2019 23:03:36 +0000 (19:03 -0400)] 
Expanded InputConfigurator permissions checks to include Namespace.READ (#1371)

* created tests to cover #1370

* expanded checks in InputConfigurator.validatePermissions to include Namespace.READ and resolve #1370

* auto-adjusted formatting

* removed unnecessary assertions from testGetSplitsWithNamespaceReadPermission

2 years agoAdd colVis file to ContinuousInputFormat. Fixes #1368 (#1369)
Mike Miller [Thu, 19 Sep 2019 22:46:49 +0000 (18:46 -0400)] 
Add colVis file to ContinuousInputFormat. Fixes #1368 (#1369)

2 years agoFix visibilities option in run-bulk-generate.sh
Mike Miller [Wed, 18 Sep 2019 21:08:04 +0000 (17:08 -0400)] 
Fix visibilities option in run-bulk-generate.sh

2 years agoFix #1345 - Allow gc initiated compaction as option. (#1352)
EdColeman [Thu, 12 Sep 2019 19:06:06 +0000 (15:06 -0400)] 
Fix #1345 - Allow gc initiated compaction as option. (#1352)

* Fix #1345 - Allow gc initiated compaction as option.

Added a property - gc.use.full.compaction that defaults to current behaviour. When false,
performs a blocking flush instead.

* fix type in property description.

* wip: use enum, compact, flush or none

* fix test failure by adding PropertyTest

* added timing log messsgae

* update durations to use nanoseconds

2 years agoFix #1338 Reduce verbose logging of merge operations in Master log
EdColeman [Fri, 6 Sep 2019 18:57:43 +0000 (14:57 -0400)] 
Fix #1338 Reduce verbose logging of merge operations in Master log

* reduce merge operations logging of extent info at debug level - issue #1338.

* minor cleanup removed always true param

* address comments, clean-up of MergeStats to use substition.

* code cleanup and logging changes for discussion

* code cleanup and logging changes for discussion

 - address review comments
 - merge changes m.miller removing unused code in TableGroupWatcher

* Stop logging during merges

* address review comments

* clarify comment after clean-up removed empty else clause.

2 years agoFix #1347 Update log statement for user compactions without user iterators
EdColeman [Thu, 5 Sep 2019 19:59:11 +0000 (15:59 -0400)] 
Fix #1347 Update log statement for user compactions without user iterators

2 years agoRemoved unused code in TabletGroupWatcher (#1341)
Mike Miller [Tue, 3 Sep 2019 15:48:11 +0000 (11:48 -0400)] 
Removed unused code in TabletGroupWatcher (#1341)

* Also make some local vars private

2 years agoFix importdirectory tab completion (#1335)
EdColeman [Mon, 26 Aug 2019 14:52:38 +0000 (10:52 -0400)] 
Fix importdirectory tab completion (#1335)

2 years agoClean up importDirectory IT (remove unneeded method)
Christopher Tubbs [Fri, 16 Aug 2019 19:09:55 +0000 (15:09 -0400)] 
Clean up importDirectory IT (remove unneeded method)

2 years agoImprove importDirectory tests from #1299
Christopher Tubbs [Fri, 16 Aug 2019 00:29:18 +0000 (20:29 -0400)] 
Improve importDirectory tests from #1299

* Remove unused variables in test
* Verify mock objects in test

2 years agoAdd optional -t tablename to importdirectory shell command. (#1299)
EdColeman [Thu, 15 Aug 2019 19:41:15 +0000 (15:41 -0400)] 
Add optional -t tablename to importdirectory shell command. (#1299)

* Add optional -t tablename to importdirectory shell command.

the -t tablename is optional to preserve original behaviour. Without
the option, the current table is used.

* added getOptions

* wip - tests cmd format, need to evaluate testing functionality

2 years agoFix #1314 fixes gc thread issue by creating one timed task instance (#1318)
EdColeman [Thu, 15 Aug 2019 19:00:04 +0000 (15:00 -0400)] 
Fix #1314 fixes gc thread issue by creating one timed task instance (#1318)

* issue #1314 - call scanServers directly, no schedule tasks necessary

* create one tserver set with timed task outside of run loop.

* addressed review comment

* Added call to scanServers, updated unit tests.

* updated logging with added detail at trace level.

* merge changes from 1.9

2 years agofix #1326 Copy instead of clone metadata table in IT
Keith Turner [Thu, 15 Aug 2019 17:25:12 +0000 (13:25 -0400)] 
fix #1326 Copy instead of clone metadata table in IT

After the changes in #1309 cloning of metdata table is no longer
allowed. TabletStateChangeIteratorIT relied on cloning and
was changed to copy instead.

Also the test was very sensitive to concurrent chnages in the metadata
table.  Suspect that cloning used to introduce a delay that hid this.
The change from cloning to copying caused the test to fail often
because of these timing issues.  To avoid this, the test was refactored
to tolerate concurrent changes to the metadata table.

2 years agoBackport BulkIngest test. Closes #1288 (#1312)
Mike Miller [Thu, 15 Aug 2019 13:52:57 +0000 (09:52 -0400)] 
Backport BulkIngest test. Closes #1288 (#1312)

* Created classes for running the bulk generate job
* Created run-bulk-generate.sh
* Also updated the example test files

2 years agoExamine WALs used by root tablet during GC (#1310)
Keith Turner [Wed, 14 Aug 2019 20:07:07 +0000 (16:07 -0400)] 
Examine WALs used by root tablet during GC (#1310)

2 years agofix #1309 prevent cloning accumulo.metadata (#1311)
Keith Turner [Wed, 14 Aug 2019 20:06:26 +0000 (16:06 -0400)] 
fix #1309 prevent cloning accumulo.metadata (#1311)

2 years agoAdd patch file for Java 11 generated apidocs
Christopher Tubbs [Sun, 4 Aug 2019 15:16:44 +0000 (11:16 -0400)] 
Add patch file for Java 11 generated apidocs

Adds javadoc11.patch to patch broken javadoc in Java 11. These were
patched in Java 12 and later, but have not yet been backported to 11 at
the time of this writing, or they have not been patched upstream at all
yet. So, it may be necessary to apply this patch wnen generating
javadocs (using the aggregate-javadocs profile) for the API published on
the accumulo-website, if they were generated using Java 11.

The relevant upstream issues are:

* https://bugs.openjdk.java.net/browse/JDK-8227487 (Missing dejavu font)
* https://bugs.openjdk.java.net/browse/JDK-8214856 (JSZip API misuse)
* https://bugs.openjdk.java.net/browse/JDK-8215291 (Broken search links)

The patch can be applied by doing:

```bash
# generate the javadocs for the site
mvn clean package -DskipTests javadoc:aggregate -Paggregate-javadocs
# apply the patch
patch -p1 < contrib/javadoc11.patch
```

2 years agoAdd wording to experimental (#1307)
Mike Miller [Fri, 2 Aug 2019 19:33:22 +0000 (15:33 -0400)] 
Add wording to experimental (#1307)

2 years agoFix #1236 Require Java 11 for building
Christopher Tubbs [Mon, 29 Jul 2019 23:35:22 +0000 (19:35 -0400)] 
Fix #1236 Require Java 11 for building

* Stop building with openjdk8
* Require Java 11 or later for building
  (still targeting 7 for the 1.9 branch)
* Update some plugin versions
* Update bouncycastle test dependency
* Fix javadoc to resolve checkstyle issue in randomwalk Environment
* Remove unnecessary exclusion of bouncycastle from minikdc
* Add exclusion from later branch for nimbus-jose-jwt

2 years agoUpdates to support Java 11 on 1.9 branch (#1295)
Christopher Tubbs [Mon, 29 Jul 2019 18:48:59 +0000 (14:48 -0400)] 
Updates to support Java 11 on 1.9 branch (#1295)

This includes partial backports of:
ec76015d6e357d3a799fc2507ae0c4f33e53bba0 and
0e89ab238b14d257f9f901a36a9b87a7491c1ea9

* Build on travis with Java 11
* Update maven-javadoc-plugin
* Drop `<javadocVersion>` from maven-javadoc-plugin configuration
* Replace `<tt>` tags with `<code>`, since the former is no longer supported
* Add `<caption>` for tables (weird Java 11 javadoc requirement)
* Remove unnecessary suppressions with EasyMock updates
* Make ShellServerIT.classpath test handle output under Java 11
* Convert dubious DynamicThreadPoolsIT from an IT to a unit test
  (TabletServerResourceManagerDynamicCompactionPoolTest)
* Give SimpleGarbageCollector 16MB of memory instead of 10MB for its
  gcLotsOfCandidatesIT test, so it doesn't crash under Java 11 before the
  test runs (Java 11 needs slightly more base memory, it appears)
* Fix proxy tests in Java 11 by updating resource loading to be based
  on containing class
* Update compiler compliance settings in Eclipse, in the m2e profile
* Use newer version of minikdc for Kerberos testing

2 years agoImprove busy tracker handling of reloaded tablets (#1296)
Keith Turner [Fri, 26 Jul 2019 18:38:09 +0000 (14:38 -0400)] 
Improve busy tracker handling of reloaded tablets (#1296)

2 years agoFix spotbugs when building on Java 11
Christopher Tubbs [Thu, 25 Jul 2019 19:33:37 +0000 (15:33 -0400)] 
Fix spotbugs when building on Java 11

Also remove NOOP `@Deprecated` tag that does nothing on package elements
(which now generates a warning in JDK9 and later)

2 years agoMerge pull request #1291 from keith-turner/accumulo-1187
Keith Turner [Thu, 25 Jul 2019 18:10:22 +0000 (14:10 -0400)] 
Merge pull request #1291 from keith-turner/accumulo-1187

2 years agoImproved logging of busiest tablets. 1291/head
Keith Turner [Wed, 24 Jul 2019 20:42:15 +0000 (16:42 -0400)] 
Improved logging of busiest tablets.

Now the deltas of tablets ingest and query counts are used for computing
the busiest N tablets. The previous code used the absolute counts.
Restructured code that so that it is unit testable and found a few bugs
while writing the unit test.  Found the prioQ was not properly tracking
the top N tablets.

2 years agoSupport builds with JDK9 and later
Christopher Tubbs [Thu, 25 Jul 2019 18:02:41 +0000 (14:02 -0400)] 
Support builds with JDK9 and later

2 years agoFix misspelling
Mike Miller [Wed, 24 Jul 2019 22:30:52 +0000 (18:30 -0400)] 
Fix misspelling

2 years agoAdd logging of top tablets to enable better hot spot detection
Adam Lerman [Thu, 6 Jun 2019 21:09:48 +0000 (17:09 -0400)] 
Add logging of top tablets to enable better hot spot detection

2 years agoLimit log size in Travis CI builds
Christopher Tubbs [Tue, 16 Jul 2019 21:16:38 +0000 (17:16 -0400)] 
Limit log size in Travis CI builds

Suppress the downloading messages for maven dependency resolution,
because they result in a very long build log, which causes Travis CI to
fail the build when it exceeds 4MB. These settings will ensure that the
dependency resolver will only show warnings and higher for download
actions.

3 years agoUpdate travis-ci configuration
Christopher Tubbs [Fri, 21 Jun 2019 08:16:45 +0000 (04:16 -0400)] 
Update travis-ci configuration

3 years agoUpdate formatter-maven-plugin
Christopher Tubbs [Thu, 20 Jun 2019 20:17:26 +0000 (16:17 -0400)] 
Update formatter-maven-plugin

Update formatter plugin to 2.10.0; resolves a reproducibility issue
where earlier versions would grab transitive dependencies of the plugin
from a range of versions, making the formatter potentially change the
way it formats between two different executions.

3 years agofixed time calculation to use nano delta (#1184)
EdColeman [Thu, 13 Jun 2019 15:55:48 +0000 (11:55 -0400)] 
fixed time calculation to use nano delta (#1184)

* fixed time calculation to use nano delta

* changed the nanoTime usage in this file to be consistent

3 years agoFix xml namespace declarations in pom.xml files
Christopher Tubbs [Mon, 10 Jun 2019 01:57:50 +0000 (21:57 -0400)] 
Fix xml namespace declarations in pom.xml files

* Fix root pom.xml xmlns:xsi namespace (must be http, not https)
* Update all schemaLocation values for xsi to consistently use current
  canonical location

3 years agoEnsures correct use of ZooKeeper getAcl (#1185)
Christopher Tubbs [Fri, 7 Jun 2019 16:40:06 +0000 (12:40 -0400)] 
Ensures correct use of ZooKeeper getAcl (#1185)

This fixes a bug in Accumulo where we were using an unauthenticated
ZooKeeper session to read ACLs on a node that we had previously written.

ZooKeeper 3.4.14 fixed a bug in their code that allowed unauthenticated
connections to read ACLs on paths for which they did not have READ
permission.

Using Accumulo with that version of ZooKeeper exposed the bug in our
code that passed the incorrect ZooKeeper session when retrieving ACLs.

3 years agoAvoid multiple threads loading same cache block (#990)
Keith Turner [Mon, 25 Feb 2019 23:44:18 +0000 (18:44 -0500)] 
Avoid multiple threads loading same cache block (#990)

3 years agoSwitch POM project xml attrs from HTTP to HTTPS
Josh Elser [Fri, 24 May 2019 14:52:29 +0000 (10:52 -0400)] 
Switch POM project xml attrs from HTTP to HTTPS

Closes #1173

3 years agofix #1153 preventing multiple threads working on same bulk file (#1157)
Keith Turner [Fri, 10 May 2019 20:20:45 +0000 (16:20 -0400)] 
fix #1153 preventing multiple threads working on same bulk file (#1157)

3 years agofix #1141 adding checks for extra FATE RPC arguments (#1145)
Keith Turner [Mon, 6 May 2019 21:18:11 +0000 (17:18 -0400)] 
fix #1141 adding checks for extra FATE RPC arguments (#1145)

3 years agoApply formatter changes for #496
Christopher Tubbs [Sat, 20 Apr 2019 04:05:59 +0000 (00:05 -0400)] 
Apply formatter changes for #496

3 years agoFix #496 Update formatter
Christopher Tubbs [Sat, 20 Apr 2019 03:49:06 +0000 (23:49 -0400)] 
Fix #496 Update formatter

Update formatter
Remove unnecessary checkstyle rules handled by (or competing with) formatter
Remove unnecessary manual formatting to deal with formatter edge cases

3 years agoImprove logging for session expired events. (#1108)
EdColeman [Thu, 18 Apr 2019 18:27:42 +0000 (14:27 -0400)] 
Improve logging for session expired events. (#1108)

When a tserver looses lock, the Session expired message is log for every watcher.
  - reduce current message to trace.
  - add summary logging messages that give number of sessions expired