Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecate creating root datastores #9660

Closed
4 of 5 tasks
andre4i opened this issue Mar 29, 2022 · 1 comment
Closed
4 of 5 tasks

Deprecate creating root datastores #9660

andre4i opened this issue Mar 29, 2022 · 1 comment
Assignees
Labels
api deprecation Changes to a deprecated API
Milestone

Comments

@andre4i
Copy link
Contributor

andre4i commented Mar 29, 2022

Deprecated API

IContainerRuntime.createRootDataStore and IContainerRuntimeBase._createDataStoreWithProps with isRoot set to true. The latter has already been deprecated (0.16 Issue #1537, #3631)

Context

The APIs are vulnerable to name conflicts, which lead to invalid documents. See #6465

Approach

The replacement API has two parts:

  • Creating a regular datastore using the IContainerRuntimeBase.createDataStore(pkg: string | string[]): Promise<IDataStore> function
  • Aliasing the datastore by using the IDataStore.trySetAlias(alias: string): Promise<AliasResult> function and specifying a string value to serve as the alias to which the datastore needs to be bound. If successful, "Success" will be returned, and a call to getRootDataStore with the alias as parameter will return the same datastore.

Dependencies

Currently, the API is used across the Fluid examples and in some Bohemia use-cases.

Compatibility Concerns

The migration can be started after runtime version >= 0.56.0 reaches full/reasonable saturation.

Phases

Expected Timeline

TBD

Open Questions

TBD

@andre4i
Copy link
Contributor Author

andre4i commented May 23, 2022

@andre4i andre4i closed this as completed May 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api deprecation Changes to a deprecated API
Projects
None yet
Development

No branches or pull requests

1 participant