Code Monkey home page Code Monkey logo

Comments (17)

Manno15 avatar Manno15 commented on May 20, 2024

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.

milleruntime avatar milleruntime commented on May 20, 2024

@Manno15 try buliding the project with "mvn clean install" or "mvn clean verify".

from accumulo-examples.

milleruntime avatar milleruntime commented on May 20, 2024

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.

Manno15 avatar Manno15 commented on May 20, 2024

Thanks, I will run it now and see what happens.

from accumulo-examples.

Manno15 avatar Manno15 commented on May 20, 2024

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.

milleruntime avatar milleruntime commented on May 20, 2024

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.

ctubbsii avatar ctubbsii commented on May 20, 2024

@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.

Manno15 avatar Manno15 commented on May 20, 2024

Okay, that makes a lot of sense. Thank you both for clarifying for me.

from accumulo-examples.

Manno15 avatar Manno15 commented on May 20, 2024

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.

milleruntime avatar milleruntime commented on May 20, 2024

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.

Manno15 avatar Manno15 commented on May 20, 2024

I am working on a different way to print it, similar to some of the other examples.

from accumulo-examples.

ctubbsii avatar ctubbsii commented on May 20, 2024

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.

Manno15 avatar Manno15 commented on May 20, 2024

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.

ctubbsii avatar ctubbsii commented on May 20, 2024

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.

Manno15 avatar Manno15 commented on May 20, 2024

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.

ctubbsii avatar ctubbsii commented on May 20, 2024

@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.

Manno15 avatar Manno15 commented on May 20, 2024

I will keep that in mind. Thanks!

from accumulo-examples.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.