Skip to content
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

The GRPC server in opm produces random channel order for FBC catalogs #1069

Open
cdjohnson opened this issue Feb 22, 2023 · 2 comments
Open

Comments

@cdjohnson
Copy link
Contributor

We have a large catalog. We just converted it from sqlite to fbc:
FBC:
icr.io/cpopen/ibm-operator-catalog:latest

SQLITE:
icr.io/cpopen/ibm-operator-catalog:sqlite-latest

It looks like the order in which the channels are being returned via the GetPackage GRPC API in the FBC catalog is non-deterministic, whereas they appeared either in lexicographical ascending order or registry add <bundle> order (not sure which). This results in various clients to display the channels in a random order, whereas they were being displayed in a seemingly-sorted order before (e.g. the OpenShift Console).

To reproduce:

$ podman run -d --name catalog -p 50051:50051 "icr.io/cpopen/ibm-operator-catalog:latest"
$ grpcurl -plaintext  -d '{"name":"ibm-mq"}' localhost:50051 api.Registry/GetPackage | jq -r .channels[].csvName
ibm-mq.v2.0.8
ibm-mq.v2.1.0
ibm-mq.v1.2.0
ibm-mq.v1.6.0
ibm-mq.v1.7.0
ibm-mq.v1.8.2
ibm-mq.v1.5.0
ibm-mq.v2.2.2
ibm-mq.v2.3.0
ibm-mq.v1.0.0
ibm-mq.v1.1.0
ibm-mq.v1.3.8
ibm-mq.v1.4.0

$ grpcurl -plaintext  -d '{"name":"ibm-mq"}' localhost:50051 api.Registry/GetPackage | jq -r .channels[].csvName
ibm-mq.v1.0.0
ibm-mq.v1.1.0
ibm-mq.v1.3.8
ibm-mq.v1.4.0
ibm-mq.v1.5.0
ibm-mq.v2.2.2
ibm-mq.v2.3.0
ibm-mq.v1.2.0
ibm-mq.v1.6.0
ibm-mq.v1.7.0
ibm-mq.v1.8.2
ibm-mq.v2.0.8
ibm-mq.v2.1.0

vs the sqlite version:

$ podman run -d --name catalog -p 50051:50051 "icr.io/cpopen/ibm-operator-catalog:sqlite-latest"
$ grpcurl -plaintext  -d '{"name":"ibm-mq"}' localhost:50051 api.Registry/GetPackage | jq -r .channels[].csvName
ibm-mq.v1.0.0
ibm-mq.v1.1.0
ibm-mq.v1.2.0
ibm-mq.v1.3.8
ibm-mq.v1.4.0
ibm-mq.v1.5.0
ibm-mq.v1.6.0
ibm-mq.v1.7.0
ibm-mq.v1.8.2
ibm-mq.v2.0.7
ibm-mq.v2.1.0
ibm-mq.v2.2.2

$ grpcurl -plaintext  -d '{"name":"ibm-mq"}' localhost:50051 api.Registry/GetPackage | jq -r .channels[].csvName
ibm-mq.v1.0.0
ibm-mq.v1.1.0
ibm-mq.v1.2.0
ibm-mq.v1.3.8
ibm-mq.v1.4.0
ibm-mq.v1.5.0
ibm-mq.v1.6.0
ibm-mq.v1.7.0
ibm-mq.v1.8.2
ibm-mq.v2.0.7
ibm-mq.v2.1.0
ibm-mq.v2.2.2

@cdjohnson cdjohnson changed the title The GRPC server in opm produces random channel order The GRPC server in opm produces random channel order for FBC catalogs Feb 22, 2023
@awgreene
Copy link
Member

Thanks @cdjohnson! We'll take a closer look a this shortly.

@joelanford
Copy link
Member

anik120 added a commit to anik120/operator-lifecycle-manager that referenced this issue Feb 27, 2023
anik120 added a commit to anik120/operator-lifecycle-manager that referenced this issue Feb 27, 2023
perdasilva pushed a commit to anik120/operator-lifecycle-manager that referenced this issue Feb 28, 2023
perdasilva pushed a commit to anik120/operator-lifecycle-manager that referenced this issue Feb 28, 2023
perdasilva pushed a commit to anik120/operator-lifecycle-manager that referenced this issue Feb 28, 2023
perdasilva pushed a commit to operator-framework/operator-lifecycle-manager that referenced this issue Feb 28, 2023
perdasilva pushed a commit to perdasilva/operator-framework-olm that referenced this issue Mar 7, 2023
See operator-framework/operator-registry#1069
for more details

Signed-off-by: Anik <[email protected]>
Upstream-repository: operator-lifecycle-manager
Upstream-commit: e4b15326c297f610dbf569d771abd62a703b0eb2
perdasilva pushed a commit to perdasilva/operator-framework-olm that referenced this issue Mar 7, 2023
See operator-framework/operator-registry#1069
for more details

Signed-off-by: Anik <[email protected]>
Upstream-repository: operator-lifecycle-manager
Upstream-commit: e4b15326c297f610dbf569d771abd62a703b0eb2
anik120 added a commit to anik120/operator-framework-olm that referenced this issue Mar 15, 2023
anik120 added a commit to anik120/operator-framework-olm that referenced this issue Mar 15, 2023
anik120 added a commit to anik120/operator-framework-olm that referenced this issue Mar 15, 2023
anik120 added a commit to anik120/operator-framework-olm that referenced this issue Mar 15, 2023
…st (#2925)

See operator-framework/operator-registry#1069
for more details

Signed-off-by: Anik <[email protected]>
Upstream-repository: operator-lifecycle-manager
Upstream-commit: e4b15326c297f610dbf569d771abd62a703b0eb2
tmshort pushed a commit to tmshort/operator-framework-olm that referenced this issue Mar 15, 2023
See operator-framework/operator-registry#1069
for more details

Signed-off-by: Anik <[email protected]>
Upstream-repository: operator-lifecycle-manager
Upstream-commit: e4b15326c297f610dbf569d771abd62a703b0eb2
anik120 added a commit to anik120/operator-framework-olm that referenced this issue Mar 15, 2023
anik120 added a commit to anik120/operator-framework-olm that referenced this issue Mar 15, 2023
See operator-framework/operator-registry#1069
for more details

Signed-off-by: Anik <[email protected]>

Upstream-repository: operator-lifecycle-manager
Upstream-commit: e4b15326c297f610dbf569d771abd62a703b0eb2
anik120 added a commit to anik120/operator-framework-olm that referenced this issue Mar 22, 2023
anik120 added a commit to anik120/operator-framework-olm that referenced this issue Mar 22, 2023
See operator-framework/operator-registry#1069
for more details

Signed-off-by: Anik <[email protected]>

Upstream-repository: operator-lifecycle-manager
Upstream-commit: e4b15326c297f610dbf569d771abd62a703b0eb2
anik120 added a commit to anik120/operator-framework-olm that referenced this issue Mar 22, 2023
…st (#2925)

See operator-framework/operator-registry#1069
for more details

Signed-off-by: Anik <[email protected]>

Upstream-repository: operator-lifecycle-manager
Upstream-commit: e4b15326c297f610dbf569d771abd62a703b0eb2
tmshort pushed a commit to tmshort/operator-framework-olm that referenced this issue Mar 28, 2023
See operator-framework/operator-registry#1069
for more details

Signed-off-by: Anik <[email protected]>
Upstream-repository: operator-lifecycle-manager
Upstream-commit: e4b15326c297f610dbf569d771abd62a703b0eb2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants