ఇండెక్స్ అవినీతి పరిష్కారంతో PostgreSQL 14.4 నవీకరణ

PostgreSQL DBMS 14.4 యొక్క దిద్దుబాటు విడుదల సృష్టించబడింది, ఇది ఒక తీవ్రమైన సమస్యను తొలగిస్తుంది, ఇది నిర్దిష్ట పరిస్థితులలో, “ఇండెక్స్‌ను ఏకకాలంలో సృష్టించు” మరియు “REINDEX ఏకకాలంలో” ఆదేశాలను అమలు చేస్తున్నప్పుడు సూచికలలో అదృశ్య డేటా అవినీతికి దారి తీస్తుంది. పేర్కొన్న ఆదేశాలను ఉపయోగించి సృష్టించబడిన సూచికలలో, కొన్ని రికార్డులు పరిగణనలోకి తీసుకోబడకపోవచ్చు, ఇది సమస్యాత్మక సూచికలతో కూడిన SELECT ప్రశ్నలను అమలు చేస్తున్నప్పుడు తప్పిపోయిన అడ్డు వరుసలకు దారి తీస్తుంది.

B-tree సూచికలు దెబ్బతిన్నాయో లేదో తెలుసుకోవడానికి, మీరు “pg_amcheck –heapallindexed db_name” ఆదేశాన్ని ఉపయోగించవచ్చు. లోపాలు గుర్తించబడితే లేదా ఇతర రకాల సూచికలతో (GiST, GIN, మొదలైనవి) మునుపటి విడుదలలలో “ఏకకాలంలో ఇండెక్స్‌ని సృష్టించండి” మరియు “REINDEX ఏకకాలంలో” కమాండ్‌లు ఉపయోగించబడితే, వెర్షన్ 14.4కి అప్‌డేట్ చేసిన తర్వాత, రీఇండెక్సింగ్ చేయమని సిఫార్సు చేయబడింది “reindexdb —all” యుటిలిటీ లేదా కమాండ్ "REINDEX ఏకకాలంలో ఇండెక్స్_పేరు."

సమస్య 14.x బ్రాంచ్‌ను మాత్రమే ప్రభావితం చేస్తుంది, ఇందులో వాక్యూమ్ ఆపరేషన్ చేస్తున్నప్పుడు "ఇండెక్స్ ఏకకాలంలో సృష్టించు" మరియు "రెయిన్‌డెక్స్ ఏకకాలంలో" అమలుతో అనుబంధించబడిన కొన్ని లావాదేవీలను మినహాయించే ఆప్టిమైజేషన్‌లు ఉన్నాయి. ఈ ఆప్టిమైజేషన్ల ఫలితంగా, ఏకకాలంలో మోడ్‌లో సృష్టించబడిన సూచికలు ఇండెక్స్ సృష్టి సమయంలో నవీకరించబడిన లేదా కత్తిరించబడిన కొన్ని టూపుల్‌లను హీప్ మెమరీలో చేర్చలేదు.

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి