Online Incident Troubleshooting and Retrospective for Code Review and Merge Management: Database and Operations

This category of data primarily comes from Git repositories, CI pipelines, static scanning reports, and defect databases. Daily produced documents

What this category of data looks like

This category of data primarily comes from Git repositories, CI pipelines, static scanning reports, and defect databases. Daily produced documents include merge requests, code review comments, commit records, and branch strategy descriptions. Data updates follow commit actions or occur via daily synchronization. Each data entry contains fields such as changed file list, reviewer identifier, associated defect number, build status, and more. There is no unified fixed unit, and it adapts naturally to metadata from different sources.

Data from this category is scattered across multiple tools, and update frequency changes with commit actions. Databases must support incremental synchronization mechanisms to reduce synchronization pressure. Data such as merge requests and review records are associated with multi-dimensional metadata. Indexes must be configured for associated fields to ensure response speed for core operations like change impact assessment and review comment queries. Online incident troubleshooting requires real-time pulling of the latest commits and build status. Databases must ensure low-latency read and write capabilities. Data verification logic must also be designed to avoid information misalignment between associated defects and code changes, which would reduce retrospective accuracy.

How to configure settings

The following configurations apply to FastGPT v4.17.0:

Configuration ItemRecommended ValueRationale
MONGODB_URImongodb://fastgpt:SecurePass123@db-host:27017/codereview?authSource=adminStores unstructured code metadata such as Git commit records and merge requests. Specifying an authentication source ensures access security.
PG_URLpostgresql://review_user:DBPass456@pg-host:5432/codereview_metaStores structured review comments, defect association relationships, and branch strategy data. This setup supports complex associated queries.
DB_MAX_LINK15–25Matches concurrent access demands of hundreds of daily code commits. This prevents database connection pool exhaustion.
REDIS_URLredis://:RedisPass789@redis-host:6379/1Caches frequently accessed review status and change impact range data. This reduces database read and write load.

Three common configuration errors

  • Symptom: After deploying from source code and connecting to a database deployed via Docker, code review data fails to sync to the knowledge base. Cause: The authentication source and target database for MONGODB_URI were not configured correctly, preventing reading of metadata synced from Git repositories.
  • Symptom: In scenarios with high-concurrency merge request submissions, the service throws connection timeout errors. Cause: The DB_MAX_LINK configuration value is too small, so the database connection pool cannot support concurrent access demands.
  • Symptom: Defect association information for code changes displays as empty during retrospectives. Cause: The REDIS_URL cache for associated metadata was not configured, causing the database to fail to return associated defect and change binding relationships in a timely manner during high-frequency queries.

How to confirm the configuration is correct

  • Run the built-in database connection testing tool included in FastGPT to verify that the MONGODB_URI and PG_URL configurations can normally read metadata from the corresponding data sources.
  • Check the database connection pool monitoring panel to confirm that the current active connection count does not exceed the value range set by the DB_MAX_LINK configuration.
  • Test cache hit rates in high-frequency commit scenarios to verify that the REDIS_URL configuration can normally cache frequently queried review status data.
  • Manually trigger a merge request synchronization task to confirm that data can be normally written to the database and associated with corresponding review records.

The values provided are common starting points and should be measured against the reader's own samples.

Question material comes from public community discussions. Configuration values are common starting points and should be measured against your own samples. Verified on 2026-10-19.