Smaller improvements and April 22 outage
On this Thursday, April 22nd we experienced a prolonged outage. The outage started at 7:25am UTC and lasted for roughly 3 hours during which time Linear was unavailable completely, or in offline mode which caused change syncing to be delayed.
The outage started due to an automatic vacuum process in one of the key tables in our Postgres database. We were getting close to running out of transaction IDs and Postgres forced an autovacuum on us even though the functionality was disabled for the table. Because we are running a managed Postgres instance on GCP, we weren't able to stop the autovacuum process and were forced to wait for it to complete. Once that issue was resolved, we encountered additional issues when trying to bring services online, due to the large number of clients trying to connect at the same time.
We are still investigating the exact details around this and plan to write a longer and more detailed post mortem once our investigation is ready. If you're interested in learning more, follow our Twitter for updates.
UPDATE: Post-mortem is now available
We love launching big new features, but we also love making smaller quality-of-life improvements. This week we focused on smaller improvements across the application. Here are a few highlights.
You can now restrict your OAuth applications to your own workspace by making them private. This is helpful if you have internal applications which rely on Linear as the data source and you need to support authentication for different users. Many services, like Retool, also support OAuth as an API authentication method out of the box as our implementation follows the standard patterns.
We have changed Linear's command menu (Cmdk) to now support opening a specific issue if you write, or paste, its ID to the menu. It even works with our git branch names so you can copy branch names from your terminal and quickly open the issue in Linear. This new implementation replaces issue search inside the command menu which we decided to remove as it was clunky to use and regular search (/) works better for that use case.
Inspired by a user suggestion on Twitter we replaced a sub-issues icon with the status of sub-issue completion in the sub-issues list. This should make it easier to scan and visualize progress. Thanks @maximmart!
- Better performance when updating action on a large number of issues
- We added a view option to hide completed issues from previous cycles
- Fixed a few timezone options that didn't work (sorry about that, Indianapolis)
- Board columns now scroll items into view when navigating with keyboard
- Fixed roadmap editing using IME inputs
- Fixed an issue where the new issue modal would open with old data
- Fixed the display of the next billing date in billing settings
- Improved the issue modal when used with on-screen keyboards
- Fixed bug where GitHub automation didn't wait for all the open PRs to be merged until closing the issue
- Fixed a bug that could cause Asana imports to result in an error
- Fixed error when non-admins create a new team and copy properties from an existing team
- Fixed the display of cycles in Inbox
- The Linear bot will now post a comment with a linkback to the URL of the issue linked with a GitHub pull request even if you add the URL in the description
- Fixed a bug that made it impossible to undo deleting an issue
- Added more icons to choose from for Views and Projects
- Added the team name to the title in the Recently Deleted page
- Added a hint on how to enable manual sorting if you try dragging items in non-sortable lists
- Fixed a bug where the status of default templates would not be applied for new issues