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

Table-Manager: Create/Update table before deleting tables #3055

Closed
jtlisi opened this issue Aug 18, 2020 · 8 comments
Closed

Table-Manager: Create/Update table before deleting tables #3055

jtlisi opened this issue Aug 18, 2020 · 8 comments
Labels
good first issue These are great first issues. If you are looking for a place to start, start here! storage/chunks Chunks storage engine type/production Issues related to the production use of Cortex, inc. configuration, alerting and operating.

Comments

@jtlisi
Copy link
Contributor

jtlisi commented Aug 18, 2020

if err := m.deleteTables(ctx, toDelete); err != nil {
return err
}
if err := m.createTables(ctx, toCreate); err != nil {
return err
}
if err := m.updateTables(ctx, toCheckThroughput); err != nil {
return err
}

When the table manager actually attempts to sync and operate on the chunk storage backend it will proceed in the following order:

  1. Delete
  2. Create
  3. Update

If any of these operations fail at any point, the entire sync will return. This can lead to issues for users who have delete operations that are unsuccessful, since new tables will not be created. This means new data will not be flushed since no table exists to support it. I propose the following order:

  1. Create
  2. Update
  3. Delete

This order will prioritize write availability over storage retention.

@jtlisi jtlisi added storage/chunks Chunks storage engine type/production Issues related to the production use of Cortex, inc. configuration, alerting and operating. labels Aug 18, 2020
@stale
Copy link

stale bot commented Oct 17, 2020

This issue has been automatically marked as stale because it has not had any activity in the past 60 days. It will be closed in 15 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Oct 17, 2020
@pracucci
Copy link
Contributor

Still valid

@stale stale bot removed the stale label Oct 19, 2020
@jtlisi jtlisi added the good first issue These are great first issues. If you are looking for a place to start, start here! label Oct 19, 2020
@stale
Copy link

stale bot commented Dec 18, 2020

This issue has been automatically marked as stale because it has not had any activity in the past 60 days. It will be closed in 15 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Dec 18, 2020
@pracucci
Copy link
Contributor

Still valid, help wanted!

@stale stale bot removed the stale label Dec 19, 2020
@daemon1024
Copy link

Hello, I was looking to getting involved with the project. Can I work on this?

@pracucci
Copy link
Contributor

Hi @daemon1024 none is working on this issue. If you're a Cortex user, I would suggest you to start from an issue you will directly benefit from.

For example, the table-manager is used only by the chunks storage, and a good amount of Cortex users (including my employer) are moving or already moved to the blocks storage, so if you're not running the chunks storage I would suggest you to take a look at the blocks storage issues, which is the direction where the community is heading to.

@daemon1024
Copy link

daemon1024 commented Jan 27, 2021

Hi @pracucci , I am not a Cortex user, I am a student looking to get involved with CNCF in general this seemed like an interesting project hence looking into the good-first-issues. Thank You.

@jtlisi
Copy link
Contributor Author

jtlisi commented Mar 18, 2021

Closing this since chunks storage is now in maintenance mode.

@jtlisi jtlisi closed this as completed Mar 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue These are great first issues. If you are looking for a place to start, start here! storage/chunks Chunks storage engine type/production Issues related to the production use of Cortex, inc. configuration, alerting and operating.
Projects
None yet
Development

No branches or pull requests

3 participants