{"kind": "operator", "major": "18", "item": {"slug": "op-3d-oid8-oid8", "name": "=(oid8,oid8)", "name_zh": "", "category": "Object and transaction identifiers", "summary": "Not recorded in the selected version.", "aliases": ["=", "=(oid8,oid8)"], "content_hash": "bbcb52a3716c003a5aeb38216d18aa109e5d0be6b0e8562473baa3ad582d8aab", "versions": {"19": {"facts": [{"label": "Left operand", "value": "oid8"}, {"label": "Right operand", "value": "oid8"}, {"label": "Result type", "value": "bool"}, {"label": "Implementing function", "value": "oid8eq(oid8,oid8)"}, {"label": "Operator kind", "value": "Binary"}, {"label": "Hash join candidate", "value": "yes"}, {"label": "Merge join candidate", "value": "yes"}], "tables": [{"key": "memberships", "rows": [{"family": {"url": "/wiki/opclass/family-btree-oid8_ops/?v=19", "text": "oid8_ops"}, "method": {"url": "/wiki/indexam/btree/?v=19", "text": "B-tree"}, "purpose": "search", "strategy": "3", "sort_family": ""}, {"family": {"url": "/wiki/opclass/family-hash-oid8_ops/?v=19", "text": "oid8_ops"}, "method": {"url": "/wiki/indexam/hash/?v=19", "text": "Hash"}, "purpose": "search", "strategy": "1", "sort_family": ""}], "title": "Declared operator-family membership", "columns": [{"key": "method", "label": "Index AM"}, {"key": "family", "label": "Family"}, {"key": "strategy", "label": "Strategy"}, {"key": "purpose", "label": "Purpose"}, {"key": "sort_family", "label": "Ordering family"}]}], "aliases": ["=", "=(oid8,oid8)"], "related": [{"url": "/wiki/type/oid8/?v=19", "label": "oid8 data type"}, {"url": "/wiki/type/bool/?v=19", "label": "bool data type"}, {"url": "/wiki/operator/op-3d-oid8-oid8/?v=19", "label": "Commutator: =(oid8,oid8)"}, {"url": "/wiki/operator/op-3c3e-oid8-oid8/?v=19", "label": "Negator: <>(oid8,oid8)"}, {"url": "/wiki/opclass/family-btree-oid8_ops/?v=19", "label": "btree/oid8_ops family"}, {"url": "/wiki/opclass/family-hash-oid8_ops/?v=19", "label": "hash/oid8_ops family"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v19beta4/postgresql-19beta4.tar.bz2", "label": "19beta4", "major": "19", "channel": "preview", "revision": "83157ee9c599d03b2f7a3d73ef3a56ec24e0e79cc2b3501a64d1364f56398c86", "source_sha256": "83157ee9c599d03b2f7a3d73ef3a56ec24e0e79cc2b3501a64d1364f56398c86", "manual_fingerprint": "d1c30d7808d3ae2edc8773a0dd66f7beb5861e8939001e171c1908f7a09bb497", "catalog_fingerprint": "9af4323d0c8ed03d0e795331930bd14ce9bf6193c6b766c463b9f6ec0829409a"}, "sources": [{"url": "https://ftp.postgresql.org/pub/source/v19beta4/postgresql-19beta4.tar.bz2", "label": "Matching PostgreSQL source archive", "sha256": "83157ee9c599d03b2f7a3d73ef3a56ec24e0e79cc2b3501a64d1364f56398c86"}, {"url": "/docs/19/catalog-pg-operator.html", "path": "catalog-pg-operator.html", "label": "PostgreSQL 19 English manual: catalog-pg-operator.html", "sha256": "fa89c3d5f2ba2adfe53192fd39c819efc78a22998994feed5fd4239bedaa938a"}, {"url": "/docs/19/catalog-pg-amop.html", "path": "catalog-pg-amop.html", "label": "PostgreSQL 19 English manual: catalog-pg-amop.html", "sha256": "711850fdde973fbaf16da94143a2de3b972bed7a3b8663bf80e4aeabaf2f43fe"}], "operator": {"kind": "b", "symbol": "=", "negator": "<>(oid8,oid8)", "function": "oid8eq(oid8,oid8)", "hash_join": "t", "left_type": "oid8", "commutator": "=(oid8,oid8)", "merge_join": "t", "right_type": "oid8", "result_type": "bool"}, "sections": [{"title": "Catalog interpretation", "paragraphs": ["The catalog pg_operator stores information about operators. See CREATE OPERATOR and Section 36.14 for more information."]}], "signature": "=(oid8,oid8) \u2192 bool", "source_oid": "6443", "description": ["equal"], "memberships": [{"family": "oid8_ops", "method": "btree", "purpose": "search", "operator": "=(oid8,oid8)", "strategy": "3", "left_type": "oid8", "right_type": "oid8", "description": "equal", "family_slug": "family-btree-oid8_ops", "result_type": "bool", "sort_family": "", "operator_slug": "op-3d-oid8-oid8", "sort_family_slug": ""}, {"family": "oid8_ops", "method": "hash", "purpose": "search", "operator": "=(oid8,oid8)", "strategy": "1", "left_type": "oid8", "right_type": "oid8", "description": "equal", "family_slug": "family-hash-oid8_ops", "result_type": "bool", "sort_family": "", "operator_slug": "op-3d-oid8-oid8", "sort_family_slug": ""}], "comparison_data": {"operator": {"kind": "b", "symbol": "=", "negator": "<>(oid8,oid8)", "function": "oid8eq(oid8,oid8)", "hash_join": "t", "left_type": "oid8", "commutator": "=(oid8,oid8)", "merge_join": "t", "right_type": "oid8", "result_type": "bool"}, "memberships": [{"family": "oid8_ops", "method": "btree", "purpose": "search", "operator": "=(oid8,oid8)", "strategy": "3", "left_type": "oid8", "right_type": "oid8", "sort_family": ""}, {"family": "oid8_ops", "method": "hash", "purpose": "search", "operator": "=(oid8,oid8)", "strategy": "1", "left_type": "oid8", "right_type": "oid8", "sort_family": ""}]}, "comparison_hash": "4ba33fa1b7d191d5d512df63880970676961967272bc4c6eae7b6b8c4aaf8bd5", "manual_semantics": "Source catalog description; no additional matching manual operator definition claimed"}, "20": {"facts": [{"label": "Left operand", "value": "oid8"}, {"label": "Right operand", "value": "oid8"}, {"label": "Result type", "value": "bool"}, {"label": "Implementing function", "value": "oid8eq(oid8,oid8)"}, {"label": "Operator kind", "value": "Binary"}, {"label": "Hash join candidate", "value": "yes"}, {"label": "Merge join candidate", "value": "yes"}], "tables": [{"key": "memberships", "rows": [{"family": {"url": "/wiki/opclass/family-btree-oid8_ops/?v=20", "text": "oid8_ops"}, "method": {"url": "/wiki/indexam/btree/?v=20", "text": "B-tree"}, "purpose": "search", "strategy": "3", "sort_family": ""}, {"family": {"url": "/wiki/opclass/family-hash-oid8_ops/?v=20", "text": "oid8_ops"}, "method": {"url": "/wiki/indexam/hash/?v=20", "text": "Hash"}, "purpose": "search", "strategy": "1", "sort_family": ""}], "title": "Declared operator-family membership", "columns": [{"key": "method", "label": "Index AM"}, {"key": "family", "label": "Family"}, {"key": "strategy", "label": "Strategy"}, {"key": "purpose", "label": "Purpose"}, {"key": "sort_family", "label": "Ordering family"}]}], "aliases": ["=", "=(oid8,oid8)"], "related": [{"url": "/wiki/type/oid8/?v=20", "label": "oid8 data type"}, {"url": "/wiki/type/bool/?v=20", "label": "bool data type"}, {"url": "/wiki/operator/op-3d-oid8-oid8/?v=20", "label": "Commutator: =(oid8,oid8)"}, {"url": "/wiki/operator/op-3c3e-oid8-oid8/?v=20", "label": "Negator: <>(oid8,oid8)"}, {"url": "/wiki/opclass/family-btree-oid8_ops/?v=20", "label": "btree/oid8_ops family"}, {"url": "/wiki/opclass/family-hash-oid8_ops/?v=20", "label": "hash/oid8_ops family"}], "release": {"ref": "https://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2", "label": "20devel", "major": "20", "channel": "devel", "revision": "4d3346909b201ac1648232cf290462a7070c119326f56196f1f0253ed80fae41", "source_sha256": "4d3346909b201ac1648232cf290462a7070c119326f56196f1f0253ed80fae41", "manual_fingerprint": "48fb9e20e9e1454fe93d367e75b949833c82c1c52c2b69314dfffe1c464f3f39", "catalog_fingerprint": "cc1a474e972c8c342cf17f37e2884c56cc4b114cb59407b0180e99cdcfffa5c5", "source_snapshot_utc": "26-Sep-2026 20:22"}, "sources": [{"url": "https://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2", "label": "Matching PostgreSQL source archive", "sha256": "4d3346909b201ac1648232cf290462a7070c119326f56196f1f0253ed80fae41"}, {"url": "/docs/devel/catalog-pg-operator.html", "path": "catalog-pg-operator.html", "label": "PostgreSQL 20 English manual: catalog-pg-operator.html", "sha256": "b8882bb8329f1659f719eb9397246146135c228892834fbd29325ed3030f17cb"}, {"url": "/docs/devel/catalog-pg-amop.html", "path": "catalog-pg-amop.html", "label": "PostgreSQL 20 English manual: catalog-pg-amop.html", "sha256": "00fee8a631088b687e2d880e4091791ca30f9c69fca888c51ece463d1b9e1e61"}], "operator": {"kind": "b", "symbol": "=", "negator": "<>(oid8,oid8)", "function": "oid8eq(oid8,oid8)", "hash_join": "t", "left_type": "oid8", "commutator": "=(oid8,oid8)", "merge_join": "t", "right_type": "oid8", "result_type": "bool"}, "sections": [{"title": "Catalog interpretation", "paragraphs": ["The catalog pg_operator stores information about operators. See CREATE OPERATOR and Section 36.14 for more information."]}], "signature": "=(oid8,oid8) \u2192 bool", "source_oid": "6443", "description": ["equal"], "memberships": [{"family": "oid8_ops", "method": "btree", "purpose": "search", "operator": "=(oid8,oid8)", "strategy": "3", "left_type": "oid8", "right_type": "oid8", "description": "equal", "family_slug": "family-btree-oid8_ops", "result_type": "bool", "sort_family": "", "operator_slug": "op-3d-oid8-oid8", "sort_family_slug": ""}, {"family": "oid8_ops", "method": "hash", "purpose": "search", "operator": "=(oid8,oid8)", "strategy": "1", "left_type": "oid8", "right_type": "oid8", "description": "equal", "family_slug": "family-hash-oid8_ops", "result_type": "bool", "sort_family": "", "operator_slug": "op-3d-oid8-oid8", "sort_family_slug": ""}], "comparison_data": {"operator": {"kind": "b", "symbol": "=", "negator": "<>(oid8,oid8)", "function": "oid8eq(oid8,oid8)", "hash_join": "t", "left_type": "oid8", "commutator": "=(oid8,oid8)", "merge_join": "t", "right_type": "oid8", "result_type": "bool"}, "memberships": [{"family": "oid8_ops", "method": "btree", "purpose": "search", "operator": "=(oid8,oid8)", "strategy": "3", "left_type": "oid8", "right_type": "oid8", "sort_family": ""}, {"family": "oid8_ops", "method": "hash", "purpose": "search", "operator": "=(oid8,oid8)", "strategy": "1", "left_type": "oid8", "right_type": "oid8", "sort_family": ""}]}, "comparison_hash": "4ba33fa1b7d191d5d512df63880970676961967272bc4c6eae7b6b8c4aaf8bd5", "manual_semantics": "Source catalog description; no additional matching manual operator definition claimed"}}}, "snapshot": null, "comparison": {"left": "18", "right": "19", "status": "added", "diff": "--- PostgreSQL 18\n+++ PostgreSQL 19\n@@ -1 +1,36 @@\n-Not recorded in this version\n+{\n+  \"memberships\": [\n+    {\n+      \"family\": \"oid8_ops\",\n+      \"left_type\": \"oid8\",\n+      \"method\": \"btree\",\n+      \"operator\": \"=(oid8,oid8)\",\n+      \"purpose\": \"search\",\n+      \"right_type\": \"oid8\",\n+      \"sort_family\": \"\",\n+      \"strategy\": \"3\"\n+    },\n+    {\n+      \"family\": \"oid8_ops\",\n+      \"left_type\": \"oid8\",\n+      \"method\": \"hash\",\n+      \"operator\": \"=(oid8,oid8)\",\n+      \"purpose\": \"search\",\n+      \"right_type\": \"oid8\",\n+      \"sort_family\": \"\",\n+      \"strategy\": \"1\"\n+    }\n+  ],\n+  \"operator\": {\n+    \"commutator\": \"=(oid8,oid8)\",\n+    \"function\": \"oid8eq(oid8,oid8)\",\n+    \"hash_join\": \"t\",\n+    \"kind\": \"b\",\n+    \"left_type\": \"oid8\",\n+    \"merge_join\": \"t\",\n+    \"negator\": \"<>(oid8,oid8)\",\n+    \"result_type\": \"bool\",\n+    \"right_type\": \"oid8\",\n+    \"symbol\": \"=\"\n+  }\n+}"}}