mirror of https://github.com/citusdata/citus.git
cituscitus-extensiondatabasedatabase-clusterdistributed-databasemulti-tenantpostgrespostgresqlrelational-databasescaleshardingsql
When two data types have the same binary representation, PostgreSQL may add an implicit coercion between them by wrapping a node in a relabel type. This wrapper signals that the wrapped value is completely binary compatible with the designated "final type" of the relabel node. As an example, the varchar type is often relabeled to text, since functions provided for use with text (comparisons, hashes, etc.) are completely compatible with varchar as well. The hash-partitioned codepath contains functions that verify queries actually contain an equality constraint on the partition column, but those functions expect such constraints to be comparison operations between a Var and Const. The RelabelType wrapper node causes these functions to always return false, which bypasses shard pruning. |
||
---|---|---|
src | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
Makefile | ||
Makefile.global.in | ||
autogen.sh | ||
configure | ||
configure.in | ||
prep_buildtree |