-
Notifications
You must be signed in to change notification settings - Fork 973
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
Implement HEXPIRE, HEXPIREAT, HEXPIRETIME and HPERSIST #2836
Conversation
src/main/java/io/lettuce/core/api/async/RedisKeyAsyncCommands.java
Outdated
Show resolved
Hide resolved
src/test/java/io/lettuce/core/commands/KeyCommandIntegrationTests.java
Outdated
Show resolved
Hide resolved
Boy, it's good I did not implement all of them and started with an early review. Thanks Mark, let me address these and will send out another batch. |
31c1787 looks more in line with the remaining client design. Good work. |
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.
looks good.
…nstable, trying to fix it
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2836 +/- ##
============================================
- Coverage 78.71% 77.54% -1.17%
- Complexity 6786 7236 +450
============================================
Files 508 539 +31
Lines 22765 24562 +1797
Branches 2446 2609 +163
============================================
+ Hits 17919 19047 +1128
- Misses 3717 4310 +593
- Partials 1129 1205 +76 ☔ View full report in Codecov by Sentry. |
* HEXPIRE implemented with integration tests * Polishing to integration test, added unit test * Move new commands to RedisHashCommands, added HEXPIREAT, HEXPIRETIME and HPERSIST * Make sure we reset the configuration setting after the new hash commands were tested * Broke one test because of wrong configuration setting; the other is unstable, trying to fix it * Polishing imports * Polishin : Copyright change not needed
* Remove not readonly commands #2832 * Fix comment Add test * Update test * Update cicd.yaml workaround for apt update issue related to Clearsigned file * GitHub issue template polishing and stale issues action (#2833) * GitHub issue template polishing and stale issues action * Addressing feedback on message test and a better label for the stale issues * Implement HEXPIRE, HEXPIREAT, HEXPIRETIME and HPERSIST (#2836) * HEXPIRE implemented with integration tests * Polishing to integration test, added unit test * Move new commands to RedisHashCommands, added HEXPIREAT, HEXPIRETIME and HPERSIST * Make sure we reset the configuration setting after the new hash commands were tested * Broke one test because of wrong configuration setting; the other is unstable, trying to fix it * Polishing imports * Polishin : Copyright change not needed * MAke sure we wait for the check so it does not fail on the slower pipeline (#2844) * Add support for `SPUBLISH` (#2838) * implementation of SPUBLISH * sort methods by name * test cluster spublish with no redirects * use injected cluster client in RedisClusterPubSubConnectionIntegrationTests * Applying code formatter each time we run a Maven build (#2841) * Let's try this again * Add tests and templates * Merge formatting issues + formatter using wrong configuration * Update cicd.yaml the issue related apt repo has been fixed https://github.com/orgs/community/discussions/120966#discussioncomment-9211925 * Add support CLIENT KILL [MAXAGE] (#2782) * Add support CLIENT KILL [MAXAGE] * polish * address review changes * format code * Add support for `SUNSUBSCRIBE` #2759 (#2851) * Add support for `SUNSUBSCRIBE` #2759 * replace junit.Assert with assertj * Mark dnsResolver(DnsResolver) as deprecated. (#2855) * Implement HPEXPIRE, HPEXPIREAT, HPEXPIRETIME, HTTL and HPTTL (#2857) * Fixes to the hash field expiration functions * Implemented HPEXPIRE, HPEXPIREAT, HPEXPIRETIME, HTTL, HPTTL * Format the files * FIELDS keyword was introduced as per the PRD * Extend tests to include HTTL * Repair unit tests, add new ones for the new commands * Disable failing test, becasue it is very unstable * Modify return value to list of long values, fix cluster logic * Polishing * Polishing - addressed Ali's comments * Polishing: Modified by mistake * Polishing : Addressed Marks' comments * XREAD support for reading last message from stream (#2863) * Add last() utility method to the XArgs.StreamOffset * Submitted one more file by mistake * Add a `evalReadOnly` overload that accepts the script as a `String` (#2868) * Add a evalReadOnly overload that accepts the script as a String * Fix @SInCE annotation for 7.0 * Add release drafter workflow (#2820) * Release-drafter, dependabot, OCD polishing * Commitish not needed and pointing to the wrong branch anyway, also wrong version chosen * Pipeline is also very confusing as there are many pipelines, this is the INTEGRATION pipeline * Adding commitish, as it is required for filter-by-commitish * Autolabeling hits issues when using pull_request, using pull_request_target instead * pull_request_target does nothing, trying the other suggestion from release-drafter/release-drafter#1125 * Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.3 to 3.7.0 (#2873) Bumps [org.apache.maven.plugins:maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.6.3 to 3.7.0. - [Release notes](https://github.com/apache/maven-javadoc-plugin/releases) - [Commits](apache/maven-javadoc-plugin@maven-javadoc-plugin-3.6.3...maven-javadoc-plugin-3.7.0) --- updated-dependencies: - dependency-name: org.apache.maven.plugins:maven-javadoc-plugin dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump org.codehaus.mojo:flatten-maven-plugin from 1.5.0 to 1.6.0 (#2874) Bumps [org.codehaus.mojo:flatten-maven-plugin](https://github.com/mojohaus/flatten-maven-plugin) from 1.5.0 to 1.6.0. - [Release notes](https://github.com/mojohaus/flatten-maven-plugin/releases) - [Commits](mojohaus/flatten-maven-plugin@1.5.0...1.6.0) --- updated-dependencies: - dependency-name: org.codehaus.mojo:flatten-maven-plugin dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump org.apache.maven.plugins:maven-jar-plugin from 3.3.0 to 3.4.1 (#2875) Bumps [org.apache.maven.plugins:maven-jar-plugin](https://github.com/apache/maven-jar-plugin) from 3.3.0 to 3.4.1. - [Release notes](https://github.com/apache/maven-jar-plugin/releases) - [Commits](apache/maven-jar-plugin@maven-jar-plugin-3.3.0...maven-jar-plugin-3.4.1) --- updated-dependencies: - dependency-name: org.apache.maven.plugins:maven-jar-plugin dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump org.openjdk.jmh:jmh-generator-annprocess from 1.21 to 1.37 (#2876) Bumps [org.openjdk.jmh:jmh-generator-annprocess](https://github.com/openjdk/jmh) from 1.21 to 1.37. - [Commits](openjdk/jmh@1.21...1.37) --- updated-dependencies: - dependency-name: org.openjdk.jmh:jmh-generator-annprocess dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump org.apache.commons:commons-pool2 from 2.11.1 to 2.12.0 (#2877) Bumps org.apache.commons:commons-pool2 from 2.11.1 to 2.12.0. --- updated-dependencies: - dependency-name: org.apache.commons:commons-pool2 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Setting the next release to be 6.4.x as part of #2880 (#2881) * Bump version of lettuce-core to 6.4.0 * Change all @SInCE notations to match the next release 6.4.x and also fixed two typos in the API JavaDoc * Fixed formatting issues * Modify the release acrtion to call the proper maven target for release, make releasing manually available too (#2885) * Format file * Using interface method from java 8 instead of java 9 * Fix test * Revert readwrite command to the list COMMAND INFO READWRITE 1) 1) "readwrite" 2) "1" 3) 1) "loading" 2) "stale" 3) "fast" --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: atakavci <58048133+atakavci@users.noreply.github.com> Co-authored-by: Tihomir Krasimirov Mateev <tihomir.mateev@redis.com> Co-authored-by: Liming Deng <liming.d.pro@gmail.com> Co-authored-by: Wang Zhi <yfwz100@yeah.net> Co-authored-by: Luis Miguel Mejía Suárez <BalmungSan@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
As part of #2834
Implement HEXPIRE, HEXPIREAT, HEXPIRETIME and HPERSIST
Make sure that: