Skip to content
This repository was archived by the owner on Oct 18, 2023. It is now read-only.
This repository was archived by the owner on Oct 18, 2023. It is now read-only.

Enpoints for namespace management #591

Open
@MarinPostma

Description

@MarinPostma

The first iteration on namespaces (#575) only supports lazy namespaces creation. Namespaces cannot be deleted either. In the next iteration, we want to be able to create namespaces manually with a call to the primary's admin API.

Here's a sketch of how I see this subsequent iteration work:

  • The primary doesn't allow lazy creation of namespaces; instead, an endpoint is added to the admin API to perform namespace creation.
  • On the replica, lazy namespace creation is still possible: when a request arrives for a new namespace, it is created, and the replica attempts to replicate from the primary. If the namespace doesn't exist on the primary, the namespace creation is aborted, and an error is returned
  • deleting a namespace is done on the primary as well: the database file is destroyed and removed from bottomless. When the replica tries to replicate from the primary, it gets an error that the namespace doesn't exist, and that namespace.

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