mirror of
https://github.com/hyperdxio/hyperdx
synced 2026-04-21 13:37:15 +00:00
## Summary
Improve the materialized column optimization by allowing it to be applied when `WITH` clauses are expression aliases (i.e., `isSubquery: false`). Previously, any `WITH` clause would disable this optimization. This change ensures that materialized columns are still considered for performance benefits when the `WITH` clause does not represent a subquery.
### Screenshots or video
| Before | After |
| :----- | :---- |
| | |
### How to test locally or on Vercel
1. Create a ClickHouse table with a materialized column, e.g.:
```sql
ALTER TABLE otel_logs ADD COLUMN awesome_attribute String MATERIALIZED LogAttributes['awesome_attribute']
```
2. Open the Explore view for logs (`/search`)
3. Add a filter for `awesome_attribute` (or `LogAttributes['awesome_attribute']`)
4. Inspect the POST body of `/clickhouse-proxy` requests in the network tab:
- Before fix: The histogram (time chart) query contains `LogAttributes['awesome_attribute']` (full map scan), while the search results query correctly uses `awesome_attribute`.
- After fix: Both the histogram and search results queries use `awesome_attribute` (the materialized column).
### References
- Linear Issue: #1957
- Related PRs:
96 lines
1.3 KiB
Text
96 lines
1.3 KiB
Text
# Claude Code user-local settings (not project config)
|
|
.claude/settings.local.json
|
|
|
|
# Override global .gitignore to track project-level AI tooling configs
|
|
!.cursor
|
|
!.cursor/mcp.json
|
|
.worktrees
|
|
|
|
# Playwright MCP scratch files
|
|
seed.spec.ts
|
|
specs/
|
|
|
|
# misc
|
|
**/.DS_Store
|
|
**/*.pem
|
|
**/keys
|
|
|
|
# logs
|
|
**/*.log
|
|
**/npm-debug.log*
|
|
**/lerna-debug.log*
|
|
|
|
# yarn
|
|
**/yarn-debug.log*
|
|
**/yarn-error.log*
|
|
.yarn/*
|
|
!.yarn/cache
|
|
!.yarn/patches
|
|
!.yarn/plugins
|
|
!.yarn/releases
|
|
!.yarn/sdks
|
|
!.yarn/versions
|
|
|
|
# dotenv environment variable files
|
|
**/.env.development.local
|
|
**/.env.test.local
|
|
**/.env.production.local
|
|
**/.env.local
|
|
**/.dockerhub.env
|
|
**/.ghcr.env
|
|
|
|
# Next.js build output
|
|
packages/app/.next
|
|
packages/app/.pnp
|
|
packages/app/.pnp.js
|
|
packages/app/.vercel
|
|
packages/app/coverage
|
|
packages/app/out
|
|
packages/app/tmp
|
|
packages/app/next-env.d.ts
|
|
|
|
# optional npm cache directory
|
|
**/.npm
|
|
package-lock.json
|
|
|
|
# dependency directories
|
|
**/node_modules
|
|
|
|
# build output
|
|
**/dist
|
|
**/build
|
|
**/tsconfig.tsbuildinfo
|
|
|
|
# jest coverage report
|
|
**/coverage
|
|
|
|
# e2e
|
|
e2e/cypress/screenshots/
|
|
e2e/cypress/videos/
|
|
e2e/cypress/results
|
|
|
|
# playwright
|
|
**/test-results/
|
|
**/playwright-report/
|
|
**/playwright/.cache/
|
|
**/.auth/
|
|
|
|
# storybook
|
|
**/storybook-static/
|
|
|
|
# scripts
|
|
scripts/*.csv
|
|
**/venv
|
|
**/__pycache__/
|
|
*.py[cod]
|
|
*$py.class
|
|
|
|
# docker
|
|
docker-compose.prod.yml
|
|
.volumes
|
|
|
|
# NX
|
|
.nx/
|
|
|
|
# webstorm
|
|
.idea
|