Skip to content

MOD-7979: Protect Against RS_FIELDMASK_ALL Mask Edge Case#5128

Merged
kei-nan merged 2 commits intomasterfrom
master_jk_check_mask_edge_case
Oct 22, 2024
Merged

MOD-7979: Protect Against RS_FIELDMASK_ALL Mask Edge Case#5128
kei-nan merged 2 commits intomasterfrom
master_jk_check_mask_edge_case

Conversation

@kei-nan
Copy link
Collaborator

@kei-nan kei-nan commented Oct 21, 2024

Check against mask edge case of being RS_FIELDMASK_ALL.

A clear and concise description of what the PR is solving, including:

  1. When translating the field mask we don't check this edge case, can lead to all sort of problems.
  2. Check this edge case, return every fieldIndex
  3. Adding the outcome (changed state)

Which issues this PR fixes

  1. MOD-7979

Main objects this PR modified

  1. Mask Translation

Mark if applicable

  • This PR introduces API changes
  • This PR introduces serialization changes

@codecov
Copy link

codecov bot commented Oct 21, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 86.29%. Comparing base (71e8c42) to head (ddee730).
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #5128      +/-   ##
==========================================
- Coverage   86.30%   86.29%   -0.01%     
==========================================
  Files         190      190              
  Lines       34604    34604              
==========================================
- Hits        29864    29863       -1     
- Misses       4740     4741       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@kei-nan kei-nan changed the title MOD-7979: Check RS_FIELDMASK_ALL Mask Edge Case MOD-7979: Protect Against RS_FIELDMASK_ALL Mask Edge Case Oct 21, 2024
@kei-nan kei-nan requested a review from nafraf October 21, 2024 12:33
@kei-nan kei-nan added this pull request to the merge queue Oct 21, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Oct 21, 2024
@kei-nan kei-nan added this pull request to the merge queue Oct 22, 2024
Merged via the queue into master with commit 2c037bc Oct 22, 2024
@kei-nan kei-nan deleted the master_jk_check_mask_edge_case branch October 22, 2024 12:41
@redisearch-backport-pull-request
Copy link
Contributor

Backport failed for 2.10, because it was unable to cherry-pick the commit(s).

Please cherry-pick the changes locally and resolve any conflicts.

git fetch origin 2.10
git worktree add -d .worktree/backport-5128-to-2.10 origin/2.10
cd .worktree/backport-5128-to-2.10
git switch --create backport-5128-to-2.10
git cherry-pick -x 2c037bca109704401b20f45d1a255da6563cc347

@redisearch-backport-pull-request
Copy link
Contributor

Backport failed for 8.0, because it was unable to cherry-pick the commit(s).

Please cherry-pick the changes locally and resolve any conflicts.

git fetch origin 8.0
git worktree add -d .worktree/backport-5128-to-8.0 origin/8.0
cd .worktree/backport-5128-to-8.0
git switch --create backport-5128-to-8.0
git cherry-pick -x 2c037bca109704401b20f45d1a255da6563cc347

kei-nan added a commit that referenced this pull request Oct 27, 2024
* * check mask edge case

* * Code Review - Round #1

(cherry picked from commit 2c037bc)
kei-nan added a commit that referenced this pull request Oct 27, 2024
* * check mask edge case

* * Code Review - Round #1

(cherry picked from commit 2c037bc)
kei-nan added a commit that referenced this pull request Nov 21, 2024
* * check mask edge case

* * Code Review - Round #1

(cherry picked from commit 2c037bc)
kei-nan added a commit that referenced this pull request Dec 10, 2024
* * check mask edge case

* * Code Review - Round #1

(cherry picked from commit 2c037bc)
kei-nan added a commit that referenced this pull request Dec 10, 2024
* * check mask edge case

* * Code Review - Round #1

(cherry picked from commit 2c037bc)
kei-nan added a commit that referenced this pull request Dec 11, 2024
* * check mask edge case

* * Code Review - Round #1

(cherry picked from commit 2c037bc)
github-merge-queue bot pushed a commit that referenced this pull request Dec 18, 2024
…returning them as valid results (#5118)

* MOD-7329: Determine if fields and documents are expired before returning them as valid results (#4858)

* * initial commit

* * fix missing case in test_expire.py

* * fix coord compilation

* * fix doc info test

* * try and fix some of the tests

* * release iterator

* * do not set expiration time in the context of the coordinator since it doesn't have an index spec

* * support c++ tests that do not provide spec for iterators

* * no point in passing timestamp in coordinator flow

* * redis 7.4 version in ci is actually 7.3, for codecov we need our tests to run

* * reduce max memory from + 200000 to 150000

* * fix test

* * cleanup code

* * Code Review: Round #1

* * Add geoshape tests, only pass index instead of pointer to filter ctx

* * Add vector test

* * Code Review - Round #2

* * try and fix tests

* * Code Review - Round #3

* * Fix Sanitizer Build

* * Code Review - Round #4

* * Minor change in debug command SET_MONITOR_EXPIRATION

* * Code Review - Round #5

* * fix tests

* * Code Review - Round #6

* * fix crash

* * fix test

* * improve field mask translation time

* fix compilation

* fix compilation error

* handle field mask of 64 bit

* * Code Review - Round #7

* * fix opening of key edge cases

* * free fieldIdToIndex array

* Code Review - Round #9

* * fix rebase conflicts
* support wild card reader filtering

* * mac os: fallback to CLOCK_REALTIME if CLOCK_REALTIME_COARSE is not defined

(cherry picked from commit 4a67a87)

* MOD-7979: Protect Against RS_FIELDMASK_ALL Mask Edge Case (#5128)

* * check mask edge case

* * Code Review - Round #1

(cherry picked from commit 2c037bc)

* [8.0] MOD-7976: Fix HFE Regression (#5336)

MOD-7976: Fix HFE Regression (#5318)

* * use new expiration API to avoid regression issues with HFE support when expiration isn't being used

* * update sdk to get new hash field expiration API

* * set monitorFieldExpiration default based on the existence of `RedisModule_HashFieldMinExpire`

* * skip field expiration tests if below 8.0 API

* * Code Review Comments
* Prevent turning on the monitorFieldExpiration if the API does not exist

* * move to run against redis 8.0

(cherry picked from commit bebdeb7)

* * rebase fixes

* * add REDISMODULE_OPEN_KEY_NOEFFECTS to OpenKey when loading json document

* * fix for test_debug_commands.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants