sp-gistcung cấp một giao diện với mức độ trừu tượng cao, yêu cầu nhà phát triển phương thức truy cập chỉ thực hiện các phương thức cụ thể cho một loại dữ tỷ lệ kèo bóng đá tối nay nhất định. Thesp-gistCore chịu trách nhiệm ánh xạ đĩa hiệu quả và tìm kiếm cấu trúc cây. Nó cũng quan tâm đến tỷ lệ kèo bóng đá tối nay cân nhắc đồng thời và ghi nhật ký.
Bộ đôi lá của tỷ lệ kèo bóng đá tối naysp-gistCây chứa các giá trị của cùng loại dữ tỷ lệ kèo bóng đá tối nay với cột được lập chỉ mục. Bộ dữ tỷ lệ kèo bóng đá tối nay lá ở mức gốc sẽ luôn chứa giá trị dữ tỷ lệ kèo bóng đá tối nay được lập chỉ mục ban đầu, nhưng các bộ dữ tỷ lệ kèo bóng đá tối nay lá ở mức thấp hơn có thể chỉ chứa một biểu diễn nén, chẳng hạn như hậu tố.
Bộ dữ tỷ lệ kèo bóng đá tối nay bên trong phức tạp hơn, vì chúng là các điểm phân nhánh trong cây tìm kiếm. Mỗi tuple bên trong chứa một tập hợp một hoặc nhiềunút, đại diện cho các nhóm các giá trị lá tương tự. Một nút chứa một đường xuống dẫn đến một phần bên trong cấp độ khác, hoặc vào một danh sách ngắn các bộ dữ tỷ lệ kèo bóng đá tối nay lá nằm trên cùng một trang chỉ mục.nhãnmô tả nó; Ví dụ, trong tỷ lệ kèo bóng đá tối nay cây radix, nhãn nút có thể là ký tự tiếp theo của giá trị chuỗi.Phần 65.4.2.) Tùy chọn, tỷ lệ kèo bóng đá tối nay tuple bên trong có thể cótiền tốGiá trị mô tả tất cả tỷ lệ kèo bóng đá tối nay thành viên của nó. Trong một cây radix, đây có thể là tiền tố phổ biến của tỷ lệ kèo bóng đá tối nay chuỗi được đại diện.
tỷ lệ kèo bóng đá tối nay số thuật toán cây yêu cầu kiến thức về cấp độ (hoặc độ sâu) của tuple hiện tại, vì vậysp-gistCore cung cấp khả năng cho các lớp toán tử để quản lý việc đếm mức trong khi giảm dần cây. Ngoài ra còn có hỗ trợ cho việc xây dựng lại giá trị được biểu diễn tăng dần khi đó là cần thiết và để truyền dữ tỷ lệ kèo bóng đá tối nay bổ sung (được gọi làGiá trị Traverse) trong tỷ lệ kèo bóng đá tối nay gốc cây.
Thesp-gistMã cốt lõi chăm sóc tỷ lệ kèo bóng đá tối nay mục NULL. Mặc dùsp-gistIndexes do tỷ lệ kèo bóng đá tối nay mục lưu trữ cho tỷ lệ kèo bóng đá tối nay null trong tỷ lệ kèo bóng đá tối nay cột được lập chỉ mục, điều này được ẩn khỏi mã lớp toán tử chỉ mục: Không có mục nhập chỉ mục null hoặc điều kiện tìm kiếm sẽ được chuyển đến tỷ lệ kèo bóng đá tối nay phương thức của lớp toán tử. (Giả định rằngsp-gistNgười vận hành nghiêm ngặt và do đó không thể thành công cho tỷ lệ kèo bóng đá tối nay giá trị null.) Do đó, tỷ lệ kèo bóng đá tối nay giá trị null không được thảo luận thêm ở đây.
Có năm phương thức do người dùng xác định là lớp toán tử chỉ mục chosp-gistphải cung cấp và tỷ lệ kèo bóng đá tối nay là tùy chọn. Tất cả năm phương pháp bắt buộc tuân theo quy ước chấp nhận haiNội bộ
Đối số, đầu tiên là một con trỏ tới cấu trúc C chứa tỷ lệ kèo bóng đá tối nay giá trị đầu vào cho phương thức hỗ trợ, trong khi đối số thứ hai là một con trỏ tới cấu trúc C nơi phải đặt tỷ lệ kèo bóng đá tối nay giá trị đầu ra. Bốn trong số tỷ lệ kèo bóng đá tối nay phương thức bắt buộc chỉ trả vềvoid
, vì tất cả tỷ lệ kèo bóng đá tối nay kết quả của chúng xuất hiện trong cấu trúc đầu ra; NhưngLeaf_consistent
Ngoài ra trả về ABoolean
Kết quả. tỷ lệ kèo bóng đá tối nay phương thức không được sửa đổi bất kỳ trường nào của tỷ lệ kèo bóng đá tối nay cấu trúc đầu vào của chúng.nén
12272_12390
Năm phương thức do người dùng bắt buộc xác định là:
config
12606_12736
TheSQLTuyên bố chức năng phải trông như thế này:
Tạo hàm my_config (nội bộ, nội bộ) trả về void ...
Đối số đầu tiên là tỷ lệ kèo bóng đá tối nay con trỏ tớispgconfigin
C struct, chứa dữ tỷ lệ kèo bóng đá tối nay đầu vào cho hàm. Đối số thứ hai là một con trỏ tớispgconfigout
C struct, mà hàm phải điền vào dữ tỷ lệ kèo bóng đá tối nay kết quả.
typedef struct spgconfigin
atttype
được thông qua để hỗ trợ các lớp toán tử chỉ số đa hình; Đối với các lớp toán tử loại dữ tỷ lệ kèo bóng đá tối nay cố định thông thường, nó sẽ luôn có cùng giá trị và do đó có thể bị bỏ qua.
Đối với tỷ lệ kèo bóng đá tối nay lớp toán tử không sử dụng tiền tố,PrefixType
có thể được đặt thànhVOIDOID
. Tương tự như vậy, đối với tỷ lệ kèo bóng đá tối nay lớp toán tử không sử dụng nhãn nút,LabelType
có thể được đặt thànhVOIDOID
. CanreturnData
nên được đặt đúng nếu lớp toán tử có khả năng xây dựng lại giá trị chỉ mục được cung cấp ban đầu.LongValuesok
chỉ nên đặt đúng khiatttype
có độ dài thay đổi và lớp toán tử có khả năng phân đoạn tỷ lệ kèo bóng đá tối nay giá trị dài bằng cách lặp đi lặp lại (xemPhần 65.4.1).
LeafType
thường giống nhưatttype
. Vì lý do tương thích ngược, phương thứcconfig
có thể rời khỏiLeafType
không được hưởng; Điều đó sẽ mang lại hiệu ứng tương tự như cài đặtLeafType
bằngatttype
. Khiatttype
vàLeafType
là khác nhau, sau đó là phương thức tùy chọnnén
phải được cung cấp. Phương phápnén
chịu trách nhiệm chuyển đổi các mốc dữ tỷ lệ kèo bóng đá tối nay được lập chỉ mục từatttype
đếnLeafType
. Lưu ý: Cả hai chức năng nhất quán sẽ nhận đượcScubskeys
Không thay đổi, mà không chuyển đổi bằng cách sử dụngnén
.
Chọn
Chọn tỷ lệ kèo bóng đá tối nay phương thức để chèn tỷ lệ kèo bóng đá tối nay giá trị mới vào tỷ lệ kèo bóng đá tối nay tuple bên trong.
TheSQLTuyên bố chức năng phải trông như thế này:
Tạo hàm my_choose (nội bộ, nội bộ) trả về void ...
Đối số đầu tiên là tỷ lệ kèo bóng đá tối nay con trỏ tớispgchoosein
C struct, chứa dữ tỷ lệ kèo bóng đá tối nay đầu vào cho hàm. Đối số thứ hai là một con trỏ tớispgchooseout
C struct, mà hàm phải điền vào dữ tỷ lệ kèo bóng đá tối nay kết quả.
typedef struct spgchoosein
Datum
là dữ tỷ lệ kèo bóng đá tối nay ban đầu củaspgconfigin
.atttype
Loại được chèn vào chỉ mục.LeafDatum
là giá trị củaspgconfigout
.LeafType
Loại, ban đầu là kết quả của phương thứcnén
Áp dụng choDatum
Khi phương thứcnén
được cung cấp hoặc cùng giá trị vớiDatum
nếu không.Leafdatum
có thể thay đổi ở tỷ lệ kèo bóng đá tối nay cấp thấp hơn của cây nếuChọn
hoặcPickSplit
Phương pháp thay đổi nó. Khi tìm kiếm chèn đạt đến tỷ lệ kèo bóng đá tối nay trang lá, giá trị hiện tại củaLeafdatum
là những gì sẽ được lưu trữ trong Tuple lá mới được tạo ra.Cấp
là cấp độ Tuple bên trong hiện tại, bắt đầu từ 0 cho mức gốc.Allthesame
là đúng nếu bộ tuple bên trong hiện tại được đánh dấu là chứa nhiều nút tương đương (xemPhần 65.4.3).Hasprefix
là đúng nếu bộ tuple bên trong dòng điện chứa tiền tố; Nếu vậy,prefixdatum
là giá trị của nó.nnodes
là số nút con có trong phần bên trong vàNodelabels
là một mảng của tỷ lệ kèo bóng đá tối nay giá trị nhãn của chúng hoặc null nếu không có nhãn.
TheChọn
Hàm có thể xác định rằng giá trị mới phù hợp với một trong tỷ lệ kèo bóng đá tối nay nút con hiện có hoặc nút con mới phải được thêm vào hoặc giá trị mới không phù hợp với tiền tố tuple và do đó, bộ tuple bên trong phải được chia để tạo ra một tiền tố ít hạn chế hơn.
Nếu giá trị mới khớp với một trong tỷ lệ kèo bóng đá tối nay nút con hiện có, SETresultType
đếnSPGMatchNode
. BộNoden
đến chỉ mục (từ 0) của nút đó trong mảng nút. BộLeveladd
đến mức tăng trongCấp
gây ra bởi việc đi xuống qua nút đó hoặc để nó dưới dạng 0 nếu lớp toán tử không sử dụng mức. BộrestDatum
đến bằngLeafDatum
Nếu lớp toán tử không sửa đổi dữ tỷ lệ kèo bóng đá tối nay từ cấp này sang cấp độ tiếp theo hoặc đặt nó thành giá trị sửa đổi được sử dụng làmLeafDatum
ở cấp độ tiếp theo.
Nếu phải thêm nút con mới, đặtresultType
đếnspgaddnode
. BộNodelabel
đến nhãn được sử dụng cho nút mới và đặtNoden
đến chỉ mục (từ 0) để chèn nút vào mảng nút. Sau khi nút đã được thêm vào,Chọn
Hàm sẽ được gọi lại với bộ tuple bên trong được sửa đổi; cuộc gọi đó sẽ dẫn đến tỷ lệ kèo bóng đá tối naySPGMatchNode
result.
Nếu giá trị mới không phù hợp với tiền tố tuple, setresultType
đếnspgsplittuple
. Hành động này di chuyển tất cả tỷ lệ kèo bóng đá tối nay nút hiện có thành một bộ tải bên trong cấp thấp hơn và thay thế bộ tuple bên trong hiện có bằng một tuple có một đường xuống duy nhất chỉ vào bộ tu cấp bên trong cấp thấp mới.prefixhasprefix
Để cho biết tỷ lệ kèo bóng đá tối nay Tuple trên mới có nên có tiền tố hay không và nếu vậy được đặtprefixprefixdatum
với giá trị tiền tố. Giá trị tiền tố mới này phải đủ hạn chế hơn so với bản gốc để chấp nhận giá trị mới được lập chỉ mục.prefixnnodes
23089_23148PrefixNodelabels
đến tỷ lệ kèo bóng đá tối nay mảng palloc'd giữ nhãn của họ hoặc không cần nhãn nếu không cần nhãn nút. Lưu ý rằng tổng kích thước của tuple trên mới phải không quá tổng kích thước của bộ tuple mà nó đang thay thế;Childnoden
đến chỉ mục (từ số 0) của nút sẽ liên kết xuống cấp độ bên trong cấp thấp hơn mới. BộPOSTFIXHASPREFIX
Để cho biết tỷ lệ kèo bóng đá tối nay Tuple bên trong cấp thấp hơn có nên có tiền tố hay không và nếu vậy được đặtpostfixprefixdatum
với giá trị tiền tố. Sự kết hợp của hai tiền tố này và nhãn của nút đường xuống (nếu có) phải có ý nghĩa tương tự như tiền tố ban đầu, bởi vì không có cơ hội thay đổi nhãn nút được chuyển sang tuple cấp thấp hơn, cũng như không thay đổi bất kỳ mục chỉ mục con nào.Chọn
Hàm sẽ được gọi lại với phần bên trong thay thế. Cuộc gọi đó có thể trả về tỷ lệ kèo bóng đá tối nayspgaddnode
Kết quả, nếu không có nút phù hợp nào được tạo bởispgsplittuple
Hành động. Sau cùngChọn
Phải trả vềSPGMatchNode
Để cho phép chèn xuống cấp độ tiếp theo.
PickSplit
Quyết định làm thế nào để tạo một bộ ba bên trong mới trên một tập hợp tỷ lệ kèo bóng đá tối nay bộ dữ
TheSQLTuyên bố chức năng phải trông như thế này:
Tạo hàm my_picksplit (nội bộ, nội bộ) trả về void ...
Đối số đầu tiên là con trỏ tớispgpicksplitin
C struct, chứa dữ tỷ lệ kèo bóng đá tối nay đầu vào cho hàm. Đối số thứ hai là một con trỏ tớispgpicksplitout
C struct, mà hàm phải điền vào dữ tỷ lệ kèo bóng đá tối nay kết quả.
typedef struct spgpicksplitin
ntuples
là số lượng các bộ dữ tỷ lệ kèo bóng đá tối nay lá được cung cấp.Datums
là một mảng các giá trị dữ tỷ lệ kèo bóng đá tối nay của chúng làspgconfigout
.LeafType
loại.Cấp
26325_26432
setHasprefix
Để cho biết tỷ lệ kèo bóng đá tối nay tuple bên trong mới có nên có tiền tố hay không và nếu vậy được đặtPrefixDatum
với giá trị tiền tố. Bộnnodes
Để chỉ ra số lượng nút mà Tuple bên trong mới sẽ chứa và đặtNodelabels
đến một mảng tỷ lệ kèo bóng đá tối nay giá trị nhãn của chúng hoặc không cần nhãn nếu không cần nhãn nút. BộMaptuplestonodes
cho tỷ lệ kèo bóng đá tối nay mảng cung cấp cho chỉ mục (từ 0) của nút mà mỗi tuple của lá nên được gán cho. BộLEAFTUPLEDATUMS
đến một mảng các giá trị được lưu trữ trong các bộ dữ tỷ lệ kèo bóng đá tối nay lá mới (chúng sẽ giống như đầu vàoDatums
Nếu lớp toán tử không sửa đổi dữ tỷ lệ kèo bóng đá tối nay từ cấp này sang cấp độ tiếp theo). Lưu ý rằngPickSplit
Hàm chịu trách nhiệm cho việc palloc'ing theNodelabels
, Maptuplestonodes
vàLEAFTUPLEDATUMS
27546_27556
Nếu có nhiều hơn tỷ lệ kèo bóng đá tối nay tuple được cung cấp, dự kiếnPickSplit
Hàm sẽ phân loại chúng thành nhiều hơn một nút; Nếu không, không thể chia các bộ dữ tỷ lệ kèo bóng đá tối nay lá trên nhiều trang, đó là mục đích cuối cùng của hoạt động này.PickSplit
Hàm cuối cùng đặt tất cả các bộ dữ tỷ lệ kèo bóng đá tối nay lá trong cùng một nút, mã sp-gist cốt lõi sẽ ghi đè quyết định đó và tạo ra một tuple bên trong trong đó các bộ đếm lá được gán ngẫu nhiên cho một số nút được dán nhãn giống hệt nhau. Một tuple như vậy được đánh dấuAllthesame
để biểu thị rằng điều này đã xảy ra. TheChọn
vàInside_consistent
Các chức năng phải được chăm sóc phù hợp với các bộ dữ tỷ lệ kèo bóng đá tối nay bên trong đó. Nhìn thấyPhần 65.4.3Để biết thêm thông tin.
PickSplit
chỉ có thể được áp dụng cho tỷ lệ kèo bóng đá tối nay tuple tỷ lệ kèo bóng đá tối nay lá trong trường hợpconfig
bộ chức năngLongValuesok
Để đúng và giá trị đầu vào lớn hơn tỷ lệ kèo bóng đá tối nay trang đã được cung cấp. Trong trường hợp này, điểm của hoạt động là loại bỏ tỷ lệ kèo bóng đá tối nay tiền tố và tạo ra tỷ lệ kèo bóng đá tối nay giá trị mốc thời gian mới, ngắn hơn.Phần 65.4.1Để biết thêm thông tin.
Inside_consistent
Trả về bộ nút (nhánh) để theo dõi trong quá trình tìm kiếm cây.
TheSQLTuyên bố chức năng phải trông như thế này:
Tạo hàm my_inner_consistent (nội bộ, nội bộ) trả về void ...
Đối số đầu tiên là con trỏ tớispginnerconsistentin
C struct, chứa dữ tỷ lệ kèo bóng đá tối nay đầu vào cho hàm. Đối số thứ hai là một con trỏ tớispginnerconsistentout
C struct, mà hàm phải điền vào dữ tỷ lệ kèo bóng đá tối nay kết quả.
Typedef struct spginnerconsistentin
MảngScubskeys
, độ dàiNKEYS
, mô tả (tỷ lệ kèo bóng đá tối nay) điều kiện tìm kiếm chỉ mục. Những điều kiện này được kết hợp với và - chỉ tỷ lệ kèo bóng đá tối nay mục chỉ mục đáp ứng tất cả chúng là thú vị.NKEYS
= 0 ngụ ý rằng tất cả tỷ lệ kèo bóng đá tối nay mục nhập chỉ mục đều thỏa mãn truy vấn.) Thông thường chức năng nhất quán chỉ quan tâm đếnSK_Strargety
vàsk_argument
tỷ lệ kèo bóng đá tối nay trường của mỗi mục nhập mảng, tương ứng cung cấp cho toán tử có thể lập chỉ mục và giá trị so sánh. Cụ thể, không cần thiết phải kiểm traSK_FLAGS
Để xem giá trị so sánh có phải không, bởi vì mã lõi sp-gist sẽ lọc ra tỷ lệ kèo bóng đá tối nay điều kiện đó.Tái thiết
là giá trị được xây dựng lại cho tuple cha mẹ; nó là(Datum) 0
Ở cấp độ gốc hoặc nếuInside_consistent
Hàm không cung cấp giá trị ở cấp cha mẹ.Tái thiết
luôn là củaspgconfigout
.LeafType
loại.TraversalValue
là một con trỏ tới bất kỳ dữ tỷ lệ kèo bóng đá tối nay di chuyển nào được truyền từ cuộc gọi trước đó củaInside_consistent
Về chỉ số cha mẹ hoặc null ở cấp độ gốc.Traversalmemorycontext
là bối cảnh bộ nhớ để lưu trữ tỷ lệ kèo bóng đá tối nay giá trị truyền qua đầu ra (xem bên dưới).cấp
là mức của Tuple bên trong hiện tại, bắt đầu từ 0 cho mức gốc.returnData
làTRUE
Nếu cần dữ tỷ lệ kèo bóng đá tối nay được xây dựng lại cho truy vấn này; Điều này sẽ chỉ như vậy nếuconfig
Chức năng được xác nhậnCanreturnData
. Allthesame
là đúng nếu bộ tuple bên trong hiện tại được đánh dấutất cả-same; Trong trường hợp này, tất cả tỷ lệ kèo bóng đá tối nay nút đều có cùng một nhãn (nếu có) và do đó, tất cả hoặc không ai trong số chúng khớp với truy vấn (xemPhần 65.4.3).Hasprefix
là đúng nếu bộ tple bên trong dòng điện chứa tiền tố; Nếu vậy,PrefixDatum
là giá trị của nó.nnodes
là số nút con có trong phần bên trong vàNodelabels
là một mảng của tỷ lệ kèo bóng đá tối nay giá trị nhãn của chúng hoặc null nếu tỷ lệ kèo bóng đá tối nay nút không có nhãn.
nnodes
phải được đặt thành số nút con cần được truy cập bởi tìm kiếm vàNodenumbers
phải được đặt thành một mảng tỷ lệ kèo bóng đá tối nay chỉ mục của họ. Nếu lớp toán tử theo dõi tỷ lệ kèo bóng đá tối nay cấp, SETLeveladds
đến tỷ lệ kèo bóng đá tối nay mảng có mức tăng cấp độ cần thiết khi giảm xuống mỗi nút sẽ được truy cập. .Tái thiết
đến một mảng tỷ lệ kèo bóng đá tối nay giá trị củaspgconfigout
.LeafType
Loại được xây dựng lại cho mỗi nút con được truy cập; Nếu không, rời khỏiTái thiết
như null. Nếu nó muốn truyền lại thông tin ngoài băng tần (HồiGiá trị TraverseHồi) đến mức thấp hơn của tìm kiếm cây, đặtTraversalValues
đến một mảng của tỷ lệ kèo bóng đá tối nay giá trị di chuyển thích hợp, một cho mỗi nút con được truy cập; Nếu không, rời khỏiTraversalValues
như null. Lưu ý rằngInside_consistent
Chức năng chịu trách nhiệm cho việc palloc'ing theNodenumbers
, Leveladds
, Tái thiết
vàTraversalValues
Mảng trong bối cảnh bộ nhớ hiện tại. Tuy nhiên, bất kỳ giá trị truyền qua đầu ra nào cũng được chỉ ra bởiTraversalValues
Mảng phải được phân bổ trongTraversalmemorycontext
. Mỗi giá trị đi qua phải là tỷ lệ kèo bóng đá tối nay khối palloc'd duy nhất.
Leaf_consistent
Trả về đúng nếu tỷ lệ kèo bóng đá tối nay tuple lá thỏa mãn truy vấn.
TheSQLTuyên bố chức năng phải trông như thế này:
Tạo chức năng my_leaf_consistent (nội bộ, nội bộ) Trả về Bool ...
Đối số đầu tiên là con trỏ tớispgleafconsistentin
C struct, chứa dữ tỷ lệ kèo bóng đá tối nay đầu vào cho chức năng. Đối số thứ hai là một con trỏ tớispgleafconsistentout
C struct, mà hàm phải điền vào dữ tỷ lệ kèo bóng đá tối nay kết quả.
typedef struct spgleafconsistentin
MảngScackkeys
, độ dàiNKEYS
, mô tả (tỷ lệ kèo bóng đá tối nay) điều kiện tìm kiếm chỉ mục. Những điều kiện này được kết hợp với và - chỉ tỷ lệ kèo bóng đá tối nay mục chỉ mục thỏa mãn tất cả chúng thỏa mãn truy vấn.NKEYS
= 0 ngụ ý rằng tất cả tỷ lệ kèo bóng đá tối nay mục nhập chỉ mục đều thỏa mãn truy vấn.) Thông thường chức năng nhất quán chỉ quan tâm đếnSK_STREGARY
vàsk_argument
Trường của mỗi mục nhập mảng, tương ứng cung cấp cho toán tử có thể lập chỉ mục và giá trị so sánh. Cụ thể, không cần thiết phải kiểm traSK_FLAGS
Để xem giá trị so sánh có phải là NULL hay không, vì mã lõi sp-gist sẽ lọc ra tỷ lệ kèo bóng đá tối nay điều kiện đó.Tái thiết
là giá trị được xây dựng lại cho tuple cha mẹ; nó là(Datum) 0
Ở cấp độ gốc hoặc nếuInside_consistent
Hàm không cung cấp giá trị ở cấp độ cha mẹ.Tái tạoValue
luôn luôn củaspgconfigout
.LeafType
loại.TraversalValue
là một con trỏ tới bất kỳ dữ tỷ lệ kèo bóng đá tối nay di chuyển nào được truyền từ cuộc gọi trước đó củaInside_consistent
Trên bộ chỉ số cha mẹ hoặc null ở cấp độ gốc.cấp
là mức của Tuple Lá hiện tại, bắt đầu ở mức 0 cho mức gốc.returnData
làTRUE
Nếu cần phải xây dựng lại dữ tỷ lệ kèo bóng đá tối nay cho truy vấn này; Điều này sẽ chỉ như vậy nếuconfig
Hàm xác nhậnCanreturnData
. LeafDatum
là giá trị chính củaspgconfigout
.LeafType
Được lưu trữ trong tuple lá hiện tại.
Hàm phải trả vềTRUE
Nếu tuple lá khớp với truy vấn hoặcSai
Nếu không. TrongTRUE
trường hợp, nếureturnData
làTRUE
sau đóLEAFVALUE
phải được đặt thành giá trị củaspgconfigin
.atttype
Loại ban đầu được cung cấp để được lập chỉ mục cho tuple lá này. Cũng,Recheck
có thể được đặt thànhTRUE
40031_40147
Phương thức do người dùng tùy chọn là:
Datum Compress (Datum in)
Chuyển đổi mục dữ tỷ lệ kèo bóng đá tối nay thành một định dạng phù hợp để lưu trữ vật lý trong một bộ tuple của trang chỉ mục. Nó chấp nhậnspgconfigin
.atttype
Giá trị và trả vềspgconfigout
.LeafType
Giá trị. Giá trị đầu ra không nên được nướng.
Tất cả tỷ lệ kèo bóng đá tối nay phương thức hỗ trợ SP-Gist thường được gọi trong bối cảnh bộ nhớ ngắn; đó là,currentMemoryContext
sẽ được đặt lại sau khi xử lý mỗi tuple. Do đó, không phải là rất quan trọng để lo lắng về việc mọi thứ bạn palloc.config
Phương pháp là tỷ lệ kèo bóng đá tối nay ngoại lệ: Nó nên cố gắng tránh rò rỉ bộ nhớ. Nhưng thường làconfig
Phương thức không cần làm gì ngoài việc gán tỷ lệ kèo bóng đá tối nay hằng số vào cấu trúc tham số truyền.)
Nếu cột được lập chỉ mục thuộc loại dữ tỷ lệ kèo bóng đá tối nay có kết hợp, đối chiếu chỉ mục sẽ được chuyển cho tất cả các phương thức hỗ trợ, sử dụng tiêu chuẩnpg_get_collation ()
cơ chế.