Contents
Installed SQL Object And Option Inventory
Generated by scripts/generate-sql-object-inventory.sh from
sql/pgcontext--0.1.0.sql and the HNSW reloptions callback. Run the generator
after changing the installed SQL contract, or use
scripts/generate-sql-object-inventory.sh --check to verify it. Do not edit
this file by hand.
The SQL contract registry owns lifecycle classification; this inventory pins the installed object and option shape consumed by the capability contract.
Full SQL artifact SHA-256: 2205f1b314bc83f6ff501d74ba3aef5f9de23eb28972a73218fe0edd05e70aae
The artifact fingerprint covers every object declaration, function result shape, cast method/context, operator identity, and opclass strategy. contract_registry separately compares installed functions and catalog objects bidirectionally, including typed operator and access-method/input-type opclass identities.
| Object kind | Installed count |
|---|---|
| Types | 18 |
| Schemas | 1 |
| Functions | 232 |
| Tables | 13 |
| Views | 8 |
| Triggers | 3 |
| Casts | 23 |
| Operators | 42 |
| Operator classes | 11 |
| Aggregates | 8 |
| Access methods | 1 |
Types
BitVecHalfVecSparseVecVectorpgcontext.BuildJobStatuspgcontext.EmbeddingMigrationStatuspgcontext.IndexAdvisorRecommendationpgcontext.IndexDiagnosticStatuspgcontext.IndexLifecycleStatuspgcontext.IndexMemoryEstimateStatuspgcontext.OptimizationStatuspgcontext.QueryCohortStatuspgcontext.QueryExplainStatuspgcontext.QueryLatencyBucketpgcontext.QueryLifecycleStatepgcontext.RecallCheckStatuspgcontext.TelemetryStatuspgcontext.VacuumAdviceStatus
Schemas, Tables, Views, And Triggers
- schema
pgcontext - table
pgcontext._artifact_reader_pins - table
pgcontext._artifact_segments - table
pgcontext._build_deltas - table
pgcontext._build_jobs - table
pgcontext._collection_aliases - table
pgcontext._collection_payload_columns - table
pgcontext._collection_points - table
pgcontext._collection_sparse_vectors - table
pgcontext._collection_vectors - table
pgcontext._collections - table
pgcontext._embedding_migrations - table
pgcontext._model_versions - table
pgcontext._query_stats - trigger
pgcontext_build_jobs_no_progress_regression - trigger
pgcontext_build_jobs_terminal_state - trigger
pgcontext_capture_build_point_delta - view
pgcontext._collection_acl - view
pgcontext._visible_artifact_segments - view
pgcontext._visible_build_jobs - view
pgcontext._visible_collection_limits - view
pgcontext._visible_collection_payload_columns - view
pgcontext._visible_collection_points - view
pgcontext._visible_collection_sparse_vectors - view
pgcontext._visible_collection_vectors
Function Names
Overload argument and result identities are pinned by the artifact fingerprint and bidirectional contract_registry test.
"bitvec_in""bitvec_out""halfvec_in""halfvec_out""sparsevec_in""sparsevec_out""vector_in""vector_out"pgcontext."_hnsw_masked_candidates"pgcontext."adopt_pgvector"pgcontext."artifact_segment_diagnostics"pgcontext."artifact_segment_memory"pgcontext."artifact_segment_mmap_payload"pgcontext."artifact_segment_serving_readiness"pgcontext."artifact_segments"pgcontext."attach_hnsw_index"pgcontext."backfill_points"pgcontext."binary_quantize"pgcontext."bitvec"pgcontext."bitvec_and_transition"pgcontext."bitvec_bits_final"pgcontext."bitvec_cmp"pgcontext."bitvec_dims"pgcontext."bitvec_enforce_typmod"pgcontext."bitvec_eq"pgcontext."bitvec_from_bool_array"pgcontext."bitvec_ge"pgcontext."bitvec_gt"pgcontext."bitvec_hamming_distance"pgcontext."bitvec_jaccard_distance"pgcontext."bitvec_le"pgcontext."bitvec_lt"pgcontext."bitvec_ne"pgcontext."bitvec_or_transition"pgcontext."bitvec_to_bool_array"pgcontext."bitvec_typmod_in"pgcontext."bitvec_typmod_out"pgcontext."build_jobs"pgcontext."build_mmap_hnsw_artifact"pgcontext."bulk_delete_points"pgcontext."bulk_upsert_points"pgcontext."cleanup_artifact_segments"pgcontext."clear_payload"pgcontext."collection_aliases"pgcontext."collection_info"pgcontext."collection_limits"pgcontext."collection_sparse_vectors"pgcontext."collection_vectors"pgcontext."compact"pgcontext."compare_indexes"pgcontext."configure_collection_limits"pgcontext."configure_sparse_vector"pgcontext."configure_vector"pgcontext."cosine_distance"pgcontext."count"pgcontext."create_collection"pgcontext."create_collection_alias"pgcontext."create_embedding_migration"pgcontext."delete_payload"pgcontext."delete_points"pgcontext."discover"pgcontext."drop_collection"pgcontext."drop_collection_alias"pgcontext."embedding_migrations"pgcontext."enable_pgvector_binding"pgcontext."encode_artifact_segment"pgcontext."estimate_index_memory"pgcontext."explain"pgcontext."explain_late_interaction"pgcontext."explain_late_interaction_ann"pgcontext."explore"pgcontext."facet"pgcontext."grouped_search"pgcontext."halfvec"pgcontext."halfvec_avg_final"pgcontext."halfvec_cmp"pgcontext."halfvec_cosine_distance"pgcontext."halfvec_dims"pgcontext."halfvec_enforce_typmod"pgcontext."halfvec_eq"pgcontext."halfvec_from_double_array"pgcontext."halfvec_from_integer_array"pgcontext."halfvec_from_real_array"pgcontext."halfvec_ge"pgcontext."halfvec_gt"pgcontext."halfvec_inner_product"pgcontext."halfvec_l1_distance"pgcontext."halfvec_l2_distance"pgcontext."halfvec_le"pgcontext."halfvec_lt"pgcontext."halfvec_ne"pgcontext."halfvec_negative_inner_product"pgcontext."halfvec_sum_final"pgcontext."halfvec_sum_transition"pgcontext."halfvec_to_real_array"pgcontext."halfvec_to_vector"pgcontext."halfvec_typmod_in"pgcontext."halfvec_typmod_out"pgcontext."hnsw_build_stats"pgcontext."hnsw_l2_distance"pgcontext."hnsw_last_scan_work"pgcontext."hnsw_serving_stats"pgcontext."index_advisor"pgcontext."index_diagnostics"pgcontext."index_status"pgcontext."inner_product"pgcontext."l1_distance"pgcontext."l2_distance"pgcontext."migration_report"pgcontext."model_versions"pgcontext."negative_inner_product"pgcontext."optimization_status"pgcontext."product_quantize"pgcontext."product_reconstruct"pgcontext."publish_artifact_segment"pgcontext."publish_artifact_segment_file"pgcontext."query"pgcontext."query_cohort_stats"pgcontext."query_discover"pgcontext."query_formula"pgcontext."query_lookup"pgcontext."query_nearest"pgcontext."query_prefetch"pgcontext."query_recommend"pgcontext."query_rerank"pgcontext."query_score_threshold"pgcontext."query_weight"pgcontext."recall_check"pgcontext."recommend"pgcontext."record_query_stat"pgcontext."register_filter_column"pgcontext."register_jsonb_path"pgcontext."register_model_version"pgcontext."register_sparse_vector"pgcontext."register_vector"pgcontext."request_build_cancel"pgcontext."rerank_late_interaction"pgcontext."rerank_quantized_candidates"pgcontext."retire_artifact_segment"pgcontext."retry_build_job"pgcontext."run_build_job"pgcontext."scalar_quantize"pgcontext."scalar_reconstruct"pgcontext."scroll"pgcontext."search"pgcontext."search_late_interaction"pgcontext."search_late_interaction_ann"pgcontext."search_mmap_hnsw_artifact"pgcontext."search_sparse"pgcontext."set_payload"pgcontext."sparsevec"pgcontext."sparsevec_avg_final"pgcontext."sparsevec_cmp"pgcontext."sparsevec_cosine_distance"pgcontext."sparsevec_dims"pgcontext."sparsevec_enforce_typmod"pgcontext."sparsevec_eq"pgcontext."sparsevec_from_arrays"pgcontext."sparsevec_from_real_array"pgcontext."sparsevec_from_vector"pgcontext."sparsevec_ge"pgcontext."sparsevec_gt"pgcontext."sparsevec_indices"pgcontext."sparsevec_inner_product"pgcontext."sparsevec_l1_distance"pgcontext."sparsevec_l2_distance"pgcontext."sparsevec_le"pgcontext."sparsevec_lt"pgcontext."sparsevec_ne"pgcontext."sparsevec_negative_inner_product"pgcontext."sparsevec_sum_final"pgcontext."sparsevec_sum_transition"pgcontext."sparsevec_to_real_array"pgcontext."sparsevec_to_vector"pgcontext."sparsevec_typmod_in"pgcontext."sparsevec_typmod_out"pgcontext."sparsevec_values"pgcontext."start_build_job"pgcontext."telemetry"pgcontext."update_build_job"pgcontext."update_embedding_migration"pgcontext."upsert_points"pgcontext."vacuum_advice"pgcontext."validate_artifact_segment"pgcontext."validate_hnsw_graph_artifact"pgcontext."vector_avg_final"pgcontext."vector_cmp"pgcontext."vector_dims"pgcontext."vector_enforce_typmod"pgcontext."vector_eq"pgcontext."vector_from_double_array"pgcontext."vector_from_integer_array"pgcontext."vector_from_real_array"pgcontext."vector_ge"pgcontext."vector_gt"pgcontext."vector_le"pgcontext."vector_lt"pgcontext."vector_ne"pgcontext."vector_sum_final"pgcontext."vector_sum_transition"pgcontext."vector_to_real_array"pgcontext."vector_typmod_in"pgcontext."vector_typmod_out"pgcontext._capture_build_point_deltapgcontext._cosine_distance_fastpgcontext._enforce_build_job_terminal_statepgcontext._l1_distance_fastpgcontext._l2_distance_fast8pgcontext._l2_distance_fastpgcontext._negative_inner_product_fastpgcontext._reject_build_job_progress_regressionpgcontext.current_vector_config_revisionpgcontext.hamming_distancepgcontext.hnsw_handlerpgcontext.jaccard_distance
Cast Identities
(bit AS bitvec) WITH INOUT AS ASSIGNMENT;(bit varying AS bitvec) WITH INOUT AS ASSIGNMENT;(bitvec AS bit varying) WITH INOUT AS ASSIGNMENT;(bitvec AS bit) WITH INOUT;(bitvec AS bitvec)(bitvec AS boolean[]) WITH FUNCTION pgcontext.bitvec_to_bool_array(bitvec) AS ASSIGNMENT;(boolean[] AS bitvec) WITH FUNCTION pgcontext.bitvec_from_bool_array(boolean[]) AS ASSIGNMENT;(double precision[] AS halfvec)(double precision[] AS vector)(halfvec AS halfvec)(halfvec AS real[])(halfvec AS vector)(integer[] AS halfvec)(integer[] AS vector)(real[] AS halfvec)(real[] AS sparsevec)(real[] AS vector)(sparsevec AS real[])(sparsevec AS sparsevec)(sparsevec AS vector)(vector AS real[])(vector AS sparsevec)(vector AS vector)
Typed Operator Registry Entries
| Entry | Kind | Applies to | Lifecycle |
|---|---|---|---|
vector_ops |
operator class | btree, vector | Stable |
halfvec_ops |
operator class | btree, halfvec | Experimental |
sparsevec_ops |
operator class | btree, sparsevec | Experimental |
bitvec_ops |
operator class | btree, bitvec | Experimental |
vector_hnsw_ops |
operator class | pgcontext_hnsw, vector | Experimental |
vector_hnsw_ip_ops |
operator class | pgcontext_hnsw, vector | Experimental |
vector_hnsw_cosine_ops |
operator class | pgcontext_hnsw, vector | Experimental |
vector_hnsw_l1_ops |
operator class | pgcontext_hnsw, vector | Experimental |
halfvec_hnsw_ops |
operator class | pgcontext_hnsw, halfvec | Experimental |
sparsevec_hnsw_ops |
operator class | pgcontext_hnsw, sparsevec | Experimental |
bitvec_hnsw_hamming_ops |
operator class | pgcontext_hnsw, bitvec | Experimental |
<-> |
operator | vector, vector | Stable |
<#> |
operator | vector, vector | Stable |
<=> |
operator | vector, vector | Stable |
<+> |
operator | vector, vector | Stable |
< |
operator | vector, vector | Stable |
<= |
operator | vector, vector | Stable |
= |
operator | vector, vector | Stable |
<> |
operator | vector, vector | Stable |
>= |
operator | vector, vector | Stable |
> |
operator | vector, vector | Stable |
<-> |
operator | halfvec, halfvec | Experimental |
<#> |
operator | halfvec, halfvec | Experimental |
<=> |
operator | halfvec, halfvec | Experimental |
<+> |
operator | halfvec, halfvec | Experimental |
< |
operator | halfvec, halfvec | Experimental |
<= |
operator | halfvec, halfvec | Experimental |
= |
operator | halfvec, halfvec | Experimental |
<> |
operator | halfvec, halfvec | Experimental |
>= |
operator | halfvec, halfvec | Experimental |
> |
operator | halfvec, halfvec | Experimental |
<-> |
operator | sparsevec, sparsevec | Experimental |
<#> |
operator | sparsevec, sparsevec | Experimental |
<=> |
operator | sparsevec, sparsevec | Experimental |
<+> |
operator | sparsevec, sparsevec | Experimental |
< |
operator | sparsevec, sparsevec | Experimental |
<= |
operator | sparsevec, sparsevec | Experimental |
= |
operator | sparsevec, sparsevec | Experimental |
<> |
operator | sparsevec, sparsevec | Experimental |
>= |
operator | sparsevec, sparsevec | Experimental |
> |
operator | sparsevec, sparsevec | Experimental |
< |
operator | bitvec, bitvec | Experimental |
<= |
operator | bitvec, bitvec | Experimental |
= |
operator | bitvec, bitvec | Experimental |
<> |
operator | bitvec, bitvec | Experimental |
>= |
operator | bitvec, bitvec | Experimental |
> |
operator | bitvec, bitvec | Experimental |
<~> |
operator | bitvec, bitvec | Experimental |
<%> |
operator | bitvec, bitvec | Experimental |
<~> |
operator | bit, bit | Experimental |
<%> |
operator | bit, bit | Experimental |
<~> |
operator | bit varying, bit varying | Experimental |
<%> |
operator | bit varying, bit varying | Experimental |
Aggregate Identities
pgcontext.avg(halfvec) (pgcontext.avg(sparsevec) (pgcontext.avg(vector) (pgcontext.bit_and(bitvec) (pgcontext.bit_or(bitvec) (pgcontext.sum(halfvec) (pgcontext.sum(sparsevec) (pgcontext.sum(vector) (
Access Methods And Operator Classes
- access method
pgcontext_hnsw - operator class
pgcontext.bitvec_hnsw_hamming_ops - operator class
pgcontext.bitvec_ops - operator class
pgcontext.halfvec_hnsw_ops - operator class
pgcontext.halfvec_ops - operator class
pgcontext.sparsevec_hnsw_ops - operator class
pgcontext.sparsevec_ops - operator class
pgcontext.vector_hnsw_cosine_ops - operator class
pgcontext.vector_hnsw_ip_ops - operator class
pgcontext.vector_hnsw_l1_ops - operator class
pgcontext.vector_hnsw_ops - operator class
pgcontext.vector_ops
pgcontext_hnsw Index Reloptions
| Option | Accepted shape | Lifecycle |
|---|---|---|
quantization |
none, scalar, sq8, or pq |
Experimental until quantized serving is complete |
scalar_min |
finite lower bound | Experimental |
scalar_max |
finite upper bound greater than scalar_min |
Experimental |
scalar_levels |
integer from 2 through 256 | Experimental |
pq_subvector_dimensions |
positive divisor of vector dimensions | Experimental |
pq_codebooks |
validated JSON codebook array | Experimental |
HNSW GUCs
| Setting | Default | Lifecycle |
|---|---|---|
pgcontext.hnsw_m |
16 |
Experimental HNSW serving policy |
pgcontext.hnsw_ef_construction |
64 |
Experimental HNSW build policy |
pgcontext.hnsw_ef_search |
32 |
Experimental HNSW search policy |
pgcontext.hnsw_candidate_budget |
32 |
Experimental filtered/iterative policy |
pgcontext.hnsw_iterative_expansion_limit |
10000 |
Experimental bounded expansion policy |
pgcontext.hnsw_recall_threshold |
0.95 |
Experimental recall-health policy |