Skip to content

Evaluation API - bulk evaluation #334

@rs-torsten

Description

@rs-torsten

Hi,

I faced with 2 scenarios which is uncovered by specification but they looks very important for dynamic-context paradigm.

Both scenarios actually linked with atomicity of configuration in admin system and data consistency.

  1. If we have some configuration in admin we want to have guarantees that multiple calls of flags will be executed on same version of this configuration. Because if we perform two calls to get 'foo' and 'bar' so between requesting 'bar' configuration in admin may be changed and cause inconsistent state due to foo was already received with previous version.

  2. One more case related to atomicity but also crucial to avoid multiple request instead single request. For example using some flow we use 2 or more flags. So we need to make 2 or more calls by network to get evaluation for same context (for example targetingKey/userId).
    So in additional to problem related to consistency we also have additional network calls which also can be failed and dramatically increase overall latency to process some business request/payload.

I want propose to add new API method to request flags in bulk mode with some specified evaluation context for all of them.

Looks like:

List/Map evaluations = client.getBulkEvaluation(flagsAndDefaults, evaluationContext)

Where flagsAndDefault should represent name of flag and associated default. It also can be map/dict or some structure.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions