|  | 
| 1 | 1 | --- | 
| 2 | 2 | source: crates/crates_io_database_dump/src/lib.rs | 
| 3 | 3 | expression: content | 
|  | 4 | +snapshot_kind: text | 
| 4 | 5 | --- | 
| 5 | 6 | BEGIN; | 
| 6 | 7 |     -- Disable triggers on each table. | 
|  | 
| 9 | 10 |     ALTER TABLE "crate_downloads" DISABLE TRIGGER ALL; | 
| 10 | 11 |     ALTER TABLE "crates" DISABLE TRIGGER ALL; | 
| 11 | 12 |     ALTER TABLE "keywords" DISABLE TRIGGER ALL; | 
|  | 13 | +    ALTER TABLE "linked_accounts" DISABLE TRIGGER ALL; | 
| 12 | 14 |     ALTER TABLE "metadata" DISABLE TRIGGER ALL; | 
| 13 | 15 |     ALTER TABLE "reserved_crate_names" DISABLE TRIGGER ALL; | 
| 14 | 16 |     ALTER TABLE "teams" DISABLE TRIGGER ALL; | 
|  | 
| 23 | 25 | 
 | 
| 24 | 26 |     -- Set defaults for non-nullable columns not included in the dump. | 
| 25 | 27 | 
 | 
|  | 28 | +    ALTER TABLE "linked_accounts" ALTER COLUMN "access_token" SET DEFAULT ''; | 
| 26 | 29 |     ALTER TABLE "users" ALTER COLUMN "gh_access_token" SET DEFAULT ''; | 
| 27 | 30 | 
 | 
| 28 | 31 |     -- Truncate all tables. | 
|  | 
| 31 | 34 |     TRUNCATE "crate_downloads" RESTART IDENTITY CASCADE; | 
| 32 | 35 |     TRUNCATE "crates" RESTART IDENTITY CASCADE; | 
| 33 | 36 |     TRUNCATE "keywords" RESTART IDENTITY CASCADE; | 
|  | 37 | +    TRUNCATE "linked_accounts" RESTART IDENTITY CASCADE; | 
| 34 | 38 |     TRUNCATE "metadata" RESTART IDENTITY CASCADE; | 
| 35 | 39 |     TRUNCATE "reserved_crate_names" RESTART IDENTITY CASCADE; | 
| 36 | 40 |     TRUNCATE "teams" RESTART IDENTITY CASCADE; | 
|  | 
| 52 | 56 |     \copy "crate_downloads" ("crate_id", "downloads") FROM 'data/crate_downloads.csv' WITH CSV HEADER | 
| 53 | 57 |     \copy "crates" ("created_at", "description", "documentation", "homepage", "id", "max_features", "max_upload_size", "name", "readme", "repository", "updated_at") FROM 'data/crates.csv' WITH CSV HEADER | 
| 54 | 58 |     \copy "keywords" ("crates_cnt", "created_at", "id", "keyword") FROM 'data/keywords.csv' WITH CSV HEADER | 
|  | 59 | +    \copy "linked_accounts" ("account_id", "avatar", "login", "provider", "user_id") FROM 'data/linked_accounts.csv' WITH CSV HEADER | 
| 55 | 60 |     \copy "metadata" ("total_downloads") FROM 'data/metadata.csv' WITH CSV HEADER | 
| 56 | 61 |     \copy "reserved_crate_names" ("name") FROM 'data/reserved_crate_names.csv' WITH CSV HEADER | 
| 57 | 62 |     \copy "teams" ("avatar", "github_id", "id", "login", "name", "org_id") FROM 'data/teams.csv' WITH CSV HEADER | 
|  | 
| 66 | 71 | 
 | 
| 67 | 72 |     -- Drop the defaults again. | 
| 68 | 73 | 
 | 
|  | 74 | +    ALTER TABLE "linked_accounts" ALTER COLUMN "access_token" DROP DEFAULT; | 
| 69 | 75 |     ALTER TABLE "users" ALTER COLUMN "gh_access_token" DROP DEFAULT; | 
| 70 | 76 | 
 | 
| 71 | 77 |     -- Reenable triggers on each table. | 
|  | 
| 74 | 80 |     ALTER TABLE "crate_downloads" ENABLE TRIGGER ALL; | 
| 75 | 81 |     ALTER TABLE "crates" ENABLE TRIGGER ALL; | 
| 76 | 82 |     ALTER TABLE "keywords" ENABLE TRIGGER ALL; | 
|  | 83 | +    ALTER TABLE "linked_accounts" ENABLE TRIGGER ALL; | 
| 77 | 84 |     ALTER TABLE "metadata" ENABLE TRIGGER ALL; | 
| 78 | 85 |     ALTER TABLE "reserved_crate_names" ENABLE TRIGGER ALL; | 
| 79 | 86 |     ALTER TABLE "teams" ENABLE TRIGGER ALL; | 
|  | 
0 commit comments