accumulo.git
2 days agoWait for ZooKeeper sync call to complete in verifyUp (#2953) main
Dave Marion [Fri, 23 Sep 2022 12:46:17 +0000 (08:46 -0400)] 
Wait for ZooKeeper sync call to complete in verifyUp (#2953)

3 days agoDrop FateAdmin classes (#2947)
Mike Miller [Thu, 22 Sep 2022 18:35:48 +0000 (18:35 +0000)] 
Drop FateAdmin classes (#2947)

3 days agoMake it so the instance name is not highlighted in the monitor (#2945)
Dom G [Thu, 22 Sep 2022 17:58:21 +0000 (13:58 -0400)] 
Make it so the instance name is not highlighted in the monitor (#2945)

3 days agoModify LogReader to print just the crypto params (#2935)
Mike Miller [Thu, 22 Sep 2022 16:23:35 +0000 (16:23 +0000)] 
Modify LogReader to print just the crypto params (#2935)

* Added the -e option to LogReader to not read the whole WAL and just
print the crypto params
* Added a new check to PerTableCryptoIT that calls the LogReader to
check for encryption present in the WALs
* Also make the LogReader options extend ConfigOpts to allow passing in
properties
* Rename a test in CryptoTest

3 days agoUpdate post vote issue template for EOL releases
Christopher Tubbs [Thu, 22 Sep 2022 15:14:10 +0000 (11:14 -0400)] 
Update post vote issue template for EOL releases

Update the issue template for the post vote checklist to include
information about updating previous LTM releases with an EOL date 1 year
from the next LTM release, according to our LTM release strategy.

3 days agoFix crypto in GenerateSplits (#2949)
Mike Miller [Thu, 22 Sep 2022 15:01:59 +0000 (15:01 +0000)] 
Fix crypto in GenerateSplits (#2949)

3 days agoGarbageCollector table existence sanity check (#2792)
Dave Marion [Thu, 22 Sep 2022 14:50:45 +0000 (10:50 -0400)] 
GarbageCollector table existence sanity check (#2792)

Ensure all tables are checked when removing references to candidates
that are still in use. This is done by getting tableIds from zookeeper at
the start of the reference scan and at the end of the reference scan.
During the reference scans, the list of tableIDs is tracked.  After all candidates
that are still in use have been removed, there is a one more consistency
check to ensure we looked at all tables.

Closes #1377

Co-authored-by: Michael Wall <mjwall@apache.org>
3 days agoMove fate summary IT from ShellServerIT to its own class (#2950)
Dave Marion [Thu, 22 Sep 2022 13:46:50 +0000 (09:46 -0400)] 
Move fate summary IT from ShellServerIT to its own class (#2950)

Closes #2948

4 days agoCombine CleanZookeeper and DeleteZooInstance utilities (#2937)
Christopher L. Shannon [Wed, 21 Sep 2022 13:38:12 +0000 (09:38 -0400)] 
Combine CleanZookeeper and DeleteZooInstance utilities (#2937)

Combine the CleanZookeeper utility, which will delete all old instances,
and the DeleteZooInstance utility, which deletes a single instance, into
one utility class and use a flag to determine which action to take.

4 days agoDeprecate FateCommand (#2914)
Mike Miller [Wed, 21 Sep 2022 12:52:36 +0000 (12:52 +0000)] 
Deprecate FateCommand (#2914)

* Deprecate FateCommand by adding warning to usage & Shell log
* Move new code for cancel and summary options to Admin, printing message in Shell.
* Drop pagination option for Admin
* Drop recently added tests from FateCommandTest
* Supports #2215

Co-authored-by: Dave Marion <dlmarion@apache.org>
Co-authored-by: EdColeman <dev1@etcoleman.com>
5 days agoFix clear problems button (#2943)
Dom G [Tue, 20 Sep 2022 18:10:23 +0000 (14:10 -0400)] 
Fix clear problems button (#2943)

5 days agoUpdate to slf4j 2.0.1 (#2942)
Christopher Tubbs [Tue, 20 Sep 2022 17:18:01 +0000 (13:18 -0400)] 
Update to slf4j 2.0.1 (#2942)

* Update to slf4j 2.0.1, switching from log4j-slf4j-impl (for slf4j 1.7) to log4j-slf4j2-impl (for slf4j 2)
* Add missing explicit transitive dependency on log4j-core for core module's test
  scope, due to bug https://issues.apache.org/jira/browse/LOG4J2-3601

This fixes #2933

5 days agoAdd ability to retrieve TimeType for a table (#2910)
Mark Owens [Tue, 20 Sep 2022 17:15:41 +0000 (13:15 -0400)] 
Add ability to retrieve TimeType for a table (#2910)

Provide a way to programmatically retrieve a table's TimeType value.

Co-authored-by: Keith Turner <kturner@apache.org>
7 days agoUpdate to Log4j2 2.19.0 and other dependency updates (#2938)
Christopher L. Shannon [Mon, 19 Sep 2022 00:35:45 +0000 (20:35 -0400)] 
Update to Log4j2 2.19.0 and other dependency updates (#2938)

* Update Log4j2 to 2.19.0
* Update Curator to 5.3.0
* Update Jersey to 3.0.8
* Update Protobuf to 3.21.6

7 days agoHold system config in ServerConfigurationFactory (#2936)
Christopher Tubbs [Mon, 19 Sep 2022 00:33:40 +0000 (20:33 -0400)] 
Hold system config in ServerConfigurationFactory (#2936)

* Hold instance of SystemConfiguration in ServerConfigurationFactory
  alongside other ZooBasedConfiguration instances (TableConfiguration
  and NamespaceConfiguration), and server it to ServerContext from
  there, rather than indirectly accessing it via an instance maintained
  in ServerContext
* Also fix warning about resource leak in PerTableCryptoIT by
  surrounding the scanner in a try-with-resources block

9 days agoUpdate parent pom and some others (#2931)
Christopher Tubbs [Fri, 16 Sep 2022 21:01:09 +0000 (17:01 -0400)] 
Update parent pom and some others (#2931)

* Update Apache parent pom to 27
* Update Hadoop to 3.3.4
* Update Jackson, Jetty, Micrometer, Opentelemetry, checker-qual, snakeyaml, objenesis, javassist
* Add dependency convergence for jboss transitive logging deps
* Update plugins spotbugs, checkstyle

9 days agoFix disabled crypto tests (#2932)
Mike Miller [Fri, 16 Sep 2022 15:16:35 +0000 (15:16 +0000)] 
Fix disabled crypto tests (#2932)

10 days agoAdd minimum GitHub token permissions for workflows (#2926)
Varun Sharma [Fri, 16 Sep 2022 01:46:45 +0000 (18:46 -0700)] 
Add minimum GitHub token permissions for workflows (#2926)

Signed-off-by: Varun Sharma <varunsh@stepsecurity.io>
10 days agoUpgrade ZooKeeper from 3.7.1 to 3.8.0 (#2920)
Dave Marion [Fri, 16 Sep 2022 00:36:39 +0000 (20:36 -0400)] 
Upgrade ZooKeeper from 3.7.1 to 3.8.0 (#2920)

10 days agoFix deprecation warning in javadoc
Christopher Tubbs [Thu, 15 Sep 2022 15:36:46 +0000 (11:36 -0400)] 
Fix deprecation warning in javadoc

As a follow up to #2921, remove link to deprecated method, and replace
with inline code style, to avoid warning about linking to deprecated API
methods in the javadoc.

Also standardize HTML tags to use lowercase HTML5 tag names, as per
HTML5 conventions and W3C recommendations.

10 days agoPer table crypto + other crypto improvements (#2197)
Mike Miller [Thu, 15 Sep 2022 15:22:48 +0000 (15:22 +0000)] 
Per table crypto + other crypto improvements (#2197)

* Create table prefix properties for encrypting tables
* Replace instance.crypto.service with instance.crypto.opts.factory for
configuring a crypto factory per instance that returns services
* Change scope in CryptoEnvironment to WAL, Table and Recovery
* Replace CryptoServiceFactory class with a new interface and implement
three types of factories: NoCryptoServiceFactory,
GenericCryptoServiceFactory, and PerTableCryptoServiceFactory
* Utilize general.custom prefix for shared crypto configuration
* Use TableConfiguration to get CryptoService from table properties
* Create CryptoServiceFactory.none() method to return no crypto
* Make CryptoEnvironment return Optional for getDecryptionParams
* Update CryptoTest with new configuration and added tests
* Add new method getAllCryptoProperties() to AccumuloConfiguration
* Fixes for WriteAheadLogEncryptedIT
* Create PerTableCryptoIT and Fix OfflineIterator
* Refactor bcfile class PrintInfo and rename to PrintBCInfo to fix rfile-info command
* Closes #2001

10 days agoAdd version check to ZooPropStore (#2778)
EdColeman [Thu, 15 Sep 2022 11:46:02 +0000 (11:46 +0000)] 
Add version check to ZooPropStore (#2778)

* Add version check to ZooPropStore
* remove refreshAfterWrite usage in cache
* merge update - add delay for export import check config

12 days agoLargeSplitRowIT.automaticSplitLater - increase timeout and other improvements (#2928)
Dom G [Tue, 13 Sep 2022 19:49:53 +0000 (15:49 -0400)] 
LargeSplitRowIT.automaticSplitLater - increase timeout and other improvements (#2928)

* Increase timeout
* adds resources to try-with-resources blocks
* make use of Arrays.fill()
* create and use variables with descriptive names
* make use of NewTableConfiguration to set properties where possible
* use Map.of in more places
* simplify logic where possible

12 days agoRefactor OpTimerTest (#2927)
Dom G [Tue, 13 Sep 2022 12:45:14 +0000 (08:45 -0400)] 
Refactor OpTimerTest (#2927)

* remove try-catch blocks
* adds messages to assert statements
* make Logger final
* add variables with descriptive names

13 days agoUpdated TableOperations javadoc to remove compaction strategy ref (#2921)
Dave Marion [Mon, 12 Sep 2022 16:51:46 +0000 (12:51 -0400)] 
Updated TableOperations javadoc to remove compaction strategy ref (#2921)

Compaction strategies have been deprecated in favor of compaction
services that are defined on the table.

Closes #2833

Co-authored-by: Keith Turner <kturner@apache.org>
13 days agoMinimize registered Thrift processor names (#2922)
Dave Marion [Mon, 12 Sep 2022 11:18:19 +0000 (07:18 -0400)] 
Minimize registered Thrift processor names (#2922)

Use shorter name for the registered Thrift processors. The side effect
here is that a smaller number of bytes is sent over the wire.

Closes #2642

2 weeks agoUpgrade snakeyaml from 1.30 to 1.31 (#2924)
Dave Marion [Fri, 9 Sep 2022 19:52:12 +0000 (15:52 -0400)] 
Upgrade snakeyaml from 1.30 to 1.31 (#2924)

2 weeks agoAttempt to make KerberosRenewalIT more stable (#2902)
Dom G [Fri, 9 Sep 2022 17:22:28 +0000 (13:22 -0400)] 
Attempt to make KerberosRenewalIT more stable (#2902)

* Simplify timeout in while-loop

* Add wait for table delete

* Add AccumuloClient to try-with-resources block

* Move start of timer after tablename creation

Co-authored-by: Dave Marion <dlmarion@apache.org>
2 weeks agoRemove stale Javadoc comment that references closed Jira issue (#2923)
Christopher L. Shannon [Fri, 9 Sep 2022 17:13:16 +0000 (13:13 -0400)] 
Remove stale Javadoc comment that references closed Jira issue (#2923)

Comment refers to an upcoming fix in ACCUMULO-2990 but that issue was
closed as could not reproduce.

2 weeks agoValidate ZNode ACLs prior to upgrade, log unexpected values and fail (#2919)
Dave Marion [Fri, 9 Sep 2022 16:13:32 +0000 (12:13 -0400)] 
Validate ZNode ACLs prior to upgrade, log unexpected values and fail (#2919)

Closes #2890

Co-authored-by: Keith Turner <kturner@apache.org>
2 weeks agoBootstrap and DataTables version upgrade (#2847)
AlbertWhitlock [Thu, 8 Sep 2022 15:13:29 +0000 (11:13 -0400)] 
Bootstrap and DataTables version upgrade (#2847)

* Bootstrap and DataTables versions upgrade
* Formatted freemarker code

Co-authored-by: DomGarguilo <dominic.garguilo@gmail.com>
2 weeks agoUpdate errorprone version (#2916)
EdColeman [Wed, 7 Sep 2022 21:52:00 +0000 (21:52 +0000)] 
Update errorprone version (#2916)

2 weeks agoAdding a test utility class to help test conditions (#2915)
Christopher L. Shannon [Wed, 7 Sep 2022 16:18:35 +0000 (12:18 -0400)] 
Adding a test utility class to help test conditions (#2915)

2 weeks agoAdd new params to import table (#2879)
Mike Miller [Wed, 7 Sep 2022 16:01:09 +0000 (16:01 +0000)] 
Add new params to import table (#2879)

* Create ImportConfiguration to use in importTable API
* Create ImportConfigurationTest
* Update ImportTableCommand and ITs
* Create IMPORT_MAPPINGS_FILE in Constants to reuse

Co-authored-by: Dom G. <domgarguilo@apache.org>
Co-authored-by: Keith Turner <kturner@apache.org>
3 weeks agoScanServerSelector - Break nested interfaces into their own files (#2896)
Dom G [Fri, 2 Sep 2022 17:19:26 +0000 (13:19 -0400)] 
ScanServerSelector - Break nested interfaces into their own files (#2896)

* Break nested interfaces into thier own classes
* Rename some ScanServer classes

3 weeks agoMark FileSystemMonitor as deprecated and slated for 3.0 removal (#2909)
EdColeman [Thu, 1 Sep 2022 21:05:52 +0000 (21:05 +0000)] 
Mark FileSystemMonitor as deprecated and slated for 3.0 removal (#2909)

* mark FileSystemMonitor as deprecated and slated for 3.0 removal
* Remove unnecessary second boolean check on property (avoids passing
  property when not needed)
* Use local variable to narrow the warning suppression to just the
  variable and not the whole method
* IDE also replaced anonymous inner class with lambda

Co-authored-by: Christopher Tubbs <ctubbsii@apache.org>
3 weeks agoSerialize location in BadLocationStateException (#2911)
Christopher Tubbs [Thu, 1 Sep 2022 18:53:30 +0000 (14:53 -0400)] 
Serialize location in BadLocationStateException (#2911)

To ensure that the location is correctly serialized in this exception,
do not mark it transient, but convert it to a byte array, since Text is
not Serializable.

This addresses the warning in #2776 without assuming the exception will
never be serialized, which was made in #2897. Instead, this change
avoids errors if it ever were to be serialized and the location were
silently changed to a null value because the field was transient.

3 weeks agoconvert text to printable string before logging in merge tablets (#2906)
Scott Kirklin [Thu, 1 Sep 2022 17:15:34 +0000 (10:15 -0700)] 
convert text to printable string before logging in merge tablets (#2906)

* convert text to printable string before logging in merge tablets

* pr feedback: start formatter should take start.getLength

Co-authored-by: Scott Kirklin <scott@gh.st>
3 weeks agoFix Fate enum name (#2904)
Mike Miller [Thu, 1 Sep 2022 16:08:05 +0000 (16:08 +0000)] 
Fix Fate enum name (#2904)

* Rename enum to TX_NAME and pass in name to Fate seedTransaction()
* Clean up FateLogger log  and fateCommand print

3 weeks agoAdded servers per host to cluster.yaml (#2903)
Dave Marion [Wed, 31 Aug 2022 18:16:27 +0000 (14:16 -0400)] 
Added servers per host to cluster.yaml (#2903)

Added tservers_per_host and sservers_per_host to cluster.yaml file. This file is parsed
and transformed into environment variables that are read in by the accumulo-cluster script.
This change adds the environment variables NUM_TSERVERS and NUM_SSERVERS to the environment
with a default value of 1 if not specified in cluster.yaml and in a way that the value is
in cluster.yaml is overridden if the environment variable already exists in the environment

3 weeks agoCheck that node exists in ZooZap before trying to delete it and its children (#2907)
Dave Marion [Wed, 31 Aug 2022 18:07:48 +0000 (14:07 -0400)] 
Check that node exists in ZooZap before trying to delete it and its children (#2907)

3 weeks agoNarrowed exceptions thrown by MetricsUtil.initialize (#2901)
Dave Marion [Mon, 29 Aug 2022 19:08:18 +0000 (15:08 -0400)] 
Narrowed exceptions thrown by MetricsUtil.initialize (#2901)

closes #2851

3 weeks agoMake Text field transient in BadLocationStateException (#2897)
Mike Miller [Mon, 29 Aug 2022 13:55:23 +0000 (13:55 +0000)] 
Make Text field transient in BadLocationStateException (#2897)

* Supports #2776

4 weeks agoImprovements to AESCryptoService (#2895)
Mike Miller [Fri, 26 Aug 2022 13:47:55 +0000 (13:47 +0000)] 
Improvements to AESCryptoService (#2895)

* Reduce Cipher.getInstance calls to once per file vs once per block
* Move wrap cipher to ThreadLocal objects
* Add logger and init checks

4 weeks agoUpdate version dependencies (#2893)
EdColeman [Thu, 25 Aug 2022 18:22:04 +0000 (18:22 +0000)] 
Update version dependencies (#2893)

* Propagate up micrometer copyright notices to the binary tarball NOTICE file

Co-authored-by: Christopher Tubbs <ctubbsii@apache.org>
4 weeks agoRemoving LocalityCheck utility (#2808)
Christopher L. Shannon [Thu, 25 Aug 2022 12:13:14 +0000 (08:13 -0400)] 
Removing LocalityCheck utility (#2808)

* Utility is no longer useful so it can be removed.
* This closes #2807

4 weeks agoAdd log messages to initialization, checkstyle fixes (#2875)
EdColeman [Wed, 24 Aug 2022 15:54:40 +0000 (15:54 +0000)] 
Add log messages to initialization, checkstyle fixes (#2875)

* Add log messages to initialization, checkstyle fixes

Co-authored-by: Mike Miller <mmiller@apache.org>
4 weeks agoPrevent null exception message in HighlyAvailableServiceInvocationHandler (#2892)
Dave Marion [Tue, 23 Aug 2022 17:25:42 +0000 (13:25 -0400)] 
Prevent null exception message in HighlyAvailableServiceInvocationHandler (#2892)

4 weeks agoCleanup Accumulo Admin utilities (#2881)
Christopher L. Shannon [Tue, 23 Aug 2022 16:31:16 +0000 (12:31 -0400)] 
Cleanup Accumulo Admin utilities (#2881)

* Remove main methods from utilities now that they are exposed through
KeywordExecutable and the admin command.
* Also sort the commands in the help section alphabetically.
* Issue #2807

4 weeks agoReplace use of Guava in ScanAttemptsImpl (#2880)
Dom G [Tue, 23 Aug 2022 14:24:33 +0000 (10:24 -0400)] 
Replace use of Guava in ScanAttemptsImpl (#2880)

* Replace use of guava and add javadoc for ScanAttemptsImpl.snapshot()

4 weeks agoReplace accumulo-cluster get_ip function with hostname -I (#2888)
Dave Marion [Tue, 23 Aug 2022 11:04:56 +0000 (07:04 -0400)] 
Replace accumulo-cluster get_ip function with hostname -I (#2888)

get_ip returns a single ip address for the host, but could return
the incorrect one in the case where a host has multiple interfaces.
This commit modifies the logic to use hostname -I instead and checks
to see if the host we are looking for is in the list of returned IPs

Closes #2884

4 weeks agoPrint exceptions that cause the server process to exit to stderr (#2887)
Dave Marion [Tue, 23 Aug 2022 11:02:39 +0000 (07:02 -0400)] 
Print exceptions that cause the server process to exit to stderr (#2887)

Async Logging may not flush the exception to the file before the
process terminates. Print the error to stderr as well.

Closes #2885

5 weeks agoRevert to iterating over session.queries, break out of loop on unfinishedRange where...
Bill Oley [Fri, 12 Aug 2022 19:34:43 +0000 (15:34 -0400)] 
Revert to iterating over session.queries, break out of loop on unfinishedRange where tablet not closed, add unfinished ranges outside iter loop

5 weeks agoAdd comments
Bill Oley [Thu, 14 Jul 2022 18:57:06 +0000 (14:57 -0400)] 
Add comments

5 weeks agoUse try with resources in YieldScannersIT.testBatchScanWithSplits
Bill Oley [Mon, 11 Jul 2022 16:39:53 +0000 (12:39 -0400)] 
Use try with resources in YieldScannersIT.testBatchScanWithSplits

5 weeks agoMaintain session.queries in LookupTask and modify YieldingIterator so that it yields...
Bill Oley [Thu, 30 Jun 2022 19:48:26 +0000 (15:48 -0400)] 
Maintain session.queries in LookupTask and modify YieldingIterator so that it yields on initial seeks (#2789)

5 weeks agoformatting (#2789)
Bill Oley [Wed, 29 Jun 2022 17:36:06 +0000 (13:36 -0400)] 
formatting (#2789)

5 weeks agoUse a LinkedList to track queries
Bill Oley [Wed, 29 Jun 2022 17:23:43 +0000 (13:23 -0400)] 
Use a LinkedList to track queries

5 weeks agoException during iterator yield caused by multiple issues in LookupTask (#2789)
Bill Oley [Tue, 28 Jun 2022 20:20:53 +0000 (16:20 -0400)] 
Exception during iterator yield caused by multiple issues in LookupTask (#2789)

5 weeks agoVarious modifications to the scan server ITs (#2863)
Dom G [Mon, 15 Aug 2022 18:09:39 +0000 (14:09 -0400)] 
Various modifications to the scan server ITs (#2863)

* Various modifications to the scan server ITs

5 weeks agofix code style warnings in Shell code (#2870)
EdColeman [Mon, 15 Aug 2022 13:57:10 +0000 (13:57 +0000)] 
fix code style warnings in Shell code (#2870)

* fix codestyle warnings

6 weeks agoRename ZooStore methods and change Strings to enum (#2842)
Christopher L. Shannon [Fri, 12 Aug 2022 19:53:19 +0000 (15:53 -0400)] 
Rename ZooStore methods and change Strings to enum (#2842)

* This closes #2841

6 weeks agoFast fail table export if online check passes (#2877)
Mike Miller [Fri, 12 Aug 2022 19:16:11 +0000 (19:16 +0000)] 
Fast fail table export if online check passes (#2877)

6 weeks agoAdding TabletServerLocks utility to accumulo admin command (#2817)
Christopher L. Shannon [Fri, 12 Aug 2022 14:20:39 +0000 (10:20 -0400)] 
Adding TabletServerLocks utility to accumulo admin command (#2817)

Issue #2807

6 weeks agoAdding RestoreZookeeper utility to accumulo admin command (#2816)
Christopher L. Shannon [Fri, 12 Aug 2022 13:28:56 +0000 (09:28 -0400)] 
Adding RestoreZookeeper utility to accumulo admin command (#2816)

Issue #2807

6 weeks agoAdd new CloneConfiguration API method (#2874)
Mike Miller [Fri, 12 Aug 2022 12:43:31 +0000 (12:43 +0000)] 
Add new CloneConfiguration API method (#2874)

* Add new convenience method for empty object
* Create private methods for reuse in TableOperationsImpl
* Some various code clean up

6 weeks agoAdding DeleteZooInstance utility to accumulo admin command (#2815)
Christopher L. Shannon [Fri, 12 Aug 2022 12:24:24 +0000 (08:24 -0400)] 
Adding DeleteZooInstance utility to accumulo admin command (#2815)

Issue #2807

6 weeks agoAdding ChangeSecret utility to the accumulo admin command (#2814)
Christopher L. Shannon [Fri, 12 Aug 2022 11:44:57 +0000 (07:44 -0400)] 
Adding ChangeSecret utility to the accumulo admin command (#2814)

Issue #2807

6 weeks agoModified ZooZap to only catch thrown checked exceptions (#2865)
Dave Marion [Fri, 12 Aug 2022 11:41:04 +0000 (07:41 -0400)] 
Modified ZooZap to only catch thrown checked exceptions (#2865)

Closes #2852

6 weeks agoAdd logging to MiniAccumuloConfigImpl.verifyUp when ZK not connected (#2873)
Dave Marion [Fri, 12 Aug 2022 11:40:06 +0000 (07:40 -0400)] 
Add logging to MiniAccumuloConfigImpl.verifyUp when ZK not connected (#2873)

Co-authored-by: EdColeman <dev1@etcoleman.com>
6 weeks agoFix AccumuloConfiguration.get(String) to get Property by key (#2876)
Dave Marion [Fri, 12 Aug 2022 11:35:53 +0000 (07:35 -0400)] 
Fix AccumuloConfiguration.get(String) to get Property by key (#2876)

Prior commit attempted to create a Property by enum value using the key.
Fixed this to call Property.getPropertyByKey instead.

6 weeks agoFix additional spotbugs errors in core (#2861)
EdColeman [Thu, 11 Aug 2022 14:17:45 +0000 (14:17 +0000)] 
Fix additional spotbugs errors in core (#2861)

6 weeks agoFix args in ImportTableCommand. Closes #2869 (#2871)
Mike Miller [Thu, 11 Aug 2022 12:07:33 +0000 (12:07 +0000)] 
Fix args in ImportTableCommand. Closes #2869 (#2871)

6 weeks agoModify exception handling in new ServerAmplImpl methods for ScanServers (#2866)
Dave Marion [Thu, 11 Aug 2022 11:06:03 +0000 (07:06 -0400)] 
Modify exception handling in new ServerAmplImpl methods for ScanServers (#2866)

Closes #2853

6 weeks agoUpdate LogCloser javadoc, add warnings to NoOpLogCloser (#2868)
Dave Marion [Thu, 11 Aug 2022 11:04:54 +0000 (07:04 -0400)] 
Update LogCloser javadoc, add warnings to NoOpLogCloser (#2868)

6 weeks agoRevert recent configuration commits, implement differently (#2864)
Dave Marion [Thu, 11 Aug 2022 11:03:42 +0000 (07:03 -0400)] 
Revert recent configuration commits, implement differently (#2864)

* Revert "Add missing logic to Configuration.getProperties (#2859)"

This reverts commit 22ae64299580678f75888d9c68ec01887e34796c.

* Revert "Provide getProperties method on Configuration that does not filter (#2834)"

This reverts commit fb3aeb961393023d6a652d3f51be2e42ec2d1134.

* Optimized AccumuloConfiguration.get(String) and reduced calls to it

Optimized get(String) by first attempting to get a Property from the String
parameter, then perform an efficient lookup using the Property. If that fails
(ClientProperty, custom property, etc), then fall back to filtering.

6 weeks agoAdd multiple dirs description to ImportTableCommand (#2862)
Mike Miller [Wed, 10 Aug 2022 14:48:32 +0000 (14:48 +0000)] 
Add multiple dirs description to ImportTableCommand (#2862)

6 weeks agoAdded NoOpLogCloser for filesystems that don't support lease recovery (#2860)
Dave Marion [Wed, 10 Aug 2022 14:22:34 +0000 (10:22 -0400)] 
Added NoOpLogCloser for filesystems that don't support lease recovery (#2860)

6 weeks agoEventually Consistent scans / ScanServer feature (#2665)
Dave Marion [Tue, 9 Aug 2022 12:02:05 +0000 (08:02 -0400)] 
Eventually Consistent scans / ScanServer feature (#2665)

This commit builds on the changes added in prior commits
8be98d650b9267f, and 39bc7a0 to create a new server
component that implements TabletHostingServer and uses
the TabletScanClientService Thrift API to serve client
scan requests on Tablets outside the TabletServer. To
accomplish this the new server (ScanServer) constructs a
new type of tablet called a SnapshotTablet which is comprised
of the files in the metadata table and not the in-memory
mutations that the TabletServer might contain. The Accumulo
client has been modified to allow the user to set a flag
on scans to make them eventually consistent, meaning that
the user is ok with scanning data that may not be immediately
consistent with the version of the Tablet that is being hosted
by the TabletServer.

This feature is optional and experimental.

Closes #2411
Closes #2671
Closes #2733
Closes #2757

Co-authored-by: Keith Turner <kturner@apache.org>
6 weeks agoAdd missing logic to Configuration.getProperties (#2859)
Dave Marion [Tue, 9 Aug 2022 11:12:59 +0000 (07:12 -0400)] 
Add missing logic to Configuration.getProperties (#2859)

2834 added a getProperties method to AccumuloConfiguration.
Most of the implementations handled the case where the varargs
parameter is null or empty. This commit adds the same
logic to the classes where it was missing

Related to #2834

6 weeks agoProvide getProperties method on Configuration that does not filter (#2834)
Dave Marion [Mon, 8 Aug 2022 15:14:53 +0000 (11:14 -0400)] 
Provide getProperties method on Configuration that does not filter (#2834)

Added a getProperties method that can be used to retrieve properties
using their name or to get all properties. The getProperties method
which takes a filter is useful, but inefficient when you don't need a filter.

7 weeks agoFix formatting
Christopher Tubbs [Fri, 5 Aug 2022 14:56:46 +0000 (10:56 -0400)] 
Fix formatting

7 weeks agoFix fate debug message. Closes #2838 (#2845)
Mike Miller [Fri, 5 Aug 2022 14:58:01 +0000 (14:58 +0000)] 
Fix fate debug message. Closes #2838 (#2845)

7 weeks agoAdding VerifyTabletAssignments utility to accumulo admin command (#2818)
Christopher L. Shannon [Fri, 5 Aug 2022 14:56:37 +0000 (10:56 -0400)] 
Adding VerifyTabletAssignments utility to accumulo admin command (#2818)

* Supports #2807

7 weeks agoUse `==` for enum equality
Christopher Tubbs [Fri, 5 Aug 2022 14:31:09 +0000 (10:31 -0400)] 
Use `==` for enum equality

Followup from #2848, use `==` to compare enums, for additional
compile-time type-safety. (Also replace anonymous inner class with a
lambda for the ZooKeeper tree traversal - automatic refactor by IDE)

7 weeks agoaddress todos in config code and tests (#2844)
EdColeman [Fri, 5 Aug 2022 14:19:06 +0000 (14:19 +0000)] 
address todos in config code and tests (#2844)

7 weeks agoAdded more debug information, retry ZK dump when not connected (#2848)
Dave Marion [Thu, 4 Aug 2022 14:13:22 +0000 (10:13 -0400)] 
Added more debug information, retry ZK dump when not connected (#2848)

7 weeks agoAdded logging to try and find the cause of the intermittent ZK failures (#2846)
Dave Marion [Wed, 3 Aug 2022 20:08:57 +0000 (16:08 -0400)] 
Added logging to try and find the cause of the intermittent ZK failures (#2846)

7 weeks agoremove todo resolved with web #328 (#2843)
EdColeman [Wed, 3 Aug 2022 00:03:44 +0000 (00:03 +0000)] 
remove todo resolved with web #328 (#2843)

7 weeks agoChange debug property name in AdminUtil (#2840)
Dave Marion [Tue, 2 Aug 2022 14:37:14 +0000 (10:37 -0400)] 
Change debug property name in AdminUtil (#2840)

Related to #2837

7 weeks agoFix issue with ZooStore properties not being read due to name change (#2839)
Dave Marion [Tue, 2 Aug 2022 13:18:42 +0000 (09:18 -0400)] 
Fix issue with ZooStore properties not being read due to name change (#2839)

PR #2829 changed the Fate ZooKeeper path for storing and retrieving
the Fate properties for a specific Fate transaction. But, one was
missed.

Closes #2837

7 weeks agoFix names in FateLogger (#2829)
Mike Miller [Mon, 1 Aug 2022 14:03:17 +0000 (14:03 +0000)] 
Fix names in FateLogger (#2829)

* Make the variables in Fate.java the full name of their ZK node names
* Update logger messages in FateLogger
* Closes #2469

7 weeks agoDon't log full stack trace by default when unable to load compression codec (#2836)
Dave Marion [Mon, 1 Aug 2022 13:26:21 +0000 (09:26 -0400)] 
Don't log full stack trace by default when unable to load compression codec (#2836)

Closes #2835

8 weeks agoFix serializable warnings (#2832)
Mike Miller [Fri, 29 Jul 2022 20:02:19 +0000 (20:02 +0000)] 
Fix serializable warnings (#2832)

* Change private interface types to concrete classes to stop Java 18
warnings about non-serializable types
* Supports #2776

8 weeks agoCreate new methods in FastFormat for printing hex (#2826)
Mike Miller [Wed, 27 Jul 2022 20:07:13 +0000 (20:07 +0000)] 
Create new methods in FastFormat for printing hex (#2826)

* Replace uses of String.format() with new method in FastFormat that should be faster
* Modify FateTxId.formatTid to use new method that should be equivalent
* Replace uses of Long.toHexString in Utils with FateTxId.formatTid to
improve logging
* Add new tests to FastFormatTest
* Supports #2495

2 months agoRemove test for trace table (#2828)
Dom G [Tue, 26 Jul 2022 14:14:05 +0000 (10:14 -0400)] 
Remove test for trace table (#2828)

2 months agoSpotbugs plugin update to current version 4.7.1 (#2824)
EdColeman [Mon, 25 Jul 2022 21:38:44 +0000 (21:38 +0000)] 
Spotbugs plugin update to current version 4.7.1 (#2824)

* bump sec-bugs version
* fix the 1 new error, using a lock to provide correct synchronization of the static value.

2 months agoSupply SSL Connection Parameters once with no expiration (#2825)
Dave Marion [Mon, 25 Jul 2022 20:58:25 +0000 (16:58 -0400)] 
Supply SSL Connection Parameters once with no expiration (#2825)

Modified ClientContext to supply ssl connection parameters without expiration
and fixed a bug in SslConnectionParams.hashCode. Prior to this change a miss
occurred in the ThriftTransportPool because the ThriftTransportKey hashCode
was different because new SslConnectionParams objects were being created
and the hashCode was not correct.

2 months agoFix warnings
Christopher Tubbs [Mon, 25 Jul 2022 18:26:48 +0000 (14:26 -0400)] 
Fix warnings

* Use fully-qualified class name and warnings suppressions for
  ScanInterpreter uses left from #2806
* Delete unused static get method in ZooInfoViewer introduced in #2751

2 months agoRemove trace tables and their supporting code from the Monitor (#2822)
Dom G [Mon, 25 Jul 2022 13:11:22 +0000 (09:11 -0400)] 
Remove trace tables and their supporting code from the Monitor (#2822)

* remove trace tables and their supporting code