Skip to content

Add redis commander for garnet#4519

Closed
Zombach wants to merge 9 commits intomicrosoft:mainfrom
Zombach:zombach/redis-commander-for-garnet
Closed

Add redis commander for garnet#4519
Zombach wants to merge 9 commits intomicrosoft:mainfrom
Zombach:zombach/redis-commander-for-garnet

Conversation

@Zombach
Copy link
Copy Markdown
Contributor

@Zombach Zombach commented Jun 14, 2024

Continuation of Add Garnet #3839

Microsoft Reviewers: Open in CodeFlow

@ghost ghost added the area-codeflow for labeling automated codeflow. intentionally a different color! label Jun 14, 2024
@dotnet-policy-service dotnet-policy-service bot added the community-contribution Indicates that the PR has been added by a community member label Jun 14, 2024
@davidfowl
Copy link
Copy Markdown
Contributor

Can we do more code sharing here?

@Zombach
Copy link
Copy Markdown
Contributor Author

Zombach commented Jun 15, 2024

Can we do more code sharing here?

Initially, I wanted to create a library project that could add a redis-commander and a couple of extension methods, and add it to Redis, Garnet, Valkey.
But I didn't quite understand where exactly (the path) to create this library. If you are satisfied with this option, then I will redo it. And I still need a hint with the location of the new library

@timheuer
Copy link
Copy Markdown
Member

How much validation have we done with Redis Commander against Garnet? Despite the claim of being Postgres compliant, at least initially when I tried, there were several things Commander (and other redis tools) weren't able to achieve (exhibited by failed connections, errors on commands, etc.). I didn't document them as I assumed Garnet's claim of 'mostly' compliant was taken to be a bit 'your mileage may vary' -- but perhaps latest versions have improved protocol support?

@Zombach
Copy link
Copy Markdown
Contributor Author

Zombach commented Jun 16, 2024

How much validation have we done with Redis Commander against Garnet? Despite the claim of being Postgres compliant, at least initially when I tried, there were several things Commander (and other redis tools) weren't able to achieve (exhibited by failed connections, errors on commands, etc.). I didn't document them as I assumed Garnet's claim of 'mostly' compliant was taken to be a bit 'your mileage may vary' -- but perhaps latest versions have improved protocol support?

Well, I made myself such a docker-compose and tested it on it
docker-compose.yml

version: "3.9"
services:
  redis:
    hostname: redis
    container_name: redis
    image: redis:latest
    ports:
      - 6379:6379

  garnet:
    hostname: garnet
    container_name: garnet
    image: ghcr.io/microsoft/garnet:latest
    ports:
      - 6380:6379

  valkey:
    hostname: valkey
    container_name: valkey
    image: valkey/valkey:latest
    ports:
      - 6381:6379
      
  redis-commander:
    image: rediscommander/redis-commander:latest
    restart: always
    environment:
      REDIS_HOSTS: redis:redis,garnet:garnet,valkey:valkey
    ports:
      - 8081:8081

image

There was only one mistake with Garnet. I was unable to add "Stream" via Redis-Commander, it gave me this error
image

And when I used redis-commander even before adding Garnet to Aspire. I couldn't connect at all.

But now after many updates. Almost everything works

@mitchdenny
Copy link
Copy Markdown
Member

Can we do more code sharing here?

I'm not sure we would want to create an interdependency between Aspire.Hosting.Redis and Aspire.Hosting.Garnet. So shared source would be the most logical option with if defs?

Maybe the cure is worse than the disease?

@davidfowl
Copy link
Copy Markdown
Contributor

We can share source, we do this today for other things in the apphost (the volume generator), seems like a cheaper way to share this as well.

@dotnet-bot
Copy link
Copy Markdown
Contributor

‼️ Found issues ‼️

Project Coverage Type Expected Actual
Microsoft.Extensions.ServiceDiscovery Branch 81 79.31 🔻
Microsoft.Extensions.ServiceDiscovery Line 81 79.01 🔻

Full code coverage report: https://dev.azure.com/dnceng-public/public/_build/results?buildId=724853&view=codecoverage-tab

@Zombach Zombach closed this Jul 9, 2024
@Zombach Zombach deleted the zombach/redis-commander-for-garnet branch July 9, 2024 08:56
@github-actions github-actions bot locked and limited conversation to collaborators Aug 8, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-codeflow for labeling automated codeflow. intentionally a different color! community-contribution Indicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants