Lokasi ngalangkungan proxy:   [ UP ]  
[Ngawartoskeun bug]   [Panyetelan cookie]                
Skip to content
This repository was archived by the owner on May 12, 2026. It is now read-only.

[OB-2811] Disable field_caps to improve performance#1

Open
pbasgod7 wants to merge 10 commits into
mainfrom
disable-field-caps-all-fields
Open

[OB-2811] Disable field_caps to improve performance#1
pbasgod7 wants to merge 10 commits into
mainfrom
disable-field-caps-all-fields

Conversation

@pbasgod7
Copy link
Copy Markdown
Collaborator

@pbasgod7 pbasgod7 commented May 12, 2026

Problem

The Quickwit Grafana datasource plugin's _field_caps API calls cause severe performance issues on indices with many dynamic fields:

  • Response sizes up to 57 MB
  • Request times of 30+ seconds
  • Frequent 500 errors
  • Poor user experience

Related: quickwit-oss/quickwit-datasource#172

Solution

This PR patches the plugin to disable _field_caps calls entirely by modifying the getFields() method to return an empty array.

Tradeoff: Field name autocomplete is disabled. Users must manually type field names.

Changes

  • Modified src/datasource/base.ts to disable field_caps
  • Added CI/CD workflow to build and push to ECR
  • Removed plugin signature files (required for patched version)

Testing

✅ Local testing confirmed:

  • No _field_caps requests
  • Queries execute successfully
  • Response times 2-3 seconds (vs 30+ before)
  • No 500 errors

CI/CD

  • Uses gha-runner-ecr-publish (no secrets needed)
  • Builds patched plugin + Grafana Docker image
  • Pushes to ECR: grafana-quickwit
  • Image tag: 12.4.0-quickwit-0.6.0-patched-<hash>
  • Will publish to ECR automatically when merged

Deployment

ECR repository already created: iterable-infra PR #15204

Related

pbasgod7 and others added 10 commits May 12, 2026 11:05
- Disabled getFields() method that calls _field_caps API
- Returns empty array to skip autocomplete feature
- Fixes performance issues with indices containing many dynamic fields
- Related to quickwit-oss/quickwit-datasource#172
- Builds patched Quickwit datasource plugin
- Removes signature files for patched version
- Builds Grafana Docker image with patched plugin
- Pushes to ECR repository: grafana-quickwit
- Triggers on push to disable-field-caps-all-fields branch or tags
- Uses gha-runner-ecr-publish runner with existing AWS credentials
- Follows Backstage pattern for ECR authentication
- No need for AWS_ROLE_ARN secret
- Builds on push to branches or PR merge
- Manual workflow dispatch available
- Removed 'latest' tag for production safety
- Uses git tag if available (e.g., v0.6.0-patched-1)
- Falls back to SHA-based tag for untagged commits
- Matches best practice for prod/preprod deployments
- Removed unused FieldCapabilitiesResponse import
- Removed unused fieldTypeMap import
- Both were only needed for field_caps functionality
- Change from gha-runner-ecr-publish to ubuntu-latest
- Add AWS OIDC authentication with role assumption
- Requires AWS_ROLE_ARN secret to be configured

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@pbasgod7 pbasgod7 requested a review from phclark May 12, 2026 19:44
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant