Comments (17)
I was looking into this issue and after removing the exceptions and rebuilding/retesting I didn't notice any errors or changes. Can you elaborate on what you mean with this issue and if there is anything in addition that must be done or anything that I am missing? Thanks!
from accumulo-examples.
@Manno15 try buliding the project with "mvn clean install" or "mvn clean verify".
from accumulo-examples.
I just updated the build script to call verify and make sure it passes all the checks. So if you pull down the update and run ./bin/build it should run checkstyle as well.
from accumulo-examples.
Thanks, I will run it now and see what happens.
from accumulo-examples.
Is the goal to change how the import control works so we don't need those exceptions or to change where they are used so we do not need the imports? Just a little confusion on wording. Thanks!
from accumulo-examples.
to change where they are used so we do not need the imports?
Yes. Change the code that uses these imports so we can remove the exceptions from the import-control file.
from accumulo-examples.
@Manno15 The intention here is to provide examples that a user could reasonably expect to write and use. However, we're currently doing things in these examples that are not recommended for users... like using internal-only unstable APIs. These aren't stable, and this practice makes for bad examples.
The intent of this ticket is to migrate those "bad" code examples away from using Accumulo internal classes (represented by the imported classes that we'd prefer to ban). This may mean getting rid of bad examples entirely... or it may mean rewriting them or simplifying them to avoid importing internal/unstable code from Accumulo's internals.
from accumulo-examples.
Okay, that makes a lot of sense. Thank you both for clarifying for me.
from accumulo-examples.
Considering that the Trace Dump is not under the listed examples, would that be one where we would get rid of entirely? Only thing the exception blocks is the actual printing of the trace.
from accumulo-examples.
Considering that the Trace Dump is not under the listed examples, would that be one where we would get rid of entirely? Only thing the exception blocks is the actual printing of the trace.
We have plans to remove the Tracer (eventually) from Accumulo so perhaps leave that one for now. I am not sure if the Tracer will be deleted or moved to its own repository. @ctubbsii knows more about the Tracer so maybe he can weight in on what to do with this example.
from accumulo-examples.
I am working on a different way to print it, similar to some of the other examples.
from accumulo-examples.
I'm not familiar with the trace example, but it was my intention to deprecate and/or remove the tracer (sink) service, and investigate updating the trace instrumentation we're using. A good trace example would use custom trace sink specifically for that example rather than rely on the tracer service or its storage back into Accumulo.
from accumulo-examples.
The one I was more talking about was the TraceDump example which seems to scan a table that then uses TraceDump to print Trace info and tserver info neatly. The tracing Example that is apart of the second exception on the list to remove still seems to work normally even with Distributed Trace removed. So I am not quite sure where to go for those two.
from accumulo-examples.
TraceDump is part of the tracer sink service we provide (trace.span.receivers = org.apache.accumulo.tracer.ZooTraceClient
) which receives spans and stores them back into an Accumulo table. TraceDump is not public API (no part of the tracer service is), but was presumably written as a utility to view and verify the data that has been received and stored by that tracer service.
The example should either be removed, or modified to set a different span receiver that is more suitable for an example. If it's difficult to remove, I would just move on to the others for now. There's no urgency to that.
from accumulo-examples.
The example itself isn't directly tied to anything so it shouldn't be hard to remove. I can take a look at modifying it to set a different span receiver after I finish going through the rest if that is more preferable.
from accumulo-examples.
@Manno15 Don't feel like this needs to all be fixed in a single pass. The use of internal, non-public APIs, in the examples can be fixed incrementally. 😺
from accumulo-examples.
I will keep that in mind. Thanks!
from accumulo-examples.
Related Issues (20)
- Update Accumulo-Examples to work against the 3.x development version of Accumulo HOT 1
- Update filedata example for Accumulo 3.x development line HOT 1
- Contraints example hangs when run against Accumulo 3.x HOT 4
- Classpath example fails against Accumulo 3.x HOT 8
- DeleteKeyValuePair output differs from what is displayed to user HOT 1
- Dirlist example throws exceptions during execution HOT 3
- README and HADOOP_VERSION variable minor issues HOT 2
- Invalid Root Table Metadata JSON version 2 HOT 1
- Expand instructions for use of UniqueColumns example.
- Shard portion of Sample example not producing expected results HOT 4
- Update filedata example to no longer use deprecated methods
- Update 2.0 branch to use examples namespace when creating tables. HOT 1
- Update README.md to clarify use of 'main' vs '2.0' branch. HOT 2
- Update README.md to clarify use of 'main' vs '2.0' branch. HOT 3
- Update 2.0 branch to use examples namespace when creating tables. HOT 3
- Compaction Strategy Example is no longer accurate HOT 1
- SLF4J warning blocks output on all examples
- Remove or update tracing example HOT 1
- All `./bin/runmr` commands fail to run
- ClassNotFoundException on several examples HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from accumulo-examples.