test(migrations): drop schema-shape tests structure.sql already pins
Summary
!2764 (merged) set the rules for schema test suites. This MR applies them to the suites that predate it.
415 tests deleted, 49 trimmed, 2 added. The package holds 507 tests, down from 920. The diff removes 24,541 lines and adds 926.
Why the deleted tests went
Most of them read the catalog to confirm the schema matches the migration: a
column's type, an index's name and key list, a foreign key's delete action, the
partition count and key. The db:structure-check CI job already covers that. It
regenerates structure.sql from the migrations on every change and fails when
the result differs from the committed file, so a Go test for the same fact is a
second copy of the same check.
Only a migration can change any of those facts, and that migration's review
shows both the SQL and the structure.sql diff. Review is the guard.
Three other groups went with them:
- Identifier lengths. PostgreSQL truncates a name over 63 bytes and the dump records it truncated. Measure the name when writing the migration and state it in that MR.
- Runtime down-walks.
TestMigrations_UpDownUpalready rolls the whole chain to zero and re-applies it. A per-format copy repeats that work and adds no guarantee. A Down whose shape matters is parsed instead of run. The rerun tests that roll a per-partition index down to rebuild a crashed build go too: the drop-before-create guard they prove is parsed from the file in every one of those suites. - Parent-enum sweeps. These inserted one child row per value of a parent
table's
kind,formatandvisibilitycolumns, and per parent lifecycle state. No reader of the child table depends on those admits.
What stays
Behaviour. What each table refuses, one case per CHECK bound and per foreign
key. What a delete cascades into. Transaction-scoped properties. Rows a named
consumer depends on. Query plans. The migration file's shape, parsed.
A trimmed CHECK test keeps its accept and reject rows and loses only the
catalog count above them. Every bound is still falsified by an insert, and each
char_length cap also accepts a multibyte value at exactly its limit, so a
tightened cap fails too.
Four decisions worth knowing about
- Trigger clones stay asserted.
pg_dumpskips a trigger it cloned onto a partition, sostructure.sqlholds the 4 parent triggers and none of the 64 copies. A partition missing a shadow trigger stops shadowing its blobs, per-namespace storage accounting under-counts every namespace that hashes there, and thestructure.sqldiff stays green. This is one of two facts the dump does not carry. - The v7
idrule stays asserted, catalog query included. It is the other one. ADR-007 requires everyuuid idwith no default to carry a versionCHECK. That rule is about tables that do not exist yet, so the dump cannot enforce it: a new table without theCHECKregenerates a dump matching itself and the job passes. The doctrine's do-not-assert list covers per-table facts, and this is not one. - A catalog read that watches a migration run stays. Nothing cheaper sees it. Two tests do this: the plaintext drop applying over a row that still holds the pair, and the statistics seed filling rows that predate its own migration.
- Three catalog tests that guard a code assumption stay. They protect
code that reads constraint names, not the schema.
TestCMRImageCompositeFK_OneKeyPerErrorNeedlepins that each ofmapCreateCMRError's substring needles reaches exactly one key. A future key whose name carries a needle would route its 23503 to the wrong sentinel and answer 404 for manifests that exist, and astructure.sqldiff would not show it. Outside this package,TestRepositoryStore_DeleteFKAssumption_SchemaGuardpins the FK topology thatmapRepositoryDeleteError's blanket 23503 mapping relies on, and the credential-table liveness subtest proves its forbidden-token list still names live identifiers.
What this adds
926 lines. Two tests and one assertion are new, one set of reject rows is rewritten to test what it claims, the length tests gain their at-cap side, and the rest is restored or rewritten.
- 511 lines of test code. Mostly the 14 tests this MR puts back, each with
its catalog half removed, plus the fixtures they need. New: two Down parses,
one assertion in the
namespace_statisticscascade test, and real parent rows for the OCICHECKtests. - The two new tests cover a gap the trim opened. Dropping the runtime
down-walks left
add_artifact_read_keyset_indexesandadd_container_images_bulk_scope_indexwith no Down assertion at all, while every sibling index suite keeps a static one. Each now parses its Down and requires anIF EXISTS-guardedDROP INDEXper index. - The new assertion closes a hole in the
namespace_statisticscascade test. It asserted that deleting a namespace leaves no statistics row, but nothing checked the row was there first, so the count passed on an empty table. It now requires the trigger-made row before the delete. - The OCI
CHECKtests now falsify their bounds. Each reject row fabricated itscontainer_image_id, so the foreign key refused the row before anyCHECKsaw it, and the assertion accepted23503beside23514. Dropping any of those tenCHECKconstraints left every test green. The rows now seed a real parent chain, and the assertion requires23514. - Each 255-character cap is accepted at the cap. Once the catalog pin on
the bound went, only the over-cap reject was left, and a cap tightened to
214 still refuses 256 characters. Ten subtests across the npm, npm remote
and OCI length tests now insert 255 two-byte characters and require the row
to be accepted, which also fails a switch to
octet_length. - Down parses match whole statements. A substring check for
DROP INDEX IF EXISTS <name>passed for an index whose name prefixes another's, so the keyset suite's shorter index could lose its drop and stay green.assertDownDropsIndexrequires the whole statement. - 280 comment lines and 7
//nolintdirectives. Two-line replacements for every comment block the deletions touched, and the waivers re-anchored above tests whose comment block moved. - 128 Markdown lines, against 293 removed. Design notes whose subject was a deleted test now describe the schema instead.
Runtime
The package runs about a third faster. Measured on one machine, same PostgreSQL
17 container with max_locks_per_transaction=1024 as CI sets it, the two runs
back to back:
| Tests | Wall clock | |
|---|---|---|
| Before | 881 | 564.8s |
| After | 488 | 360.6s |
That is 204 seconds, or 36%. The chain still applies once per job, so the saving is the per-test cost of the catalog queries this MR removes. The After run predates the last 20 deletions, so the gap today is at least this wide.
CI job durations cannot show this on their own. test:integration:migrations on
main ranges from 514s to 1380s across the last five green pipelines, which is
the variance #1124 (closed)
is about. This branch's own runs land at 342s to 1043s, consistent with the
measurement but not evidence by themselves. #1124 (closed) matters here because the job
that timed out at 23 minutes is the one this MR shortens.
Two cleanups
docs/dev/database.md loses the worked example under its constraint-naming
rules. A standard states the rule. One table's character arithmetic, and the
test that measured it, belong with that table.
Three frozen migration files cite Go constants this MR deletes
(mavenVirtualRepositoriesUniqueCols and its npm and container twins). What
each comment claims is still true, and only the symbol it cited is gone.
scripts/ci/check-migration-immutability.sh freezes those files byte for byte,
and git holds what they said when they landed, so they stand.
Verification
go vet -tags "integration e2e conformance" ./...clean, on the branch and on its merge with currentmain. A branch pipeline tests the branch alone, so the merge is checked separately: suites that land onmaincan call helpers this MR deletes.- The migrations integration suites pass in CI on PostgreSQL 16, 17 and 18.
scripts/ci/check-comment-caps.shclean over the whole diff.- Every
//nolintdirective audited against the pre-trim tree. No surviving test lost a waiver. - No unreferenced helper, constant or type left in the package, and a type-aware check finds no struct field the trim left set but never read.
- Both new guards checked by mutation: dropping one index's
DROPfrom the keyset Down, and tightening the npm name cap to 254, each turn exactly one test red. - No surviving reference to a deleted test name in
internal/ordocs/dev/.
Deleted (415 tests)
Index name, key list, uniqueness or predicate. All in `structure.sql`. (89 tests)
| Test | File |
|---|---|
TestArtifactReadKeysetSchema_IndexesExistWithKeysAndPredicates |
artifact_read_keyset_schema_integration_test.go |
TestBlobStorageAttachments_NamespaceSHA256IndexIsNonUnique |
blob_storage_attachments_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_CoveringIndex |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestContainerBlobSha256Index_IndexesExistWithKeysAndPredicates |
container_blob_sha256_index_schema_integration_test.go |
TestContainerBulkScopeIndex_ShapeAtHead |
container_bulk_scope_index_schema_integration_test.go |
TestContainerImagesPartialUnique_IndexShapeAtHead |
container_images_partial_unique_schema_integration_test.go |
TestCMRChildParentIndex_ExistsAtTheParentWithItsKeyTuple |
container_manifest_relationships_child_parent_index_schema_integration_test.go |
TestCMRImageCompositeFK_ReferencedIndexKeysThreeColumnsInOrder |
container_manifest_relationships_image_composite_fk_schema_integration_test.go |
TestContainerRemoteBlobsSchema_BlobSha256ReverseLookupIndexShape |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteBlobsSchema_BlobStorageAttachmentCleanupIndexShape |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteBlobsSchema_NonUniqueIndexCount |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteBlobsSchema_ParentFKCoverageIndexShape |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteBlobsSchema_UniqueDigestIndexShape |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteImagesSchema_SecondaryIndexShapes |
container_remote_images_schema_integration_test.go |
TestContainerRemoteImagesSchema_UniqueIndexShape |
container_remote_images_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_ChildLookupIndexShape |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_ImageScopedIndexShape |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_NonUniqueIndexCount |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_UniquePairIndexShape |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestsSchema_BlobSha256ReverseLookupIndexShape |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteManifestsSchema_BlobStorageAttachmentCleanupIndexShape |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteManifestsSchema_ChronologicalIndexShape |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteManifestsSchema_NonUniqueIndexCount |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteManifestsSchema_RetentionIndexShape |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteManifestsSchema_TrashListingIndexShape |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteManifestsSchema_UniqueDigestIndexShape |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_NsKeyIndexShape |
container_remote_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_UniqueRepositoryIDIndex |
container_remote_schema_integration_test.go |
TestContainerRemoteTagsSchema_ManifestLookupIndexShape |
container_remote_tags_schema_integration_test.go |
TestContainerRemoteTagsSchema_NonUniqueIndexCount |
container_remote_tags_schema_integration_test.go |
TestContainerRemoteTagsSchema_UniqueNameIndexShape |
container_remote_tags_schema_integration_test.go |
TestContainerTagsManifestIDNameIndex_KeysThreeColumnsInOrder |
container_tags_manifest_id_name_index_schema_integration_test.go |
TestContainerTagsManifestIDNameIndex_OtherIndexesSurvive |
container_tags_manifest_id_name_index_schema_integration_test.go |
TestArtifactTombstoneSchema_DiscoveryIndexesExistWithKeysAndPredicate |
container_tombstone_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_NoNonUniqueIndexes |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_UniqueRepositoryIndexShape |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualUpstreamsSchema_ForeignKeysAndChecks |
container_virtual_repository_upstreams_schema_integration_test.go |
TestContainerVirtualUpstreamsSchema_KeysAndIndexes |
container_virtual_repository_upstreams_schema_integration_test.go |
TestContainerVirtualRulesSchema_ForeignKeysAndChecks |
container_virtual_upstream_rules_schema_integration_test.go |
TestContainerVirtualRulesSchema_KeysAndIndexes |
container_virtual_upstream_rules_schema_integration_test.go |
TestMavenFilesSchema_VersionLookupIndexExistsNonPartial |
maven_files_version_index_schema_integration_test.go |
TestMavenMetadataTombstoneIndex_AppliesRollsBackAndReapplies |
maven_metadata_tombstone_index_integration_test.go |
TestMavenMetadataTombstoneIndex_ParentShape |
maven_metadata_tombstone_index_integration_test.go |
TestMavenPackageIDIndex_IndexesExistWithKeysAndPredicates |
maven_package_id_index_schema_integration_test.go |
TestMavenRemoteFilesSchema_NonUniqueIndexShapes |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesSchema_PartialUniqueIndexShapes |
maven_remote_files_schema_integration_test.go |
TestMavenRemotePackagesSchema_FKCoverageIndexNonPartial |
maven_remote_packages_schema_integration_test.go |
TestMavenRemotePackagesSchema_PartialUniqueIndexShape |
maven_remote_packages_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_NsKeyIndex |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_UniqueRepositoryIDIndex |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteVersionsSchema_NonUniqueIndexShapes |
maven_remote_versions_schema_integration_test.go |
TestMavenRemoteVersionsSchema_PartialUniqueIndexShape |
maven_remote_versions_schema_integration_test.go |
TestMavenSchema_CompositePrimaryKeysShape |
maven_schema_integration_test.go |
TestMavenSchema_VersionsSizeOrderedIndexShape |
maven_schema_integration_test.go |
TestMavenVirtualRepositoriesSchema_NoNonUniqueIndexes |
maven_virtual_repositories_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesSchema_UniqueRepositoryIndexShape |
maven_virtual_repositories_schema_integration_test.go |
TestNamespaceEncryptionKeysSchema_Columns |
namespace_encryption_keys_schema_integration_test.go |
TestNamespaceEncryptionKeysSchema_PartialTombstoneIndex |
namespace_encryption_keys_schema_integration_test.go |
TestNamespaceEncryptionKeysSchema_TombstoneStateChecks |
namespace_encryption_keys_schema_integration_test.go |
TestNamespaceStatisticsSchema_LastReconciledAtIndex |
namespace_statistics_schema_integration_test.go |
TestNamespaceStatisticsSchema_NoSeparateUniqueIndex |
namespace_statistics_schema_integration_test.go |
TestNamespacesSchema_AnchorUniqueIndexPartialOnPurged |
namespaces_lifecycle_schema_integration_test.go |
TestNamespacesSchema_SlugUniqueIndexStaysTotal |
namespaces_lifecycle_schema_integration_test.go |
TestNpmFilesSchema_VersionLookupIndexExistsNonPartial |
npm_files_version_index_schema_integration_test.go |
TestNpmPackagesSchema_TombstonedNameIndexExistsPartial |
npm_packages_tombstoned_name_index_schema_integration_test.go |
TestNPMRemoteSchema_PrimaryKeys |
npm_remote_schema_integration_test.go |
TestNPMRemoteSchema_SecondaryIndexesExist |
npm_remote_schema_integration_test.go |
TestNPMRemoteCacheSchema_MetadataUniqueIndexNonPartial |
npm_remote_schema_step2_integration_test.go |
TestNPMRemoteCacheSchema_PrimaryKeys |
npm_remote_schema_step2_integration_test.go |
TestNPMRemoteCacheSchema_SecondaryIndexesExist |
npm_remote_schema_step2_integration_test.go |
TestNPMSchema_FilesAttachmentIndexExists |
npm_schema_integration_test.go |
TestNPMSchema_FilesTagsMetadataPrimaryKeys |
npm_schema_integration_test.go |
TestNPMSchema_PrimaryKeys |
npm_schema_integration_test.go |
TestNPMSchema_ReverseLookupBlobSha256IndexExists |
npm_schema_integration_test.go |
TestNPMSchema_TagsVersionIndexExists |
npm_schema_integration_test.go |
TestNpmVersionsPackageIDIndex_IndexExistsWithKeysAndPredicate |
npm_versions_package_id_index_schema_integration_test.go |
TestNpmVersionsSizeBytes_SizeIndexExistsDescPartial |
npm_versions_size_bytes_schema_integration_test.go |
TestNPMVirtualRepositoriesSchema_NoNonUniqueIndexes |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesSchema_UniqueRepositoryIndexShape |
npm_virtual_repositories_schema_integration_test.go |
TestNPMVirtualUpstreamsSchema_ReverseLookupIndexShape |
npm_virtual_repository_upstreams_schema_integration_test.go |
TestNPMVirtualUpstreamsSchema_UniqueIndexShapes |
npm_virtual_repository_upstreams_schema_integration_test.go |
TestNPMVirtualRulesSchema_NoUniqueIndexes |
npm_virtual_upstream_rules_schema_integration_test.go |
TestNPMVirtualRulesSchema_UpstreamIndexShape |
npm_virtual_upstream_rules_schema_integration_test.go |
TestContainerSchemaPrimaryKeys |
oci_container_schema_integration_test.go |
TestRemoteCacheKeysetDiscoverySchema_IndexesExistWithKeysAndPredicates |
remote_cache_keyset_discovery_schema_integration_test.go |
TestRepositoriesSchema_KeysetIndexesExistWithTiebreaker |
repositories_keyset_schema_integration_test.go |
TestBlobStorageBlobs_UniqueNamespaceSHA256Index |
storage_layer_schema_integration_test.go |
TestUploadSessions_ThreeNamedIndexes |
storage_layer_schema_integration_test.go |
TestTombstoneDiscoverySchema_IndexesExistWithKeysAndPredicate |
tombstone_discovery_schema_integration_test.go |
Column presence, type, nullability or default. All in `structure.sql`. (65 tests)
| Test | File |
|---|---|
TestBlobStorageAttachments_Columns |
blob_storage_attachments_schema_integration_test.go |
TestBlobStorageAttachments_PrimaryKey |
blob_storage_attachments_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_Columns |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_PrimaryKeyCoversSize |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestContainerManifestsPlatform_ColumnsExistNullableAndTextTyped |
container_manifests_platform_schema_integration_test.go |
TestContainerRemoteBlobsSchema_Columns |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteBlobsSchema_NoLastDownloadedAtColumn |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteBlobsSchema_NoMediaTypeColumn |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteBlobsSchema_NoSizeColumn |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteImagesSchema_Columns |
container_remote_images_schema_integration_test.go |
TestContainerRemoteImagesSchema_NoCreatedAtColumn |
container_remote_images_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_Columns |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_NoSoftDeleteColumn |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_NoTimestampColumns |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestsSchema_Columns |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteManifestsSchema_NoReferrerColumns |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_ColumnDefaults |
container_remote_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_Columns |
container_remote_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_NoMetadataCacheValidityColumn |
container_remote_schema_integration_test.go |
TestContainerRemoteTagsSchema_Columns |
container_remote_tags_schema_integration_test.go |
TestContainerRemoteTagsSchema_NoLastDownloadedAtColumn |
container_remote_tags_schema_integration_test.go |
TestContainerRemoteTagsSchema_NoRowTimestampColumns |
container_remote_tags_schema_integration_test.go |
TestContainerRemoteTagsSchema_NoSoftDeleteColumn |
container_remote_tags_schema_integration_test.go |
TestArtifactTombstoneSchema_MarkerColumnIsNullableWithNoDefault |
container_tombstone_schema_integration_test.go |
TestDeleteAllCreatedAt_ColumnsAreNotNullAndDefaultToNow |
container_tombstone_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_Columns |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_NoParentOwnedColumns |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_NoSoftDeleteColumn |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_NoTimestampColumns |
container_virtual_repositories_schema_integration_test.go |
TestMavenRemoteFilesSchema_Columns |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesSchema_PrimaryKey |
maven_remote_files_schema_integration_test.go |
TestMavenRemotePackagesSchema_Columns |
maven_remote_packages_schema_integration_test.go |
TestMavenRemotePackagesSchema_PrimaryKey |
maven_remote_packages_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_Columns |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_PrimaryKey |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteVersionsSchema_Columns |
maven_remote_versions_schema_integration_test.go |
TestMavenRemoteVersionsSchema_PrimaryKey |
maven_remote_versions_schema_integration_test.go |
TestMavenSchema_VersionsSizeBytesColumnShape |
maven_schema_integration_test.go |
TestMavenVirtualRepositoriesSchema_NoParentOwnedColumns |
maven_virtual_repositories_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesSchema_NoSoftDeleteColumn |
maven_virtual_repositories_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesSchema_NoTimestampColumns |
maven_virtual_repositories_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesSchema_Columns |
maven_virtual_repositories_schema_integration_test.go |
TestNamespaceStatisticsSchema_ColumnDefaults |
namespace_statistics_schema_integration_test.go |
TestNamespaceStatisticsSchema_Columns |
namespace_statistics_schema_integration_test.go |
TestNamespaceStatisticsSchema_PrimaryKeyIsNamespaceID |
namespace_statistics_schema_integration_test.go |
TestNamespacesSchema_LifecycleColumns |
namespaces_lifecycle_schema_integration_test.go |
TestNpmPackagesPackumentRebuildToken_ColumnExistsNullableAndUUIDTyped |
npm_packages_packument_rebuild_token_schema_integration_test.go |
TestNPMRemoteSchema_Columns |
npm_remote_schema_integration_test.go |
TestNPMRemoteCacheSchema_Columns |
npm_remote_schema_step2_integration_test.go |
TestNPMSchema_Columns |
npm_schema_integration_test.go |
TestNPMSchema_FilesTagsMetadataColumns |
npm_schema_integration_test.go |
TestNpmVersionsSizeBytes_ColumnExistsBigintNotNullDefaultZero |
npm_versions_size_bytes_schema_integration_test.go |
TestNPMVirtualRepositoriesSchema_NoParentOwnedColumns |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesSchema_NoSoftDeleteColumn |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesSchema_NoTimestampColumns |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesSchema_Columns |
npm_virtual_repositories_schema_integration_test.go |
TestNPMVirtualUpstreamsSchema_AbsentColumns |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsSchema_Columns |
npm_virtual_repository_upstreams_schema_integration_test.go |
TestNPMVirtualRulesSchema_AbsentColumns |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
TestNPMVirtualRulesSchema_Columns |
npm_virtual_upstream_rules_schema_integration_test.go |
TestBlobStorageBlobs_Columns |
storage_layer_schema_integration_test.go |
TestBlobStorageBlobs_PrimaryKey |
storage_layer_schema_integration_test.go |
TestUploadSessions_Columns |
storage_layer_schema_integration_test.go |
TestUploadSessions_PrimaryKey |
storage_layer_schema_integration_test.go |
TestTombstoneDiscoverySchema_MarkerColumnsKeepTheirShape |
tombstone_discovery_schema_integration_test.go |
Partition count, key or routing. `structure.sql` records the partition key. (58 tests)
| Test | File |
|---|---|
TestBlobStorageAttachments_Partitions |
blob_storage_attachments_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_PartitionBounds |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_PartitionRoutingByHashOfNamespaceID |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_PartitionedTableShape |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestContainerRemoteBlobsSchema_PartitionRoutingByHashOfNamespaceID |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteBlobsSchema_PartitionedTableShape |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteImagesSchema_PartitionRoutingByHashOfNamespaceID |
container_remote_images_schema_integration_test.go |
TestContainerRemoteImagesSchema_PartitionedTableShape |
container_remote_images_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_PartitionRoutingByHashOfNamespaceID |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_PartitionedTableShape |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestsSchema_PartitionRoutingByHashOfNamespaceID |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteManifestsSchema_PartitionedTableShape |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_PartitionRoutingByHashOfNamespaceID |
container_remote_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_PartitionedTableShape |
container_remote_schema_integration_test.go |
TestContainerRemoteTagsSchema_PartitionRoutingByHashOfNamespaceID |
container_remote_tags_schema_integration_test.go |
TestContainerRemoteTagsSchema_PartitionedTableShape |
container_remote_tags_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_PartitionRoutingByHashOfNamespaceID |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_PartitionedTableShape |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualUpstreamsSchema_PartitionedTableAndColumns |
container_virtual_repository_upstreams_schema_integration_test.go |
TestContainerVirtualRulesSchema_PartitionRoutingByHashOfNamespaceID |
container_virtual_upstream_rules_schema_integration_test.go |
TestContainerVirtualRulesSchema_PartitionedTableAndColumns |
container_virtual_upstream_rules_schema_integration_test.go |
TestMavenRemoteFilesSchema_PartitionRoutingByHashOfNamespaceID |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesSchema_TableAndPartitionsExistPostUp |
maven_remote_files_schema_integration_test.go |
TestMavenRemotePackagesSchema_PartitionRoutingByHashOfNamespaceID |
maven_remote_packages_schema_integration_test.go |
TestMavenRemotePackagesSchema_TableAndPartitionsExistPostUp |
maven_remote_packages_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_PartitionRoutingByHashOfNamespaceID |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_TableAndPartitionsExistPostUp |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteVersionsSchema_PartitionRoutingByHashOfNamespaceID |
maven_remote_versions_schema_integration_test.go |
TestMavenRemoteVersionsSchema_TableAndPartitionsExistPostUp |
maven_remote_versions_schema_integration_test.go |
TestMavenSchema_AllFourTablesAndPartitionsExistPostUp |
maven_schema_integration_test.go |
TestMavenSchema_PartitionRoutingByNamespaceHash |
maven_schema_integration_test.go |
TestMavenSchema_VersionsSizeBytesOnAllPartitions |
maven_schema_integration_test.go |
TestMavenVirtualRepositoriesSchema_PartitionRoutingByHashOfNamespaceID |
maven_virtual_repositories_schema_integration_test.go |
TestMavenVirtualRepositoriesSchema_PartitionedTableShape |
maven_virtual_repositories_schema_integration_test.go |
TestNamespaceStatisticsSchema_IsNotPartitioned |
namespace_statistics_schema_integration_test.go |
TestNPMRemoteSchema_AllTablesPartitionByHashOfNamespaceID |
npm_remote_schema_integration_test.go |
TestNPMRemoteSchema_AllThreeTablesAndPartitionsExistPostUp |
npm_remote_schema_integration_test.go |
TestNPMRemoteSchema_PartitionRoutingByHashOfNamespaceID |
npm_remote_schema_integration_test.go |
TestNPMRemoteCacheSchema_PartitionByHashOfNamespaceID |
npm_remote_schema_step2_integration_test.go |
TestNPMRemoteCacheSchema_PartitionRoutingByHashOfNamespaceID |
npm_remote_schema_step2_integration_test.go |
TestNPMRemoteCacheSchema_TablesAndPartitionsExistPostUp |
npm_remote_schema_step2_integration_test.go |
TestNPMSchema_AllTablesPartitionByHashOfNamespaceID |
npm_schema_integration_test.go |
TestNPMSchema_AllThreeTablesAndPartitionsExistPostUp |
npm_schema_integration_test.go |
TestNPMSchema_FilesTagsMetadataPartitionByHashOfNamespaceID |
npm_schema_integration_test.go |
TestNPMSchema_PartitionRoutingByHashOfNamespaceID |
npm_schema_integration_test.go |
TestNPMVirtualRepositoriesSchema_PartitionRoutingByHashOfNamespaceID |
npm_virtual_repositories_schema_integration_test.go |
TestNPMVirtualRepositoriesSchema_PartitionedTableShape |
npm_virtual_repositories_schema_integration_test.go |
TestNPMVirtualUpstreamsSchema_PartitionRoutingByHashOfNamespaceID |
npm_virtual_repository_upstreams_schema_integration_test.go |
TestNPMVirtualUpstreamsSchema_PartitionedTableShape |
npm_virtual_repository_upstreams_schema_integration_test.go |
TestNPMVirtualRulesSchema_PartitionRoutingByHashOfNamespaceID |
npm_virtual_upstream_rules_schema_integration_test.go |
TestNPMVirtualRulesSchema_PartitionedTableShape |
npm_virtual_upstream_rules_schema_integration_test.go |
TestOCISchema_AllSixTablesAndPartitionsExistPostUp |
oci_container_schema_integration_test.go |
TestPartitionRouting_AllContainerTablesPartitionByHashOfNamespaceID |
oci_container_schema_integration_test.go |
TestPartitionRouting_RootAndMidTierRoutesToExpectedHashPartition |
oci_container_schema_integration_test.go |
TestBlobStorageBlobs_PartitionedByHashOfSHA256 |
storage_layer_schema_integration_test.go |
TestBlobStorageBlobs_Partitions |
storage_layer_schema_integration_test.go |
TestUploadSessions_PartitionedByHashOfNamespaceID |
storage_layer_schema_integration_test.go |
TestUploadSessions_Partitions |
storage_layer_schema_integration_test.go |
Foreign-key columns, referenced table or delete action. All in `structure.sql`. (45 tests)
| Test | File |
|---|---|
TestBlobStorageAttachments_NamespacesFK |
blob_storage_attachments_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_BlockingReferencesStayNoAction |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_NamespacesForeignKey |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestCMRImageCompositeFK_BothKeysCarryTheirDefinitions |
container_manifest_relationships_image_composite_fk_schema_integration_test.go |
TestCMRImageCompositeFK_EveryKeyPointsAtItsDeclaredParent |
container_manifest_relationships_image_composite_fk_schema_integration_test.go |
TestCMRImageCompositeFK_ImageAndNamespaceKeysSurvive |
container_manifest_relationships_image_composite_fk_schema_integration_test.go |
TestCMRImageCompositeFK_NarrowManifestKeysAreGone |
container_manifest_relationships_image_composite_fk_schema_integration_test.go |
TestContainerRemoteBlobsConstraints_AllFKsAreMatchSimple |
container_remote_blobs_constraints_integration_test.go |
TestContainerRemoteBlobsConstraints_AllFKsAreNoAction |
container_remote_blobs_constraints_integration_test.go |
TestContainerRemoteBlobsConstraints_BlobStorageBlobsFKPresent |
container_remote_blobs_constraints_integration_test.go |
TestContainerRemoteBlobsConstraints_EveryFKPointsAtItsDeclaredParent |
container_remote_blobs_constraints_integration_test.go |
TestContainerRemoteConstraints_NamespaceFKIsNoAction |
container_remote_constraints_integration_test.go |
TestContainerRemoteConstraints_NsKeyFKIsCompositeRestrictAndValidated |
container_remote_constraints_integration_test.go |
TestContainerRemoteImagesConstraints_AllFKsAreNoAction |
container_remote_images_constraints_integration_test.go |
TestContainerRemoteManifestRelationshipsConstraints_AllFKsAreMatchSimple |
container_remote_manifest_relationships_constraints_integration_test.go |
TestContainerRemoteManifestRelationshipsConstraints_AllFKsAreNoAction |
container_remote_manifest_relationships_constraints_integration_test.go |
TestContainerRemoteManifestRelationshipsConstraints_EveryFKPointsAtItsDeclaredParent |
container_remote_manifest_relationships_constraints_integration_test.go |
TestContainerRemoteManifestsConstraints_AllFKsAreNoAction |
container_remote_manifests_constraints_integration_test.go |
TestContainerRemoteManifestsConstraints_BlobStorageBlobsFKPresent |
container_remote_manifests_constraints_integration_test.go |
TestContainerRemoteTagsConstraints_AllFKsAreMatchSimple |
container_remote_tags_constraints_integration_test.go |
TestContainerRemoteTagsConstraints_AllFKsAreNoAction |
container_remote_tags_constraints_integration_test.go |
TestContainerRemoteTagsConstraints_EveryFKPointsAtItsDeclaredParent |
container_remote_tags_constraints_integration_test.go |
TestContainerVirtualRepositoriesConstraints_ForeignKeyDeleteActions |
container_virtual_repositories_schema_integration_test.go |
TestMavenRemoteFilesConstraints_AllFKsOnDeleteNoAction |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesConstraints_BlobStorageBlobsFKPresent |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesConstraints_NamespaceFKIsNoAction |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesConstraints_VersionFKIsNoAction |
maven_remote_files_schema_integration_test.go |
TestMavenRemotePackagesConstraints_NamespaceFKIsNoAction |
maven_remote_packages_schema_integration_test.go |
TestMavenRemoteConstraints_NamespaceFKIsNoAction |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_NsKeyFKShape |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteVersionsConstraints_NamespaceFKIsNoAction |
maven_remote_versions_schema_integration_test.go |
TestMavenConstraints_FilesCompositeVersionPackageFKShape |
maven_schema_integration_test.go |
TestMavenSchema_FKChainsToParents |
maven_schema_integration_test.go |
TestMavenSchema_FilesDirectBlobFKDeferred |
maven_schema_integration_test.go |
TestMavenVirtualRepositoriesConstraints_ForeignKeyDeleteActions |
maven_virtual_repositories_rowshapes_integration_test.go |
TestNPMRemoteConstraints_PackagesNamespaceFKPresent |
npm_remote_schema_integration_test.go |
TestNPMRemoteConstraints_VersionsNamespaceFKPresent |
npm_remote_schema_integration_test.go |
TestNPMRemoteSchema_EncCredentialsFKShape |
npm_remote_schema_integration_test.go |
TestNPMRemoteCacheConstraints_ActiveBlobStorageBlobsFKPresent |
npm_remote_schema_step2_integration_test.go |
TestNPMRemoteCacheConstraints_AllFKsOnDeleteNoAction |
npm_remote_schema_step2_integration_test.go |
TestNPMRemoteCacheConstraints_NamespaceFKsPresent |
npm_remote_schema_step2_integration_test.go |
TestNPMConstraints_DeferredBlobStorageBlobsFKAbsent |
npm_schema_integration_test.go |
TestNPMVirtualRepositoriesConstraints_ForeignKeyDeleteActions |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsConstraints_ForeignKeyDeleteActions |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestNPMVirtualRulesConstraints_ForeignKeyDeleteActions |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
Sweeps a parent row's enumerated values or lifecycle state. No consumer depends on the admit. (38 tests)
| Test | File |
|---|---|
TestContainerRemoteBlobsSchema_AcceptsEitherContainerParentFormat |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteImagesSchema_AcceptsEitherContainerParentFormat |
container_remote_images_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_AcceptsEitherContainerParentFormat |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestsSchema_AcceptsEitherContainerParentFormat |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_AcceptsEitherContainerParentFormat |
container_remote_schema_integration_test.go |
TestContainerRemoteTagsSchema_AcceptsEitherContainerParentFormat |
container_remote_tags_schema_integration_test.go |
TestContainerVirtualRepositoriesConstraints_AcceptsNamespaceOutOfService |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesConstraints_AcceptsParentAtEveryFormat |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesConstraints_AcceptsParentAtEveryKind |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesConstraints_AcceptsParentAtEveryVisibility |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesConstraints_AcceptsSoftDeletedParent |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRulesConstraints_AcceptsNamespaceOutOfService |
container_virtual_upstream_rules_rowshapes_integration_test.go |
TestContainerVirtualRulesConstraints_AcceptsRulesOnUpstreamAtEveryFormat |
container_virtual_upstream_rules_rowshapes_integration_test.go |
TestContainerVirtualRulesConstraints_AcceptsRulesOnUpstreamAtEveryKind |
container_virtual_upstream_rules_rowshapes_integration_test.go |
TestContainerVirtualRulesConstraints_AcceptsRulesOnUpstreamAtEveryVisibility |
container_virtual_upstream_rules_rowshapes_integration_test.go |
TestContainerVirtualRulesConstraints_AcceptsSoftDeletedUpstreamRepository |
container_virtual_upstream_rules_rowshapes_integration_test.go |
TestContainerVirtualRulesConstraints_AcceptsSoftDeletedVirtualRepository |
container_virtual_upstream_rules_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesConstraints_AcceptsNamespaceOutOfService |
maven_virtual_repositories_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesConstraints_AcceptsParentAtEveryFormat |
maven_virtual_repositories_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesConstraints_AcceptsParentAtEveryKind |
maven_virtual_repositories_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesConstraints_AcceptsParentAtEveryVisibility |
maven_virtual_repositories_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesConstraints_AcceptsSoftDeletedParent |
maven_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesConstraints_AcceptsNamespaceOutOfService |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesConstraints_AcceptsParentAtEveryFormat |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesConstraints_AcceptsParentAtEveryKind |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesConstraints_AcceptsParentAtEveryVisibility |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesConstraints_AcceptsSoftDeletedParent |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsConstraints_AcceptsNamespaceOutOfService |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsConstraints_AcceptsSoftDeletedVirtualRepository |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsConstraints_AcceptsUpstreamAtEveryFormat |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsConstraints_AcceptsUpstreamAtEveryKind |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsConstraints_AcceptsUpstreamAtEveryVisibility |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestNPMVirtualRulesConstraints_AcceptsNamespaceOutOfService |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
TestNPMVirtualRulesConstraints_AcceptsRulesOnUpstreamAtEveryFormat |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
TestNPMVirtualRulesConstraints_AcceptsRulesOnUpstreamAtEveryKind |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
TestNPMVirtualRulesConstraints_AcceptsRulesOnUpstreamAtEveryVisibility |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
TestNPMVirtualRulesConstraints_AcceptsSoftDeletedUpstreamRepository |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
TestNPMVirtualRulesConstraints_AcceptsSoftDeletedVirtualRepository |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
Per-partition catalog clone count. (33 tests)
| Test | File |
|---|---|
TestArtifactReadKeysetSchema_EveryPartitionCarriesTheIndex |
artifact_read_keyset_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_EveryPartitionInheritsTheParentIndexes |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestContainerBlobSha256Index_EveryPartitionCarriesTheIndex |
container_blob_sha256_index_schema_integration_test.go |
TestContainerBulkScopeIndex_EveryPartitionCarriesAValidChild |
container_bulk_scope_index_schema_integration_test.go |
TestContainerImagesPartialUnique_EveryPartitionCarriesAValidChild |
container_images_partial_unique_schema_integration_test.go |
TestCMRChildParentIndex_EveryPartitionCarriesTheIndex |
container_manifest_relationships_child_parent_index_schema_integration_test.go |
TestCMRImageCompositeFK_EveryPartitionCarriesItByName |
container_manifest_relationships_image_composite_fk_schema_integration_test.go |
TestCMRImageCompositeFK_OrphanSweepSeesAnUnattachedChild |
container_manifest_relationships_image_composite_fk_schema_integration_test.go |
TestContainerRemoteBlobsSchema_EveryPartitionInheritsTheParentIndexes |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteImagesSchema_EveryPartitionInheritsTheParentIndexes |
container_remote_images_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_EveryPartitionInheritsTheParentIndexes |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestsSchema_EveryPartitionInheritsTheParentIndexes |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_CredentialUnitReachesEveryPartition |
container_remote_schema_integration_test.go |
TestContainerRemoteTagsSchema_EveryPartitionInheritsTheParentIndexes |
container_remote_tags_schema_integration_test.go |
TestContainerTagsManifestIDNameIndex_EveryPartitionCarriesItByName |
container_tags_manifest_id_name_index_schema_integration_test.go |
TestArtifactTombstoneSchema_EveryPartitionCarriesADiscoveryChild |
container_tombstone_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_EveryPartitionInheritsTheParentIndexes |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_PartitionIndexNamesAreServerGenerated |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualUpstreamsSchema_PositionUniqueIsDeferredOnEveryLeaf |
container_virtual_repository_upstreams_schema_integration_test.go |
TestIDUUIDVersionCheck_RecursesToEveryPartition |
id_uuid_version_schema_integration_test.go |
TestMavenMetadataTombstoneIndex_EveryPartitionCarriesThePinnedChild |
maven_metadata_tombstone_index_integration_test.go |
TestMavenPackageIDIndex_EveryPartitionCarriesTheIndex |
maven_package_id_index_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_EncCredentialsUnitReachesEveryPartition |
maven_remote_repositories_schema_integration_test.go |
TestMavenVirtualRepositoriesSchema_EveryPartitionInheritsTheParentIndexes |
maven_virtual_repositories_schema_integration_test.go |
TestNPMRemoteSchema_EncCredentialsIndexOnEveryPartition |
npm_remote_schema_integration_test.go |
TestNPMRemoteSchema_EncCredentialsUnitReachesEveryPartition |
npm_remote_schema_integration_test.go |
TestNpmVersionsPackageIDIndex_EveryPartitionCarriesTheIndex |
npm_versions_package_id_index_schema_integration_test.go |
TestNPMVirtualRepositoriesSchema_EveryPartitionInheritsTheParentIndexes |
npm_virtual_repositories_schema_integration_test.go |
TestNPMVirtualUpstreamsSchema_EveryPartitionInheritsTheParentIndexes |
npm_virtual_repository_upstreams_schema_integration_test.go |
TestNPMVirtualRulesSchema_EveryPartitionInheritsTheParentIndexes |
npm_virtual_upstream_rules_schema_integration_test.go |
TestRemoteCacheKeysetDiscoverySchema_EveryPartitionCarriesTheIndex |
remote_cache_keyset_discovery_schema_integration_test.go |
TestRepositoriesRemotesIndex_EveryPartitionCarriesAValidChild |
repositories_keyset_schema_integration_test.go |
TestTombstoneDiscoverySchema_EveryPartitionCarriesAChild |
tombstone_discovery_schema_integration_test.go |
Constraint presence, expression or deferrability as the catalog renders it. (22 tests)
| Test | File |
|---|---|
TestBlobStorageAttachments_SHA256LengthCheckExists |
blob_storage_attachments_schema_integration_test.go |
TestContainerManifestsPlatform_LengthCHECKsPresentOnParent |
container_manifests_platform_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsConstraints_CarriesOnlyTheIDVersionCheck |
container_remote_manifest_relationships_constraints_integration_test.go |
TestContainerVirtualRepositoriesSchema_IDVersionCheckShape |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_OneCheckConstraint |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRulesSchema_CheckShapes |
container_virtual_upstream_rules_schema_integration_test.go |
TestContainerVirtualRulesSchema_NothingIsDeferrable |
container_virtual_upstream_rules_schema_integration_test.go |
TestIDUUIDVersionCheck_LeavesTheExcludedTablesAlone |
id_uuid_version_schema_integration_test.go |
TestMavenRemoteConstraints_CredentialColumnsCarryNoDBLevelValidation |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_EncryptedCredentialsCheckIsValidated |
maven_remote_repositories_schema_integration_test.go |
TestMavenVirtualRepositoriesSchema_CarriesOnlyTheIDVersionCheck |
maven_virtual_repositories_rowshapes_integration_test.go |
TestNPMRemoteSchema_EncCredentialsCheckIsValidated |
npm_remote_schema_integration_test.go |
TestNPMVirtualRepositoriesSchema_CarriesOnlyTheIDVersionCheck |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsSchema_CarriesOnlyPositionAndIDVersionChecks |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsSchema_PositionCheckShape |
npm_virtual_repository_upstreams_schema_integration_test.go |
TestNPMVirtualUpstreamsSchema_PositionUniqueIsDeferrable |
npm_virtual_repository_upstreams_schema_integration_test.go |
TestNPMVirtualRulesSchema_NoOtherCheckConstraints |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
TestNPMVirtualRulesSchema_CheckShapes |
npm_virtual_upstream_rules_schema_integration_test.go |
TestNPMVirtualRulesSchema_NothingIsDeferrable |
npm_virtual_upstream_rules_schema_integration_test.go |
TestBlobStorageBlobs_MetadataSHA1LengthCheckExists |
storage_layer_schema_integration_test.go |
TestUploadSessions_SizeBytesNonNegativeCheck |
storage_layer_schema_integration_test.go |
TestTombstoneDiscoverySchema_NoCheckConstraintMentionsTheMarker |
tombstone_discovery_schema_integration_test.go |
Identifier length. Checked when the migration is written and stated in the MR, not by a test. (20 tests)
| Test | File |
|---|---|
TestContainerBlobSha256Index_IndexNamesFitIdentifierLimit |
container_blob_sha256_index_schema_integration_test.go |
TestCMRChildParentIndex_NamesFitIdentifierLimit |
container_manifest_relationships_child_parent_index_schema_integration_test.go |
TestCMRImageCompositeFK_NamesFitIdentifierLimit |
container_manifest_relationships_image_composite_fk_schema_integration_test.go |
TestContainerRemoteBlobsSchema_IndexNamesFitIdentifierLimit |
container_remote_blobs_schema_integration_test.go |
TestContainerRemoteImagesSchema_IndexNamesFitIdentifierLimit |
container_remote_images_schema_integration_test.go |
TestContainerRemoteManifestRelationshipsSchema_IndexNamesFitIdentifierLimit |
container_remote_manifest_relationships_schema_integration_test.go |
TestContainerRemoteManifestsSchema_IndexNamesFitIdentifierLimit |
container_remote_manifests_schema_integration_test.go |
TestContainerRemoteRepositoriesSchema_CredentialIdentifierLengths |
container_remote_schema_integration_test.go |
TestContainerRemoteTagsSchema_IndexNamesFitIdentifierLimit |
container_remote_tags_schema_integration_test.go |
TestContainerTagsManifestIDNameIndex_NamesFitIdentifierLimit |
container_tags_manifest_id_name_index_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_ConstraintNamesFitIdentifierLimit |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualUpstreamsSchema_ConstraintNamesFitIdentifierLimit |
container_virtual_repository_upstreams_schema_integration_test.go |
TestContainerVirtualRulesSchema_ConstraintNamesFitIdentifierLimit |
container_virtual_upstream_rules_schema_integration_test.go |
TestMavenPackageIDIndex_IndexNamesFitIdentifierLimit |
maven_package_id_index_schema_integration_test.go |
TestMavenVirtualRepositoriesSchema_ConstraintNamesFitIdentifierLimit |
maven_virtual_repositories_schema_integration_test.go |
TestNpmVersionsPackageIDIndex_IndexNamesFitIdentifierLimit |
npm_versions_package_id_index_schema_integration_test.go |
TestNPMVirtualRepositoriesSchema_ConstraintNamesFitIdentifierLimit |
npm_virtual_repositories_schema_integration_test.go |
TestNPMVirtualUpstreamsSchema_ConstraintNamesFitIdentifierLimit |
npm_virtual_repository_upstreams_schema_integration_test.go |
TestNPMVirtualRulesSchema_ConstraintNamesFitIdentifierLimit |
npm_virtual_upstream_rules_schema_integration_test.go |
TestRemoteCacheKeysetDiscoverySchema_IndexNamesFitIdentifierLimit |
remote_cache_keyset_discovery_schema_integration_test.go |
Runs the migration down to read the catalog back. `TestMigrations_UpDownUp` is the one sanctioned runtime walk. (19 tests)
| Test | File |
|---|---|
TestArtifactReadKeysetSchema_IndexesAbsentAfterDown |
artifact_read_keyset_schema_integration_test.go |
TestContainerBlobSha256Index_IndexesAbsentAfterDown |
container_blob_sha256_index_schema_integration_test.go |
TestContainerBlobSha256Index_RerunRebuildsAnUnattachedChild |
container_blob_sha256_index_schema_integration_test.go |
TestContainerBulkScopeIndex_AbsentAfterDown |
container_bulk_scope_index_schema_integration_test.go |
TestContainerImagesPartialUnique_TotalIndexRestoredAfterDown |
container_images_partial_unique_schema_integration_test.go |
TestCMRChildParentIndex_SubsumedIndexIsGone |
container_manifest_relationships_child_parent_index_schema_integration_test.go |
TestCMRImageCompositeFK_RerunRebuildsAnUnattachedChild |
container_manifest_relationships_image_composite_fk_schema_integration_test.go |
TestContainerManifestsPlatform_ColumnsAbsentAfterDown |
container_manifests_platform_schema_integration_test.go |
TestContainerRemotePlaintextDrop_DownRestoresTheGuardValidated |
container_remote_plaintext_drop_integration_test.go |
TestContainerTagsManifestIDNameIndex_OrphanSweepSeesAnUnattachedChild |
container_tags_manifest_id_name_index_schema_integration_test.go |
TestContainerTagsManifestIDNameIndex_SubsumedIndexIsGone |
container_tags_manifest_id_name_index_schema_integration_test.go |
TestArtifactTombstoneSchema_ObjectsAbsentAfterDown |
container_tombstone_schema_integration_test.go |
TestMavenMetadataTombstoneIndex_RerunRebuildsAnUnattachedChild |
maven_metadata_tombstone_index_integration_test.go |
TestMavenPackageIDIndex_IndexesAbsentAfterDown |
maven_package_id_index_schema_integration_test.go |
TestMavenPackageIDIndex_RerunRebuildsAnUnattachedChild |
maven_package_id_index_schema_integration_test.go |
TestNamespacesSchema_OrganizationIDDropped |
namespaces_organization_id_schema_integration_test.go |
TestNpmVersionsPackageIDIndex_IndexAbsentAfterDown |
npm_versions_package_id_index_schema_integration_test.go |
TestNpmVersionsPackageIDIndex_RerunRebuildsAnUnattachedChild |
npm_versions_package_id_index_schema_integration_test.go |
TestRemoteCacheKeysetDiscoverySchema_IndexesAbsentAfterDown |
remote_cache_keyset_discovery_schema_integration_test.go |
Catalog shape read back after the migration. `structure.sql` records it. (10 tests)
| Test | File |
|---|---|
TestContainerRemoteRepositoriesSchema_InterimPlaintextCredentialsAreDropped |
container_remote_schema_integration_test.go |
TestMavenRemoteFilesSchema_PartitionsByHashOfNamespaceID |
maven_remote_files_schema_integration_test.go |
TestMavenRemotePackagesSchema_PartitionsByHashOfNamespaceID |
maven_remote_packages_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_InterimPlaintextCredentialsAreDropped |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteRepositoriesSchema_PartitionsByHashOfNamespaceID |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteVersionsSchema_PartitionsByHashOfNamespaceID |
maven_remote_versions_schema_integration_test.go |
TestMavenSchema_FilesMD5NullableButOtherDigestsNOTNULL |
maven_schema_integration_test.go |
TestMavenSchema_PartitionsAreSubpartitionedByHash |
maven_schema_integration_test.go |
TestMavenSchema_VersionsSizeBytesDefaultsToZero |
maven_schema_integration_test.go |
TestNPMSchema_FilesTagsMetadataTablesExistPostUp |
npm_schema_integration_test.go |
Sequence ownership and column default. (7 tests)
| Test | File |
|---|---|
TestBlobStorageAttachments_IDColumnNotGeneratedIdentity |
blob_storage_attachments_schema_integration_test.go |
TestBlobStorageAttachments_IDDefaultResolvesToNextval |
blob_storage_attachments_schema_integration_test.go |
TestBlobStorageAttachments_SequenceExists |
blob_storage_attachments_schema_integration_test.go |
TestBlobStorageAttachments_SequenceOwnedByIDColumn |
blob_storage_attachments_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_NoSurrogateKeyOrSequence |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestBlobStorageBlobs_SequenceShape |
storage_layer_schema_integration_test.go |
TestUploadSessions_SequenceShape |
storage_layer_schema_integration_test.go |
Trigger presence and timing as the catalog renders it. (7 tests)
| Test | File |
|---|---|
TestBlobStorageBlobsByNamespaceSchema_MaintenanceTriggers |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestContainerVirtualRepositoriesSchema_NoTriggers |
container_virtual_repositories_schema_integration_test.go |
TestContainerVirtualRulesSchema_NoTriggers |
container_virtual_upstream_rules_rowshapes_integration_test.go |
TestMavenVirtualRepositoriesSchema_NoTriggers |
maven_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualRepositoriesSchema_NoTriggers |
npm_virtual_repositories_rowshapes_integration_test.go |
TestNPMVirtualUpstreamsSchema_NoTriggers |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestNPMVirtualRulesSchema_NoTriggers |
npm_virtual_upstream_rules_rowshapes_integration_test.go |
Catalog inventory of tables, constraints or triggers. (2 tests)
| Test | File |
|---|---|
TestNPMRemoteSchema_NoTagsTableExists |
npm_remote_schema_integration_test.go |
TestRiverSchema_AppliedByPipeline |
river_schema_integration_test.go |
Trimmed, behaviour kept (49 tests)
Each lost its catalog assertion and kept its rejection, cascade or round-trip.
| Test | File |
|---|---|
TestBlobStorageBlobsByNamespaceSchema_SHA256LengthCheck |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestBlobStorageBlobsByNamespaceSchema_SizeNonNegativeCheck |
blob_storage_blobs_by_namespace_schema_integration_test.go |
TestContainerRemoteConstraints_AuthStatusAuthURLCHECK |
container_remote_constraints_integration_test.go |
TestContainerRemoteConstraints_AuthStatusRangeCHECK |
container_remote_constraints_integration_test.go |
TestContainerRemoteConstraints_AuthURLLengthCHECK |
container_remote_constraints_integration_test.go |
TestContainerRemoteConstraints_CacheValidityHoursCHECK |
container_remote_constraints_integration_test.go |
TestContainerRemoteConstraints_CredentialColumnsCarryNoDBLevelValidation |
container_remote_constraints_integration_test.go |
TestContainerRemoteConstraints_EncryptedCredentialsAllOrNoneCHECK |
container_remote_constraints_integration_test.go |
TestContainerRemoteConstraints_LastHealthStatusRangeCHECK |
container_remote_constraints_integration_test.go |
TestContainerRemoteConstraints_URLLengthCHECK |
container_remote_constraints_integration_test.go |
TestContainerRemoteImagesConstraints_NameLengthCHECK |
container_remote_images_constraints_integration_test.go |
TestContainerRemoteTagsConstraints_NameLengthCHECK |
container_remote_tags_constraints_integration_test.go |
TestContainerRemoteTagsConstraints_UpstreamEtagLengthCHECK |
container_remote_tags_constraints_integration_test.go |
TestContainerRemoteTagsConstraints_UpstreamEtagRejectsControlChars |
container_remote_tags_constraints_integration_test.go |
TestContainerRemoteTagsSchema_FreshnessColumnDefaults |
container_remote_tags_schema_integration_test.go |
TestMavenRemoteFilesConstraints_DigestLengthCHECKs |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesConstraints_FileNameLengthAndNonEmptyCHECKs |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesConstraints_FileNameRejectsTraversal |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesConstraints_UpstreamEtagLengthCHECK |
maven_remote_files_schema_integration_test.go |
TestMavenRemoteFilesConstraints_UpstreamEtagRejectsControlChars |
maven_remote_files_schema_integration_test.go |
TestMavenRemotePackagesConstraints_GroupAndArtifactLengthCHECKs |
maven_remote_packages_schema_integration_test.go |
TestMavenRemotePackagesConstraints_GroupAndArtifactNonEmptyCHECKs |
maven_remote_packages_schema_integration_test.go |
TestMavenRemoteConstraints_LastHealthStatusRangeCHECK |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteConstraints_URLLengthCHECK |
maven_remote_repositories_schema_integration_test.go |
TestMavenRemoteVersionsConstraints_VersionLengthCHECK |
maven_remote_versions_schema_integration_test.go |
TestMavenRemoteVersionsConstraints_VersionNonEmptyCHECK |
maven_remote_versions_schema_integration_test.go |
TestMavenSchema_VersionsSizeBytesNegativeTotalIsStorableNotRejected |
maven_schema_integration_test.go |
TestNamespaceEncryptionKeysSchema_ForeignKey |
namespace_encryption_keys_schema_integration_test.go |
TestNamespaceEncryptionKeysSchema_RootKeyURILengthCheck |
namespace_encryption_keys_schema_integration_test.go |
TestNamespaceEncryptionKeysConstraints_PartialUniqueActive |
namespace_encryption_keys_schema_integration_test.go |
TestNamespaceStatisticsSchema_CountersAdmitNegativeValues |
namespace_statistics_schema_integration_test.go |
TestNamespaceStatisticsSchema_ForeignKey |
namespace_statistics_schema_integration_test.go |
TestRepositoriesSchema_LastReconciledAtColumn |
namespace_statistics_schema_integration_test.go |
TestNamespaceStatisticsTrigger_CreatesZeroedRowOnNamespaceInsert |
namespace_statistics_schema_integration_test.go |
TestNPMRemoteConstraints_LastHealthStatusRangeCHECK |
npm_remote_schema_integration_test.go |
TestNPMRemoteConstraints_RepositoryURLLengthCHECK |
npm_remote_schema_integration_test.go |
TestNPMRemoteConstraints_PackagesLengthCHECKs |
npm_remote_schema_integration_test.go |
TestNPMRemoteConstraints_VersionsVersionLengthCHECK |
npm_remote_schema_integration_test.go |
TestNPMRemoteCacheConstraints_BlobSha256NotNullAnd32ByteCHECK |
npm_remote_schema_step2_integration_test.go |
TestNPMRemoteCacheConstraints_UpstreamEtagRejectsCRLF |
npm_remote_schema_step2_integration_test.go |
TestNPMConstraints_PackagesLengthCHECKs |
npm_schema_integration_test.go |
TestNPMConstraints_VersionsLengthCHECKs |
npm_schema_integration_test.go |
TestNPMConstraints_BlobSha256NotNullAnd32ByteCHECK |
npm_schema_integration_test.go |
TestNPMSchema_ScopeColumnRoundTrips |
npm_schema_integration_test.go |
TestNpmVersionsSizeBytes_NegativeTotalIsStorableNotRejected |
npm_versions_size_bytes_schema_integration_test.go |
TestNPMVirtualUpstreamsConstraints_AcceptsSoftDeletedUpstream |
npm_virtual_repository_upstreams_rowshapes_integration_test.go |
TestOCIConstraints_ContainerManifestSizeNonNegativeCHECK |
oci_container_schema_integration_test.go |
TestOCIConstraints_ContainerTagNameLengthCHECK |
oci_container_schema_integration_test.go |
TestOCIConstraints_RemainingLengthAndDigestCHECKs |
oci_container_schema_integration_test.go |
Related to #1124 (closed)