Do not access indclass through Form_pg_index
Peter Eisentraut <peter_e@gmx.net>
Do not access indclass through Form_pg_index Normally, accessing variable-length members of catalog structures past the first one doesn't work at all. Here, it happened to work because indnatts was checked to be 1, and so the defined FormData_pg_index layout, using int2vector[1] and oidvector[1] for variable-length arrays, happened to match the actual memory layout. But it's a very fragile assumption, and it's not in a performance-critical path, so code it properly using heap_getattr() instead. bug analysis by Tom Lane
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/utils/cache/relcache.c | modified | +16 −1 |