SmileIsThinking / Symmetric-Hash-Postgresql

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Symmetric-Hash-Postgresql

Postgresql version: 8.1.7

Four files are modified to implement symmetric hash join to replace the hybrid hash join:

In src/backend/executor/ { nodeHashJoin.c: This file implements the hybrid hash join operator. { nodeHash.c: This file implements the hash operator, which builds a hash table. The existing hybrid hash join operator expects its inner input to be a hash operator.

src/backend/optimizer/plan/ { createplan.c: This file contains code the builds plans.

src/include/nodes/ { execnodes.h: Contains the structure HashJoinState, which maintains the state of the hash join during execution.

Only backend is included in this repo. However, it's easy to recontruct HashJoinState in execnodes.h after reading the modified source code.

About


Languages

Language:C 95.5%Language:Yacc 2.0%Language:Makefile 0.7%Language:SQLPL 0.6%Language:Perl 0.3%Language:Lex 0.3%Language:Roff 0.2%Language:Shell 0.2%Language:PLpgSQL 0.1%Language:Assembly 0.0%Language:C++ 0.0%