Git Product home page Git Product logo

failover's People

Contributors

alexkarezin avatar anandmnair avatar vincent-fuchs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

failover's Issues

[BUG] : Key generation with boolean argument treated as custom object

Describe the bug

A clear and concise description of what the bug is.

Key generation with boolean argument treated as custom object

To Reproduce

Steps to reproduce the behaviour:
When a boolean is provided as one of argument with Failover configuration, the key is generated as Boolean@4cf instread of true or false.

Example : Key arguments as : 1, true, 3 then the key is coming as "1:Boolean@4cf:3"

Expected behaviour

A clear and concise description of what you expected to happen.

The correct behaviour should be "1:true:3"

Logs or Screenshots

If applicable, please provide a detailed log or a screenshots to help explain your problem.

Your environment version

  • Failover lib version :
  • Java version :
  • Spring Boot version :

Which module is impacted

The impacted modules are :

  • failover-domain
  • failover-core
  • failover-store-inmemory
  • failover-store-caffeine
  • failover-store-jdbc
  • failover-store-async
  • failover-aspect
  • failover-scheduler
  • failover-lookup
  • failover-execution-resilience
  • failover-spring-boot-autoconfigure
  • failover-spring-boot-starter

Additional context

Add any other context about the problem here.

[Feature] : Differentiate real server exception(5xx) vs client exceptions(4xx)

Is your feature request related to a problem? Please describe.

Unable to know with the response in failover library whether its a real server exception or a client exception

Describe the solution you'd like

It would be nice to parameterize the exceptions that failover library can consider like 5xx exceptions and exclude others. May be dependes on the consumers of the library to choose what exceptions they want to handle as part of failover.

Describe alternatives you've considered

As a tactical, we can also provide a status code of the exception in the response so that client can decide what they want to do with a specific exception.

Which module is impacted

The impacted modules are :

  • failover-domain
  • [x ] failover-core
  • failover-store-inmemory
  • failover-store-caffeine
  • failover-store-jdbc
  • failover-store-async
  • failover-aspect
  • failover-scheduler
  • failover-lookup
  • failover-execution-resilience
  • failover-spring-boot-autoconfigure
  • failover-spring-boot-starter

Additional context

Add any other context or screenshots about the feature request here.

[Feature] : Document the "package-to-scan" property

Is your feature request related to a problem? Please describe.

In the documentation, I didn't see a section related to the "package-to-scan" property
This property is mandatory because it is used for the reflexions library, and currently the "mandatory" part is implicit
When this property is missing, the Failover lib is not working silently

Describe the solution you'd like

Documentation this mandatory parameter in the quick start section

Describe alternatives you've considered

  • Throw an error on startup when the property is missing
  • Throw an error in the DefaultFailoverScanner::init method when Reflexions.getMethodsAnnotatedWith(Failover.class) return is empty (or log a warning ?)

I'd prefer having the property documented than creating issues for the following version upgrade !

Which module is impacted

The documentation

Additional context

Other idea : Add a dependency matrix between the failover-spring-boot-starter / spring-boot-starter / Java versions
Due to the issue #40, I thought the 1.1.0 version (for spring-boot 2 if I understood correctly) wasn't compatible with Java 17.
After testing, it looks to be working fine

[Feature] : Payload body order changes considering new request

Is your feature request related to a problem? Please describe.

A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Could we implement a system where any change in data order within the payload is not recognized as a new post request?

Describe the solution you'd like

A clear and concise description of what you want to happen.

We need to apply sorting logic while storing and while fetching

Describe alternatives you've considered

A clear and concise description of any alternative solutions or features you've considered.

Which module is impacted

The impacted modules are :

  • failover-domain
  • failover-core
  • failover-store-inmemory
  • failover-store-caffeine
  • failover-store-jdbc
  • failover-store-async
  • failover-aspect
  • failover-scheduler
  • failover-lookup
  • failover-execution-resilience
  • failover-spring-boot-autoconfigure
  • failover-spring-boot-starter

Additional context

Add any other context or screenshots about the feature request here.

[Feature] : Support of multitenancy database

Is your feature request related to a problem? Please describe.

A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Unable to utilize this feature for a multitenancy database

Describe the solution you'd like

A clear and concise description of what you want to happen.
It would greatly enhance our solution if we could incorporate support for multitenancy, enabling it to be adaptable to any type of application. Additionally, we should default to the primary database and dynamically switch databases based on the tenant.

Describe alternatives you've considered

A clear and concise description of any alternative solutions or features you've considered.
Would it be possible to explore the option of utilizing multitenant databases instead of relying solely on a single instance for the default datasource

Which module is impacted

The impacted modules are :

  • failover-domain
  • failover-core
  • failover-store-inmemory
  • failover-store-caffeine
  • [X ] failover-store-jdbc
  • failover-store-async
  • failover-aspect
  • failover-scheduler
  • failover-lookup
  • failover-execution-resilience
  • failover-spring-boot-autoconfigure
  • failover-spring-boot-starter

Additional context

Add any other context or screenshots about the feature request here.

[Feature] : Externalize the configuration of expiry duration and unit

Is your feature request related to a problem? Please describe.

Externalize the configuration of expiry duration and unit

Describe the solution you'd like

  • @failover annotation , we can add additional configuration for expiry expression or in string and then extract the info from the context or env or properties.
  • This will help us to configure higher expiry for non prod environment

Describe alternatives you've considered

  • NA

Which module is impacted

The impacted modules are :

  • failover-domain
  • failover-core
  • failover-store-inmemory
  • failover-store-caffeine
  • failover-store-jdbc
  • failover-store-async
  • failover-aspect
  • failover-scheduler
  • failover-execution-resilience
  • failover-spring-boot-autoconfigure
  • failover-spring-boot-starter

Additional context

Add any other context or screenshots about the feature request here.

[HELP] : Plan a release with spring boot 3.x and java 17+

Is your request related to a problem? Please describe.

A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

  • Spring boot 3.x migration with Java 17+

Describe what help you need from us

A clear and concise description of what help you want from us.

Which modules are needed

The modules are :

  • failover-domain
  • failover-core
  • failover-store-inmemory
  • failover-store-caffeine
  • failover-store-jdbc
  • failover-store-async
  • failover-aspect
  • failover-scheduler
  • failover-execution-resilience
  • failover-spring-boot-autoconfigure
  • failover-spring-boot-starter

Additional context

Add any other context or screenshots about the feature request here.

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.