ESP-027 — DDL DROP INDEX CONCURRENTLY (PostgreSQL, opt-in)
Summary
Estender DROP INDEX com GetConcurrently / Concurrently no builder; serializar DROP INDEX CONCURRENTLY apenas para PostgreSQL conforme ADR-027. Outros dialectos: ENotSupportedException com ESP-027. Preserva o comportamento actual quando Concurrently não é usado. Complementa ADR-026 sem o revogar.
Acceptance criteria
Scope
- Interfaces
IFluentDDLDropIndexDef / IFluentDDLDropIndexBuilder com GetConcurrently e Concurrently.
DDLDropIndexSQL — ramo PostgreSQL com matriz Concurrently × IfExists; demais dialectos com Concurrently → excepção.
- Testes DUnitX em
Test Delphi/test.ddl.pas.
- Documentação em
docs-src/docs/fluentsql/guides/ddl-drop-index.md (e referências cruzadas se necessário).
Out of scope
CONCURRENTLY fora de PostgreSQL; CASCADE, múltiplos índices, MySQL ON table.
- Validação de transacção ou versão do servidor em runtime.
CHANGELOG/versão/tag só com /release.
References
Pipeline: .claude/pipeline/esp.md, adr.md, plan.md, task-input.md.
ESP-027 — DDL
DROP INDEX CONCURRENTLY(PostgreSQL, opt-in)Summary
Estender
DROP INDEXcomGetConcurrently/Concurrentlyno builder; serializarDROP INDEX CONCURRENTLYapenas para PostgreSQL conforme ADR-027. Outros dialectos:ENotSupportedExceptioncom ESP-027. Preserva o comportamento actual quandoConcurrentlynão é usado. Complementa ADR-026 sem o revogar.Acceptance criteria
esp.md(PostgreSQL; excepções noutros dialectos).Concurrentlynão é usado.Concurrentlyem PostgreSQL (com e semIfExistsconforme ADR-027); rejeição documentada noutros dialectos.npm run buildemdocs-srcquando ficheiros.mdforem alterados.ROADMAP.mdcom ESP-027 entregue apenas após/release(versão + data).Scope
IFluentDDLDropIndexDef/IFluentDDLDropIndexBuildercomGetConcurrentlyeConcurrently.DDLDropIndexSQL— ramo PostgreSQL com matrizConcurrently×IfExists; demais dialectos comConcurrently→ excepção.Test Delphi/test.ddl.pas.docs-src/docs/fluentsql/guides/ddl-drop-index.md(e referências cruzadas se necessário).Out of scope
CONCURRENTLYfora de PostgreSQL;CASCADE, múltiplos índices, MySQLON table.CHANGELOG/versão/tag só com/release.References
Pipeline:
.claude/pipeline/esp.md,adr.md,plan.md,task-input.md.