You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@texera.apache.org by "carloea2 (via GitHub)" <gi...@apache.org> on 2026/08/31 03:28:53 UTC

[PR] fix(pyamber): reject non-string state keys [texera]

carloea2 opened a new pull request, #8216:
URL: https://github.com/apache/texera/pull/8216

   ### What changes were proposed in this PR?
   
   Reject non-string state dictionary keys before JSON serialization instead of coercing them and risking collisions.
   
   The regression covers both top-level and nested mappings.
   
   ### Any related issues, documentation, discussions?
   
   Closes #8215
   
   ### How was this PR tested?
   
   ```text
   python -c "import sys,pytest; sys.path[:0]=[r'<worktree>ambersrcmainpython',r'<main-checkout>ambersrcmainpython']; raise SystemExit(pytest.main([r'amber/src/test/python/core/models/test_state.py','-q','-p','no:cacheprovider']))"
   15 passed
   
   ruff check amber/src/main/python amber/src/test/python
   All checks passed
   
   ruff format --check amber/src/main/python amber/src/test/python
   213 files already formatted
   ```
   
   A direct runtime probe now raises:
   
   ```text
   TypeError: State dictionary keys must be strings
   ```
   
   ### Was this PR authored or co-authored using generative AI tooling?
   
   Generated-by: Codex


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@texera.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] fix(pyamber): reject non-string state keys [texera]

Posted by "codecov-commenter (via GitHub)" <gi...@apache.org>.
codecov-commenter commented on PR #8216:
URL: https://github.com/apache/texera/pull/8216#issuecomment-5473357221

   ## [Codecov](https://app.codecov.io/gh/apache/texera/pull/8216?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) Report
   :white_check_mark: All modified and coverable lines are covered by tests.
   :white_check_mark: Project coverage is 93.90%. Comparing base ([`70c2114`](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)) to head ([`fe88ab7`](https://app.codecov.io/gh/apache/texera/commit/fe88ab70261156035e4137d9985d2c99f451e35a?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)).
   
   <details><summary>Additional details and impacted files</summary>
   
   
   
   ```diff
   @@             Coverage Diff              @@
   ##               main    #8216      +/-   ##
   ============================================
   - Coverage     93.94%   93.90%   -0.04%     
     Complexity     4759     4759              
   ============================================
     Files          1185     1185              
     Lines         48069    48815     +746     
     Branches       5359     5359              
   ============================================
   + Hits          45159    45842     +683     
   - Misses         1480     1543      +63     
     Partials       1430     1430              
   ```
   
   | [Flag](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | Coverage Δ | | *Carryforward flag |
   |---|---|---|---|
   | [access-control-service](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `81.00% <ø> (ø)` | | Carriedforward from [70c2114](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   | [agent-service](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `99.32% <ø> (ø)` | | Carriedforward from [70c2114](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   | [amber](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `89.99% <ø> (ø)` | | Carriedforward from [70c2114](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   | [computing-unit-managing-service](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `73.67% <ø> (ø)` | | Carriedforward from [70c2114](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   | [config-service](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `86.86% <ø> (ø)` | | Carriedforward from [70c2114](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   | [file-service](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `87.91% <ø> (ø)` | | Carriedforward from [70c2114](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   | [frontend](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `96.49% <ø> (ø)` | | Carriedforward from [70c2114](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   | [notebook-migration-service](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `79.31% <ø> (ø)` | | Carriedforward from [70c2114](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   | [pyamber](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `97.85% <100.00%> (-1.02%)` | :arrow_down: | |
   | [workflow-compiling-service](https://app.codecov.io/gh/apache/texera/pull/8216/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `77.19% <ø> (ø)` | | Carriedforward from [70c2114](https://app.codecov.io/gh/apache/texera/commit/70c21145887920528d7d5540e3fb790b43e8b759?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   
   *This pull request uses carry forward flags. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) to find out more.
   </details>
   
   [:umbrella: View full report in Codecov by Harness](https://app.codecov.io/gh/apache/texera/pull/8216?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).   
   :loudspeaker: Have feedback on the report? [Share it here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
   <details><summary> :rocket: New features to boost your workflow: </summary>
   
   - :package: [JS Bundle Analysis](https://docs.codecov.com/docs/javascript-bundle-analysis): Save yourself from yourself by tracking and limiting bundle sizes in JS merges.
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@texera.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] fix(pyamber): reject non-string state keys [texera]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #8216:
URL: https://github.com/apache/texera/pull/8216#issuecomment-5473333636

   <!-- texera-reviewer-suggestion -->
   ### Automated Reviewer Suggestions
   
   Based on the `git blame` history of the changed files, we recommend the following reviewers:
   
   - **Contributors with relevant context:** `@aglinxinyuan`
     You can notify them by mentioning `@aglinxinyuan` in a comment.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@texera.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] feat(pyamber): reject non-string state keys [texera]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #8216:
URL: https://github.com/apache/texera/pull/8216#issuecomment-5986682401

   This pull request has been automatically marked as **stale** because it has
   not had any activity for 30 days. It will be closed in **7 days** if no
   further activity occurs.
   
   If this PR is still relevant, please:
   - Push new commits or rebase onto the latest `main`, or
   - Comment with a status update, or
   - Address any open review feedback.
   
   To exempt this PR from auto-close, a maintainer can add the `pinned` label.
   Thank you for your contribution to Apache Texera (incubating)!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@texera.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] fix(pyamber): reject non-string state keys [texera]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #8216:
URL: https://github.com/apache/texera/pull/8216#issuecomment-5473366492

   <!-- texera-benchmarks-comment -->
   ## ✅ No material benchmark regressions detected
   
   🟢 0 better · 🔴 0 worse · ⚪ 15 noise (<±5%) · 0 without baseline
   
   > Compared against main `70c2114` benchmarked on **this same runner**, so the delta is largely free of cross-runner hardware noise. The "7d avg" column still reflects the gh-pages dashboard. Treat <±5% as noise unless repeated.
   
   [Dashboard](https://apache.github.io/texera/dev/bench/) · [Run](https://github.com/apache/texera/actions/runs/33353985626)
   
   | | config | throughput | MB/s | latency | max Δ latest / 7d |
   |---|---|---:|---:|---:|---:|
   | ⚪ | bs=10 sw=10 sl=64 | 478 | 0.292 | 20,478/27,465/27,465 us | ⚪ within ±5% / 🔴 +85.7% |
   | ⚪ | bs=100 sw=10 sl=64 | 1,078 | 0.658 | 89,896/131,919/131,919 us | ⚪ within ±5% / 🔴 +30.7% |
   | ⚪ | bs=1000 sw=10 sl=64 | 1,282 | 0.783 | 779,352/823,145/823,145 us | ⚪ within ±5% / 🟢 -17.3% |
   
   <details><summary>Baseline details</summary>
   
   Latest main `70c2114` from same runner
   
   | config | metric | PR | latest main | 7d avg | Δ latest | Δ 7d |
   |---|---|---:|---:|---:|---:|---:|
   | bs=10 sw=10 sl=64 | throughput | 478 tuples/sec | 498 tuples/sec | 844.57 tuples/sec | -4.0% | -43.4% |
   | bs=10 sw=10 sl=64 | MB/s | 0.292 MB/s | 0.304 MB/s | 0.515 MB/s | -3.9% | -43.4% |
   | bs=10 sw=10 sl=64 | p50 | 20,478 us | 21,246 us | 11,837 us | -3.6% | +73.0% |
   | bs=10 sw=10 sl=64 | p95 | 27,465 us | 28,744 us | 14,788 us | -4.5% | +85.7% |
   | bs=10 sw=10 sl=64 | p99 | 27,465 us | 28,744 us | 17,651 us | -4.5% | +55.6% |
   | bs=100 sw=10 sl=64 | throughput | 1,078 tuples/sec | 1,027 tuples/sec | 1,084 tuples/sec | +5.0% | -0.6% |
   | bs=100 sw=10 sl=64 | MB/s | 0.658 MB/s | 0.627 MB/s | 0.662 MB/s | +4.9% | -0.6% |
   | bs=100 sw=10 sl=64 | p50 | 89,896 us | 92,909 us | 94,505 us | -3.2% | -4.9% |
   | bs=100 sw=10 sl=64 | p95 | 131,919 us | 126,218 us | 100,941 us | +4.5% | +30.7% |
   | bs=100 sw=10 sl=64 | p99 | 131,919 us | 126,218 us | 108,642 us | +4.5% | +21.4% |
   | bs=1000 sw=10 sl=64 | throughput | 1,282 tuples/sec | 1,243 tuples/sec | 1,119 tuples/sec | +3.1% | +14.5% |
   | bs=1000 sw=10 sl=64 | MB/s | 0.783 MB/s | 0.759 MB/s | 0.683 MB/s | +3.2% | +14.6% |
   | bs=1000 sw=10 sl=64 | p50 | 779,352 us | 803,785 us | 924,404 us | -3.0% | -15.7% |
   | bs=1000 sw=10 sl=64 | p95 | 823,145 us | 862,498 us | 967,785 us | -4.6% | -14.9% |
   | bs=1000 sw=10 sl=64 | p99 | 823,145 us | 862,498 us | 995,630 us | -4.6% | -17.3% |
   
   </details>
   
   <details><summary>Raw CSV</summary>
   
   ```csv
   config_idx,batch_size,schema_width,string_len,num_batches,total_ms,total_tuples,total_bytes,tuples_per_sec,mb_per_sec,lat_p50_us,lat_p95_us,lat_p99_us
   0,10,10,64,20,418.50,200,128000,478,0.292,20478.47,27464.60,27464.60
   1,100,10,64,20,1854.61,2000,1280000,1078,0.658,89895.93,131919.10,131919.10
   2,1000,10,64,20,15596.06,20000,12800000,1282,0.783,779352.14,823145.44,823145.44
   ```
   
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@texera.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] feat(pyamber): reject non-string state keys [texera]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] closed pull request #8216: feat(pyamber): reject non-string state keys
URL: https://github.com/apache/texera/pull/8216


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@texera.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] fix(pyamber): reject non-string state keys [texera]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #8216:
URL: https://github.com/apache/texera/pull/8216#issuecomment-5473333424

   <!-- backport-auto-label-report -->
   ### Backport auto-label report
   
   This `fix:` PR was checked against each actively-supported release branch. `release/*` labels drive the post-merge backport, so add or remove one to change where this fix lands.
   
   | Release branch | Analysis |
   | --- | --- |
   | ⚠️ `release/v1.3` | Not labeled automatically — none of the files this PR modifies exist on this branch (`amber/src/main/python/core/models/state.py`, `amber/src/test/python/core/models/test_state.py`). The fix may target code that isn't on this release, or the files were moved/renamed after the branch was cut. **Please check and add `release/v1.3` by hand if this fix should be backported here.** |
   | ✅ `release/v1.2` | Change detected on this branch — label added; this fix is queued to backport here. Requested review from @xuang7. |
   
   _[Auto-label run](https://github.com/apache/texera/actions/runs/33353975931)._


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@texera.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] feat(pyamber): reject non-string state keys [texera]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #8216:
URL: https://github.com/apache/texera/pull/8216#issuecomment-6116314115

   This pull request has been automatically closed due to 37 days of inactivity.
   If you would like to continue this work, please re-open the PR or open a new
   one referencing this. Thank you for your contribution.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@texera.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org