Exclude HTextFlowTargets belonging to obsolete project and version from index
Description
Activity

Former user 5 June 2017 at 00:21
Given that we implemented 'delete' in May 2015 https://bugzilla.redhat.com/show_bug.cgi?id=1082840 and after 2 years, we have no case requesting a deleted project to be restored, I think the priority of is pretty low.

Former user 2 June 2017 at 06:01
When we implement undelete, we could re-index the restored project. It's pretty quick to re-index just one project. For my records, I purge/re-index/optimize HTextFlowTarget for entire database with 160,000 + HTextFlowTargets, it takes less than 2 minutes. If the re-index of a particular project stopped (server shutdown etc), the restored project will not be part of TM.
We can always revisit our implementation later.

Sean Flanigan 2 June 2017 at 05:26
These changes sound fine, but just because we didn't implement "unarchive" when we implemented "archive" () didn't stop undelete/restore/unarchive from being a requirement: ZNTA-309.
Details
Details
Assignee
Reporter

Tested Version/s
Sprint
Priority

Background:
project and version slug used to be immutable. Now we allow them to change. Also obsolete is changed to soft delete (no direct way to restore). When we obsolete a project or version, we change the slug to some obfuscated string so that the old slug is reusable again. Every time we rename a slug, we re-index everything under that project/version.
Since we already need to re-index when changing status to obsolete, we could remove HTextFlowTargets from index if they belong to obsolete project/version. This will make our index perform better.
As part of this, we also want to change from indexing slug to id. Database id is immutable but slug is not. This means we don't need to re-index if we change slug. Only when we change status to obsolete.