getodk / getodk/central

Use Postgres UUID type to store UUIDs

Open
#1,217 7 comments 0 reactions 0 assignees View on GitHub
backend performance
Dominant language
JavaScript
Stars
226
Forks
235
Avg merge
2d 22h
Merged PRs (30d)
19

Description

It looks like various database columns are storing UUIDs as strings:

* `actees.id`
* `actees.parent`
* `actors.acteeId`
* `assignments.acteeId`
* `audits.acteeId`
* `datasets.acteeId`
* `entity_def_sources.type`
* `form_attachments.acteeId`
* `forms.acteeId`
* `grants.acteeId`
* `projects.acteeId`

Storing UUIDs as `UUID` instead of `VARCHAR(36)`/`CHARACTER VARYING (36)` is likely to (marginally?) improve query speed and RAM usage.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the database schema or migrations that define the listed tables and columns, including actees.id, actees.parent, and the various acteeId fields. Check how each is currently stored and map the required schema changes. Done means the listed UUID columns use PostgreSQL's UUID type consistently and the migration completes successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
postgresql
Domain
databases
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.