Page MenuHomePhabricator

Moving the default column on Workboards causes issues if first column is also hidden
Closed, ResolvedPublic

Description

Steps to reproduce:

  1. Make a new Column
  2. Move Backlog to not being first column
  3. Hide the first Column
  4. Workboard prompts you to create a new board (but Backlog should already exist)

Event Timeline

chad raised the priority of this task from to Needs Triage.
chad updated the task description. (Show Details)
chad added a project: Workboards.
chad added a subscriber: chad.
epriestley added subscribers: tcook, epriestley.

Support Impact This breaks boards in a confusing/surprising way and @tcook hit it in the wild (but I don't think developed repro steps).

also, if we can get a procedure for removing 'backlog' lists created due to this bug, it'd be a real help. I have one board that currently has eight backlog columns :(

Also, probably should be in a separate task, but the ability to outright delete a column/list would be useful, especially since active tasks can exist in hidden columns which is very confusing.

D10651 will at least prevent future issues, will have to follow up if a migration is possible.

btrahan added a subscriber: btrahan.

@chad - unless you have plans on a migration, I think we can close this out. I removed the support impact project since this is no longer generating support.

That patch would be out of my league.

btrahan claimed this task.

For any users who have extra backlog columns... to clean them up, make sure there are no tasks in them on the web ui and make sure you check for completed tasks too...! Visit the project homepage and look at the "flag for later" URI - the project PHID is in it - and save this phid for later. Visit the workboard and "edit" the backlog column that gets to live and note that ID for later too.

Next, load up mysql and try these queries

use phabricator_project;
select * from project_column where projectPHID = 'THEPROJECTPHID' and id != 'THEREALBACKLOGCOLUMNID';

...substituting the pertinent values you looked up earlier. You should get back a bunch of column rows - basically all of them for the project except the default backlog column you chose in the web UI. You can then issue DELETE statements for each backlog column you don't want which is probably all of them. A more aggressive set of queries would be

use phabricator_project;
DELETE FROM project_column where projectPHID = 'THEPROJECTPHID' and id != 'THEREALBACKLOGCOLUMNID' and name = 'Backlog'