We find GIN concurrency bugs from time to time. One of the problems here is that concurrency of GIN isn't well-documented in README. So, it might be even hard to distinguish design bugs from implementation bugs.
This commit revised concurrency section in GIN README providing more details. Some examples are illustrated in ASCII art.
Also, this commit add the explanation of how is tuple layout in internal GIN B-tree page different in comparison with nbtree.
Discussion: https://postgr.es/m/CAPpHfduXR_ywyaVN4%2BOYEGaw%3DcPLzWX6RxYLBncKw8de9vOkqw%40mail.gmail.com Author: Alexander Korotkov
32ca32d0be Revise GIN README
src/backend/access/gin/README | 214 ++++++++++++++++++++++++++++++++++--------
1 file changed, 176 insertions(+), 38 deletions(-)