Giter VIP home page Giter VIP logo

flexy-canary-connector's People

Contributors

alexjhawk avatar dependabot[bot] avatar oliver-walker-hms avatar

Watchers

 avatar  avatar  avatar

flexy-canary-connector's Issues

Verify config options

In the initialize phase, verify config options.

Missing config options that do not have default values, should result in error message logged and return false from init.

Mandatory config options (need to check that user has modified from defaults)
url, username, password

Investigate the performance of `Thread.yield()` and `Thread.sleep(long)` usage

The performance of Thread.yield() and Thread.sleep(long) should be investigated.

Thread.yield() is intended to signal to the OS that the thread can be suspended and immediately re-added to the ready queue, allowing other threads to run.

  • The investigation should clarify whether the impact of Thread.yield() can result in indeterminate periods of delay, especially during scenarios where the other running threads may have a high-CPU load.

Thread.sleep(long) is intended to signal to the OS that the thread shall not run before the defined/specified time period has been met/passed. This is expected to be more predictable than Thread.yield() but still allow other threads to execute as necessary while the calling thread sleeps.

  • The investigation should clarify whether the impact of short Thread.sleep(long) calls can result in the thread not being suspended by the OS, which necessitates the original need to use Thread.yield() to force OS-level rescheduling.
    • If the sleep interval is increased, does this resolve the issue? Is it a feasible solution?

Reference:
[1]: https://www.java67.com/2012/08/difference-between-yield-and-sleep-in.html
[2]: https://stackoverflow.com/questions/1600572/are-thread-sleep0-and-thread-yield-statements-equivalent
[3]: https://github.com/kifferltd/open-mika/blob/079bcf51dce9442deee2cc728ee1d4a303f738ed/core-vm/java/java/lang/Thread.java#L699
[4]: https://github.com/kifferltd/open-mika/blob/master/core-vm/src/native/java/lang/Thread.c#L582

Correct issues identified during testing

  • Incorrect request information going out
  • Session manage did not resend request for expired token
  • Change method name to more descriptive, SessionManger.refreshTokens()
  • Ensure thread safety is used with session tokens
  • return empty string on no tokens found
  • Use config for dataset name instead of serial number

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.