-
Notifications
You must be signed in to change notification settings - Fork 865
feat(gzip): add gzip configuration support and update default settings #2867
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2867 +/- ##
==========================================
+ Coverage 35.91% 44.96% +9.05%
==========================================
Files 69 82 +13
Lines 11576 13377 +1801
==========================================
+ Hits 4157 6015 +1858
+ Misses 7104 7015 -89
- Partials 315 347 +32
🚀 New features to boost your workflow:
|
…core components installation
… in ParallelRunner
… backoff duration
…lelRunner timeout handling
- TestRps50: reduce to 2 threads, 100 requests for conservative testing - TestRps10Burst3 & TestRpm10Burst3: reduce threads to 8, adjust request counts - Increase request interval to 200ms/thread for smoother rate limiting - Increase burst-multiplier from 1 to 2 for all non-burst tests - Extend configuration wait time to 10 seconds for rate limiter stability - These changes should help achieve target RPS ranges more consistently
- ConfigMapGzipEnvoy: reduce test cases from 4 to 2 (disable/enable only) - ConfigmapGzip: reduce test cases from 4 to 2 for faster execution - Increase Envoy config wait time from 15s to 30s for convergence - Increase HTTP config wait time from 10s to 15s for propagation - Focus on critical gzip configurations to reduce test duration - Should significantly reduce 300s timeout issues
…r accurate measurements - Introduced a configuration to disable gzip compression during rate limiting tests. - Applied the updated configuration to ensure consistent test results. - Increased wait time for configuration to take effect to improve test reliability.
- Enhanced the test to verify that gzip compression is disabled by checking the absence of the content-encoding header. - Implemented a retry mechanism to ensure the configuration takes effect, requiring three consecutive successful checks. - This change aims to increase the reliability of the tests by ensuring accurate measurement of rate limiting behavior.
…sts to ensure accurate measurements
…state - Added functionality to store and restore the original higress-config in ConfigMap and HttpRouteLimiter tests. - Implemented context-based timeouts for fetching the current configuration to ensure reliability. - This change aims to maintain test integrity by ensuring the original configuration is restored after tests are executed.
…eservation - Removed the logic for storing and restoring the original higress-config state in ConfigMap and HttpRouteLimiter tests to simplify the test flow. - Enhanced logging for better visibility during test execution. - This change aims to improve test performance and maintainability by reducing complexity.
- Updated error handling in ConfigMap and HttpRouteLimiter tests to use logging instead of fatal termination, allowing for better test flow and debugging. - Improved log messages to provide clearer context on failures during test execution. - This change aims to enhance the reliability and maintainability of the tests by providing more informative output without abrupt test failures.
…ation checks - Modified the path in the ConfigMapGlobalEnvoy test to specify the cluster in dynamic clusters, ensuring precise validation of the Envoy configuration. - This change aims to enhance the accuracy of the conformance tests by targeting the correct configuration structure.
- Added detailed logging for test case application and assertion execution in the ConfigMapGlobalEnvoy test. - Improved visibility into the test flow by logging success and failure messages, aiding in debugging and understanding test outcomes. - This change aims to provide clearer insights during test execution, enhancing overall test reliability.
- Introduced a new debug function to log detailed information about the cluster configuration during test execution, enhancing visibility into the Envoy configuration. - Updated the assertion logging to include special debugging for the per_connection_buffer_limit_bytes field, aiding in troubleshooting. - This change aims to improve the debugging process and provide clearer insights into the test outcomes, thereby enhancing overall test reliability.
- Enhanced the debug function to log the number of elements in dynamic_clusters and configs arrays, improving clarity in test output. - Adjusted configuration options for better alignment with expected parameters, including pod details and output format. - This change aims to provide more informative logs during test execution, aiding in troubleshooting and enhancing overall test reliability.
…ce readiness checks - Added functionality to wait for the backend service to be ready before sending traffic, improving test reliability. - Implemented logging for the backend service readiness and traffic request, providing clearer insights during test execution. - This change aims to ensure that the test environment is fully prepared before assertions are made, enhancing overall test accuracy.
…guration checks - Modified the test cases to include additional configuration parameters for downstream and upstream settings, improving the accuracy of Envoy configuration validation. - Adjusted idle timeout settings and added assertions for new parameters, ensuring comprehensive coverage of the configuration options. - This change aims to enhance the reliability and effectiveness of the conformance tests by validating a broader range of configuration scenarios.
- Removed redundant logging statements in the ConfigmapGzip and ConfigMapGzipEnvoy tests to enhance clarity and reduce noise during test execution. - Simplified the test case iteration by eliminating unnecessary index tracking, improving code readability. - Updated error handling to provide more concise failure messages, ensuring quicker identification of issues during test runs. - Overall, these changes aim to improve the maintainability and efficiency of the conformance test suite.
johnlanni
approved these changes
Sep 21, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Closed
Tsukilc
pushed a commit
to Tsukilc/higress
that referenced
this pull request
Sep 30, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ⅰ. Describe what this PR did
Modify the gzip configuration to be enabled by default; it was already supported but not enabled by default during installation.
Ⅱ. Does this pull request fix one issue?
fixes #2862
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews