Support per-blob queries in snippets
What does this MR do?
As per the relevant issue this MR introduces:
- [BE] Updated GraphQL schema for snippet and blobs within it
- [FE] Disabled batching for GraphQL queries within the snippet Vue application
- [FE] Per-blob query (employing updated data structure introduced in 1.) to get the blob's content
Screenshots
Note:
- discrete rendering of the blobs: all blobs' contents are fetched independently from each other in this MR
- discrete network requests to get graphql data (this MR) instead of a massive one (current
master
), containing all contents - significant decrease (1.7 MB vs. 73.4 MB) of data transferred in the network requests due to not fetching content for the too large blobs that are not rendered anyway
Before | After | |
---|---|---|
Rendering | ![]() |
![]() |
Network request | ![]() |
![]() |
Since multi-file snippets are still behind the feature flag (:snippet_multiple_files
), there's no changelog entry provided
Does this MR meet the acceptance criteria?
Conformity
- [-] Changelog entry feature flag
- [-] Documentation (if required) feature flag
-
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
References #254198 (closed)
Edited by Peter Leitzen