Skip to content

workload/schemachange: support user-defined schemas #54408

@ajwerner

Description

@ajwerner

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

The random schemachange workload is a powerful tool to catch bugs and ensure that we properly classify errors. In the 20.2 release we added support for user-defined schemas. It will be very valuable to exercise the interactions between schemas and all of the other schema changes.

Describe the solution you'd like

In order to support user-defined schemas, there's going to be multiple steps. We should take it one step at a time.

  1. Add a createSchema op
  2. Add a dropSchema op - probably with CASCADE
  3. For each of the objects which can exist in a schema, start to namespace them by schema with some chance of picking the public schema
    • tables
    • enums
    • views
      With this above task we'll also need to change all of the code that discovers these various objects.

The first two steps should be reasonably trivial. Step 3 is where things get a bit trickier.

Additional context

For an example PR that adds a new concept to the tool you can refer to #54351. j

Metadata

Metadata

Labels

C-bugCode not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions