Project

General

Profile

Actions

Bug #19890

closed

Use 64-bit id columns to prevent overflow

Added by Tom Clegg almost 2 years ago. Updated almost 2 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
API
Target version:
Story points:
0.5
Release relationship:
Auto

Description

The default rails ID field is a 32-bit signed int, which overflows after ~2e9 IDs are generated from *_id_sequence.

All id columns should be 64-bit ints.


Subtasks 1 (0 open1 closed)

Task #19892: Review 19890-id-bigintResolvedTom Clegg01/03/2023Actions
Actions #1

Updated by Tom Clegg almost 2 years ago

19890-id-bigint @ e219f76f6a8fc11eabb1db7bf0423a0436c40328 -- developer-run-tests: #3434

Is this migration potentially slow enough to merit a mention in the upgrade guide?

Actions #2

Updated by Peter Amstutz almost 2 years ago

  • Category set to API
Actions #3

Updated by Tom Clegg almost 2 years ago

  • Story points set to 0.5
Actions #4

Updated by Peter Amstutz almost 2 years ago

User also getting gateway error with user records that had 'id' fields over 2^31

Actions #5

Updated by Brett Smith almost 2 years ago

Tom Clegg wrote in #note-1:

Is this migration potentially slow enough to merit a mention in the upgrade guide?

I vote yes. I think even if it's not relevant for most of our users, highlighting it for those who it might affect is the right call here.

The code in the branch looks good to me.

Actions #6

Updated by Tom Clegg almost 2 years ago

19890-id-bigint @ 0ed815ce9bd5d266808892275d9959546cdd8227

Does this wording look OK?

Slow migration on upgrade

This upgrade includes a database schema update (changing an integer column in each table from 32-bit to 64-bit) that may be slow on a large installation. Expect the arvados-api-server package upgrade to take longer than usual.

Actions #7

Updated by Brett Smith almost 2 years ago

Tom Clegg wrote in #note-6:

19890-id-bigint @ 0ed815ce9bd5d266808892275d9959546cdd8227

Does this wording look OK?

Works for me, thanks.

Actions #8

Updated by Tom Clegg almost 2 years ago

  • % Done changed from 0 to 100
  • Status changed from In Progress to Resolved
Actions #9

Updated by Peter Amstutz almost 2 years ago

  • Release set to 57
Actions

Also available in: Atom PDF