Hello,
After upgrading to OpenCore 1.5.12.6 (was previously 1.5.9), I am unable to edit a queue’s information. I can naviage to the “Work Item Queues” page, but clicking the edit button generates a blank page with the below error in the console. I know the error is telling me the success and failed queue fields are “undefined” but I am unsure how to fix that if I am unable to get the page to open.
Any help is appreciate. Thank you so much!
Uncaught ZodError: [
{
"code": "invalid_type",
"expected": "string",
"received": "undefined",
"path": [
"success_wiqid"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "string",
"received": "undefined",
"path": [
"failed_wiqid"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "string",
"received": "undefined",
"path": [
"success_wiq"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "string",
"received": "undefined",
"path": [
"failed_wiq"
],
"message": "Required"
}
]
at get error (B_yQ7vet.js:6:10802)
at k.parse (B_yQ7vet.js:6:12076)
at rt (75.BuMfPvAT.js:1:2754)
at app.D5gTALTN.js:2:2865
at CYBgqptl.js:1:164
at on (s017jWKJ.js:1:9951)
at it (s017jWKJ.js:1:10734)
at q (s017jWKJ.js:1:5641)
at fr (s017jWKJ.js:1:6835)
at CYBgqptl.js:1:158
Hey, I’m 99% sure this was fixed in a later release. Could you try upgrading to 1.5.12.16 and see if the issue persists?
Thanks. I ran normal-pull
to get the latest version and for some reason, opencore now just gives me a 404 not found error every time I try to visit it and the robots are offline. I’ll dig through the documentation to see if something has changed but any help is appreciated. Here’s the log that just keeps repeating over and over.
12:16:11.814 Starting @openiap/core
12:16:11.836 Done loading imports
12:16:12.108 [otel ][setdefaultlabels] ofid=35db35fca9aa27b00b61367773611248
12:16:12.115 [otel ][recheck] Tracing initialized
12:16:12.249 [DatabaseConnection ][connect] Connecting to mongodb
12:16:12.303 [DatabaseConnection ][connect] Connected to mongodb
12:16:12.409 [amqpwrapper ][connect] Connecting to rabbitmq
Error: read ECONNRESET
at TCP.onStreamRead (node:internal/stream_base_commons:218:20) {
errno: -104,
code: 'ECONNRESET',
syscall: 'read'
}
Error: read ECONNRESET
at TCP.onStreamRead (node:internal/stream_base_commons:218:20) {
errno: -104,
code: 'ECONNRESET'
syscall: 'read'
}
12:16:15.464 [index ][init] VERSION: 1.5.12.6
12:16:15.538 [SamlProvider ][configure] SAML signing certificate is not configured, saml not possible
Error: Cannot Add new Queue Consumer, not connected to rabbitmq
at amqpwrapper.AddQueueConsumer (file:///app/dist/amqpwrapper.js:320:23)
at OpenAPIProxy.configure (file:///app/dist/ee/OpenAPIProxy.js:64:53)
at file:///app/dist/index.js:277:60
12:16:16.519 [amqpwrapper ][connect] Connecting to rabbitmq
12:16:16.533 [Config ][cleanAndApply] Loaded config version 3
12:16:16.537 [license ][validate] Skip renewing license for localhost.openiap.io running as openflow.leonardsexpress.com
TypeError: Cannot read properties of undefined (reading 'prefetch')
at amqpwrapper.setPrefetch (file:///app/dist/amqpwrapper.js:266:22)
at initDatabase (file:///app/dist/index.js:141:36)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async file:///app/dist/index.js:296:14
12:16:16.540 [index ][exit] 404
The issue I saw above was because of a bug with frameMax and rabbitmq that I see you fixed already. Adding the below line to my docker compose fixed that. It seems OpenCore is still showing as 1.5.12.6 and the container shows as the latest
tag. Is there another way I can upgrade to 1.5.12.16?
- amqp_url=amqp://guest:guest@rabbitmq?frameMax=0x2000
Sorry for another reply. I manually pulled the image for 1.5.12.16 and updated my docker-compose to use that image. Unfortunately, the issue still persists where I get a blank screen when editing a work item queue.
Hmm, sorry for all the troubles… could you share the JSON of the queue with me? Either here or in a private message? (You can find the JSON document by going to the database, selecting the mq collection, and searching by name)
No worries at all. I appreciate your help. Something must have been cached because this time I didn’t get the error. I’ll mark it as the solution for now and will open another issue if it happens again. Do you know if 1.5.12.16 will be marked as latest on docker or do I need to leave that set in my docker-compose?
Thanks,
–Kyle
Normally, I release an edge version whenever I need to test an update, and once it is done, I let it run for a few weeks on https://app.openiap.io before making it the :latest
version.
But since you mentioned it, I have now pushed the latest version as :latest
.
If you are not just testing but running a development or production environment of OpenCore, I normally recommend you use a specific version for all services and not use latest
. Then, once in a while, go to https://hub.docker.com/r/openiap/openflow and see which version tag matches the :latest
tag, and update to that. You should do that for all services (Traefik, MongoDB, Redis, RabbitMQ) as well.
- About a year ago, Traefik broke gRPC in an update, and it took a while to find a working workaround.
- About 6 months ago, Redis broke its own driver, and we now need to update the AMQP connection string.
- Around once every 2 years, MongoDB releases a new major version, and if you do not manually update the feature flag in MongoDB it will break down, once it updates the major version the second time.
- And, god forbid, sometimes we make a mistake and break something that was already working.
So, it does not happen often, but it does happen. You need to balance between the convenience of ensuring you are always on a relatively new version or having to manually update to ensure security and be on a supported version.
It always breaks when it’s the least convenient (it’s never convenient!). If you manually do the updating, then at least you are aware it can break and can handle it right away.
That makes sense and I appreciate the guidance. In the past I’ve always just let the normal-up
do its pull of whatever the latest tag is just for opencore, but there’s something to be said for staying on a stable release for as long as possible to not rock the boat.
I hope you have a great day and thank you for all you do for the community.
1 Like