我引用的是https://www.postgresql.org/docs/11/sql-createindex.html关于INCLUDE
clause:
在向索引添加非键列(尤其是宽列)时保持保守是明智的做法。如果索引元组超过索引类型允许的最大大小,数据插入将失败。在任何情况下,非键列都会复制索引表中的数据并使索引的大小膨胀,从而可能会减慢搜索速度。
我想知道这是什么index tuple max size
对于可能会导致插入失败的 btree 索引。
用例:我正在考虑INCLUDE
将 json 列(
它是块大小的函数,略小于 btree 索引的块大小的 1/3。对于默认的 8kB 块大小,最大值为 2704 字节:
insert into foo select string_agg(x::text,'') from generate_series(1,940) f(x);
ERROR: index row size 2728 exceeds btree version 4 maximum 2704 for index "foo_pkey"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)