{
    "api_version": "1",
    "kind": "dse_post",
    "self": "https://update.dsesecurity.com/api/v1/posts/choose-postgresql-reindex-locking-from-the-maintenance-requirement/",
    "item": {
        "id": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/",
        "slug": "choose-postgresql-reindex-locking-from-the-maintenance-requirement",
        "url": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/",
        "alternate_urls": {
            "markdown": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement.md",
            "json": "https://update.dsesecurity.com/api/v1/posts/choose-postgresql-reindex-locking-from-the-maintenance-requirement/"
        },
        "title": "Choose PostgreSQL reindex locking from the maintenance requirement",
        "summary": "Choose an index rebuild from observed need, lock requirements, and a representative rehearsal.",
        "format": {
            "slug": "guide",
            "name": "Guide"
        },
        "priority": {
            "slug": "info",
            "name": "Information"
        },
        "featured": false,
        "image": {
            "theme": "continuity-recovery",
            "label": "Continuity & recovery",
            "alt": "Paired infrastructure paths converging on a stable recovered service.",
            "card_url": "https://update.dsesecurity.com/assets/editorial/continuity-recovery-card.webp?v=1.8.20",
            "hero_url": "https://update.dsesecurity.com/assets/editorial/continuity-recovery-hero.webp?v=1.8.20",
            "social_url": "https://update.dsesecurity.com/assets/editorial/continuity-recovery-social-v2.jpg?v=1.8.20",
            "width": 2400,
            "height": 1350
        },
        "topics": [
            {
                "slug": "business-continuity",
                "name": "Business Continuity",
                "url": "https://update.dsesecurity.com/topic/business-continuity/"
            },
            {
                "slug": "it",
                "name": "IT",
                "url": "https://update.dsesecurity.com/topic/it/"
            }
        ],
        "author": {
            "name": "DSE Security Editorial Team",
            "url": "https://update.dsesecurity.com/#editorial-team",
            "type": "Organization"
        },
        "publisher": {
            "name": "Detection Systems & Engineering",
            "url": "https://dsesecurity.com/"
        },
        "published_at": "2026-10-15T13:32:36+00:00",
        "modified_at": "2026-10-15T13:36:15+00:00",
        "reviewed_on": "2026-10-15",
        "reading_minutes": 2,
        "word_count": 238,
        "potentially_affected": "This applies to PostgreSQL 17 index-maintenance planning. The cited routine-maintenance page does not establish an index-specific repair diagnosis or guarantee a particular performance improvement.",
        "dse_recommendation": "DSE recommends stating the evidence for rebuilding an index before selecting the operation.",
        "primary_source": {
            "name": "PostgreSQL 17 — Routine Reindexing",
            "url": "https://www.postgresql.org/docs/17/routine-reindex.html",
            "published_on": null,
            "authority": "www.postgresql.org"
        },
        "publishing_principles": "https://update.dsesecurity.com/updates/dse-updates-editorial-methodology/",
        "usage_info": "https://update.dsesecurity.com/usage/",
        "copyright_notice": "Copyright © 2026 Detection Systems & Engineering. All rights reserved.",
        "content_html": "<p>Choose an index rebuild from observed need, lock requirements, and a representative rehearsal.</p>\n<h2>Source facts</h2>\n<p>PostgreSQL 17 describes periodic reindexing as useful for some index-use patterns, including B-tree pages that retain only a few keys after deletions. Reindexing is not presented as a universal scheduled fix for every index. REINDEX normally requires an ACCESS EXCLUSIVE lock; its CONCURRENTLY option instead uses a SHARE UPDATE EXCLUSIVE lock. The manual also recommends monitoring physical size for non-B-tree indexes, where bloat behavior has not been researched as thoroughly.</p>\n<p>Source: <a href=\"https://www.postgresql.org/docs/17/routine-reindex.html\">PostgreSQL 17 — Routine Reindexing</a>.</p>\n<h2>Applicability</h2>\n<p>This applies to PostgreSQL 17 index-maintenance planning. The cited routine-maintenance page does not establish an index-specific repair diagnosis or guarantee a particular performance improvement.</p>\n<h2>DSE recommendation</h2>\n<p>DSE recommends stating the evidence for rebuilding an index before selecting the operation. Record the index type, observed size or behavior, intended lock approach, maintenance window, and fallback. Have the application owner identify the operations that must continue during the work. Avoid approving a rebuild solely because an index is old. Use a representative rehearsal to decide whether the expected benefit justifies the work and whether the concurrent approach fits the actual maintenance objective.</p>\n<h2>Verification</h2>\n<p>Compare the chosen procedure on a test copy while representative application transactions run. Observe locking and completion, then compare the relevant size and query behavior. Retain both favorable and unfavorable observations, and check the exact command&#8217;s additional restrictions before scheduling production maintenance.</p>\n<h2>Official reference</h2>\n<p><a href=\"https://www.postgresql.org/docs/17/routine-reindex.html\">PostgreSQL 17 — Routine Reindexing</a>. Reviewed October 15, 2026.</p>",
        "content_text": "Choose an index rebuild from observed need, lock requirements, and a representative rehearsal.\nSource facts\nPostgreSQL 17 describes periodic reindexing as useful for some index-use patterns, including B-tree pages that retain only a few keys after deletions. Reindexing is not presented as a universal scheduled fix for every index. REINDEX normally requires an ACCESS EXCLUSIVE lock; its CONCURRENTLY option instead uses a SHARE UPDATE EXCLUSIVE lock. The manual also recommends monitoring physical size for non-B-tree indexes, where bloat behavior has not been researched as thoroughly.\nSource: PostgreSQL 17 — Routine Reindexing.\nApplicability\nThis applies to PostgreSQL 17 index-maintenance planning. The cited routine-maintenance page does not establish an index-specific repair diagnosis or guarantee a particular performance improvement.\nDSE recommendation\nDSE recommends stating the evidence for rebuilding an index before selecting the operation. Record the index type, observed size or behavior, intended lock approach, maintenance window, and fallback. Have the application owner identify the operations that must continue during the work. Avoid approving a rebuild solely because an index is old. Use a representative rehearsal to decide whether the expected benefit justifies the work and whether the concurrent approach fits the actual maintenance objective.\nVerification\nCompare the chosen procedure on a test copy while representative application transactions run. Observe locking and completion, then compare the relevant size and query behavior. Retain both favorable and unfavorable observations, and check the exact command’s additional restrictions before scheduling production maintenance.\nOfficial reference\nPostgreSQL 17 — Routine Reindexing. Reviewed October 15, 2026.",
        "content_markdown": "Choose an index rebuild from observed need, lock requirements, and a representative rehearsal.\n\n## Source facts\n\nPostgreSQL 17 describes periodic reindexing as useful for some index-use patterns, including B-tree pages that retain only a few keys after deletions. Reindexing is not presented as a universal scheduled fix for every index. REINDEX normally requires an ACCESS EXCLUSIVE lock; its CONCURRENTLY option instead uses a SHARE UPDATE EXCLUSIVE lock. The manual also recommends monitoring physical size for non-B-tree indexes, where bloat behavior has not been researched as thoroughly.\n\nSource: [PostgreSQL 17 — Routine Reindexing](https://www.postgresql.org/docs/17/routine-reindex.html).\n\n## Applicability\n\nThis applies to PostgreSQL 17 index-maintenance planning. The cited routine-maintenance page does not establish an index-specific repair diagnosis or guarantee a particular performance improvement.\n\n## DSE recommendation\n\nDSE recommends stating the evidence for rebuilding an index before selecting the operation. Record the index type, observed size or behavior, intended lock approach, maintenance window, and fallback. Have the application owner identify the operations that must continue during the work. Avoid approving a rebuild solely because an index is old. Use a representative rehearsal to decide whether the expected benefit justifies the work and whether the concurrent approach fits the actual maintenance objective.\n\n## Verification\n\nCompare the chosen procedure on a test copy while representative application transactions run. Observe locking and completion, then compare the relevant size and query behavior. Retain both favorable and unfavorable observations, and check the exact command’s additional restrictions before scheduling production maintenance.\n\n## Official reference\n\n[PostgreSQL 17 — Routine Reindexing](https://www.postgresql.org/docs/17/routine-reindex.html). Reviewed October 15, 2026."
    },
    "json_ld": {
        "@context": "https://schema.org",
        "@graph": [
            {
                "@type": "Organization",
                "@id": "https://dsesecurity.com/#organization",
                "name": "Detection Systems & Engineering",
                "alternateName": "DSE Security",
                "url": "https://dsesecurity.com/",
                "logo": {
                    "@type": "ImageObject",
                    "url": "https://update.dsesecurity.com/assets/dse-logo-20260812.png?v=1.8.20"
                }
            },
            {
                "@type": "Organization",
                "@id": "https://update.dsesecurity.com/#editorial-team",
                "name": "DSE Security Editorial Team",
                "url": "https://update.dsesecurity.com/",
                "parentOrganization": {
                    "@id": "https://dsesecurity.com/#organization"
                }
            },
            {
                "@type": "WebSite",
                "@id": "https://update.dsesecurity.com/#website",
                "name": "DSE Updates",
                "alternateName": "DSE Security Knowledge Hub",
                "url": "https://update.dsesecurity.com/",
                "inLanguage": "en-US",
                "publisher": {
                    "@id": "https://dsesecurity.com/#organization"
                },
                "potentialAction": {
                    "@type": "SearchAction",
                    "target": {
                        "@type": "EntryPoint",
                        "urlTemplate": "https://update.dsesecurity.com/?q={search_term_string}"
                    },
                    "query-input": "required name=search_term_string"
                }
            },
            {
                "@type": "WebPage",
                "@id": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/",
                "url": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/",
                "isPartOf": {
                    "@id": "https://update.dsesecurity.com/#website"
                },
                "lastReviewed": "2026-10-15"
            },
            {
                "@type": "BreadcrumbList",
                "@id": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/#breadcrumbs",
                "itemListElement": [
                    {
                        "@type": "ListItem",
                        "position": 1,
                        "name": "DSE Updates",
                        "item": "https://update.dsesecurity.com/"
                    },
                    {
                        "@type": "ListItem",
                        "position": 2,
                        "name": "Choose PostgreSQL reindex locking from the maintenance requirement",
                        "item": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/"
                    }
                ]
            },
            {
                "@type": [
                    "Article",
                    "TechArticle"
                ],
                "@id": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/#article",
                "identifier": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/",
                "url": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/",
                "headline": "Choose PostgreSQL reindex locking from the maintenance requirement",
                "description": "Choose an index rebuild from observed need, lock requirements, and a representative rehearsal.",
                "abstract": "Choose an index rebuild from observed need, lock requirements, and a representative rehearsal.",
                "articleBody": "Choose an index rebuild from observed need, lock requirements, and a representative rehearsal.\nSource facts\nPostgreSQL 17 describes periodic reindexing as useful for some index-use patterns, including B-tree pages that retain only a few keys after deletions. Reindexing is not presented as a universal scheduled fix for every index. REINDEX normally requires an ACCESS EXCLUSIVE lock; its CONCURRENTLY option instead uses a SHARE UPDATE EXCLUSIVE lock. The manual also recommends monitoring physical size for non-B-tree indexes, where bloat behavior has not been researched as thoroughly.\nSource: PostgreSQL 17 — Routine Reindexing.\nApplicability\nThis applies to PostgreSQL 17 index-maintenance planning. The cited routine-maintenance page does not establish an index-specific repair diagnosis or guarantee a particular performance improvement.\nDSE recommendation\nDSE recommends stating the evidence for rebuilding an index before selecting the operation. Record the index type, observed size or behavior, intended lock approach, maintenance window, and fallback. Have the application owner identify the operations that must continue during the work. Avoid approving a rebuild solely because an index is old. Use a representative rehearsal to decide whether the expected benefit justifies the work and whether the concurrent approach fits the actual maintenance objective.\nVerification\nCompare the chosen procedure on a test copy while representative application transactions run. Observe locking and completion, then compare the relevant size and query behavior. Retain both favorable and unfavorable observations, and check the exact command’s additional restrictions before scheduling production maintenance.\nOfficial reference\nPostgreSQL 17 — Routine Reindexing. Reviewed October 15, 2026.",
                "datePublished": "2026-10-15T13:32:36+00:00",
                "dateModified": "2026-10-15T13:36:15+00:00",
                "mainEntityOfPage": {
                    "@id": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/"
                },
                "inLanguage": "en-US",
                "isAccessibleForFree": true,
                "author": {
                    "@type": "Organization",
                    "name": "DSE Security Editorial Team",
                    "url": "https://update.dsesecurity.com/#editorial-team"
                },
                "publisher": {
                    "@id": "https://dsesecurity.com/#organization"
                },
                "image": {
                    "@type": "ImageObject",
                    "@id": "https://update.dsesecurity.com/updates/choose-postgresql-reindex-locking-from-the-maintenance-requirement/#primaryimage",
                    "url": "https://update.dsesecurity.com/assets/editorial/continuity-recovery-social-v2.jpg?v=1.8.20",
                    "contentUrl": "https://update.dsesecurity.com/assets/editorial/continuity-recovery-social-v2.jpg?v=1.8.20",
                    "width": 1200,
                    "height": 630,
                    "caption": "Choose PostgreSQL reindex locking from the maintenance requirement"
                },
                "articleSection": [
                    "Business Continuity",
                    "IT"
                ],
                "keywords": [
                    "Business Continuity",
                    "IT",
                    "Guide",
                    "Information priority"
                ],
                "genre": "Guide",
                "about": [
                    {
                        "@type": "Thing",
                        "name": "Business Continuity",
                        "url": "https://update.dsesecurity.com/topic/business-continuity/"
                    },
                    {
                        "@type": "Thing",
                        "name": "IT",
                        "url": "https://update.dsesecurity.com/topic/it/"
                    }
                ],
                "wordCount": 238,
                "timeRequired": "PT2M",
                "publishingPrinciples": "https://update.dsesecurity.com/updates/dse-updates-editorial-methodology/",
                "usageInfo": "https://update.dsesecurity.com/usage/",
                "copyrightHolder": {
                    "@id": "https://dsesecurity.com/#organization"
                },
                "copyrightNotice": "Copyright © 2026 Detection Systems & Engineering. All rights reserved.",
                "citation": {
                    "@type": "CreativeWork",
                    "name": "PostgreSQL 17 — Routine Reindexing",
                    "url": "https://www.postgresql.org/docs/17/routine-reindex.html"
                }
            }
        ]
    }
}