| Bug #121565 | Severe JSON_SCHEMA_VALID regression on acyclic schemas with shared $ref references | ||
|---|---|---|---|
| Submitted: | 21 Oct 4:28 | ||
| Reporter: | C D | Email Updates: | |
| Status: | Open | Impact on me: | |
| Category: | MySQL Server: JSON | Severity: | S3 (Non-critical) |
| Version: | 9.7.2 | OS: | Oracle Linux (Oracle Linux 9.8, Docker (Windows 11/WSL2)) |
| Assigned to: | CPU Architecture: | x86 (AMD Ryzen 7 5800H, 4 vCPU, 3 GiB RAM) | |
| Tags: | json, performance, schema | ||
If the data you need to attach is more than 50MB, you should create a compressed archive of the data, split it to 50MB chunks, and upload each of them as a separate attachment.
To split a large file:
- On *nix platforms use the split command e.g.
split -b 50MB <my_large_archive> <my_split_archive_prefix> - On windows use WinZip or a similar utility to split the large file
[21 Oct 4:39]
C D
[21 Oct 4:39]
C D
Standalone Python benchmark script for reproducing the regression
Attachment: benchmark.py (text/x-python), 13.50 KiB.
[21 Oct 4:40]
C D
Raw timing data for L20 shared references (severe regression)
Attachment: schema_diamond_20_shared.json (application/json, text), 7.39 KiB.
[21 Oct 4:40]
C D
Raw timing data for L20 chain control (no regression)
Attachment: schema_diamond_20_chain_control.json (application/json, text), 7.35 KiB.
[21 Oct 4:41]
C D
Raw timing data for L16 shared references
Attachment: schema_diamond_16_shared.json (application/json, text), 7.04 KiB.
[21 Oct 4:41]
C D
Raw timing data for L16 chain control
Attachment: schema_diamond_16_chain_control.json (application/json, text), 7.10 KiB.
[21 Oct 4:41]
C D
Raw timing data for L12 shared references
Attachment: schema_diamond_12_shared.json (application/json, text), 6.60 KiB.
[21 Oct 4:41]
C D
Source-level analysis of redundant JSON Schema traversal and diagnostic evidence
Attachment: source_analysis.md (text/markdown), 6.75 KiB.
