I'm looking over the code in backends/access/gist, and I noticed this in gist.c, in gistdoinsert(): instup = (IndexTuple *) palloc(sizeof(IndexTuple));instup[0] = (IndexTuple) palloc(IndexTupleSize(itup));memcpy(instup[0],itup, IndexTupleSize(itup)); ret = gistlayerinsert(r, GISTP_ROOT, &instup, &len, res, giststate);if (ret & SPLITED) gistnewroot(r, instup, len); for (i = 0; i < len; i++) pfree(instup[i]);pfree(instup); I only understand maybe 5% of what's going on here, but won't it be a problem if len > 1 after the call to gistlayerinsert()? It looked like it might be possible that len > 1 if gistSplit() happens. -- Itai Zukerman <http://www.math-hat.com/~zukerman/>
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера