-
Notifications
You must be signed in to change notification settings - Fork 44
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 orion-ld suddenly dies without an error message (https destination in the subscription) #1495
Comments
There seems to be a problem with 2 subscriptions, we are currently investigating this further. Once these have been deleted, Orion-LD will run again. |
ok! |
The problem appears to be with HTTPS notifications rather than HTTP notifications. Our ingress supports at minimum TLS 1.2. Could that be the problem? |
Not a clue, but, sure, anything could trigger a crash ... |
Orion dies with a https:// end point Orion dies
Orion stays alive
|
ok, I'll implement a functest with an https subscription using keyValues, as close as possible to your "https subscription". If I'm not able to reproduce the error, I'll be back asking for more info |
Test with orion-ld:1.5.0-PRE-1551-debug
|
Please have a look at the functest and propose modifications, see if I can reproduce the error. |
If I understand the script of the function test correctly, it should be able to trigger the crash. It doesn't matter where the notification is sent to, as long as it is a valid https endpoint. It doesn't matter which data is sent there, the subscription must be triggered and the destination must be https. This causes the Orion LD to crash immediately. |
ok. interesting. |
you can also simply have it sent against https://httpbin.org/post, if the subscription is triggered, the Orion-LD crashes
It doesn't matter what is triggered. |
I tried the |
Ok, once again my procedure Create a subscription
Get this subscription
Trigger the subscription
The log to the crash:
I can crash the Orion when I trigger the subscription and it comes back immediately. |
ok, perfect, I'll try that. |
So, tried that too. Still no crash. All good :( Please have a look and let me know if I should change anything in the functest. |
OK, what does your test environment look like? In the cluster, the Orion-LD dies reproducibly with an https target I am ready to set up a Docker to test this. |
I run the broker natively, on Ubuntu 22.04, and mongo 4.4 in a docker container. It would be great for me to be able to reproduce this. Only, it seems like there are two different issues ... |
Does your mongodb has a password for orion access? Currently we have two setups (-mongocOnly):
We are investigating deeper in the differences between these setups |
No password. I'm just testing stuff locally ... |
All OK against mongo v6.0 and v7.0. |
Okay, Doker local with the following docker-compose still works cleanly. So either password or ReplikaSet
Merry Christmas, see you next week |
ok, I'm about to give up for today as well. Too much to be done for Christmas ... Merry Christmas!!! |
When triggering a http subscription, we can see a connection on the network interface:
When triggering the same subscription with https, nothing arrives on the network interface. So the crash of the orion will be before sending the notification.
|
We can reproduce the crash. :-) The problem ist the bearer token. How to reproduce: fresh setupdocker-compose.yaml:
starting the services: inserting subscription:
checking subscription:
trigger without crash:
trigger with crash:
|
It is the length of the token. |
ok! I'll merge it as soon as I can ... |
Github Actions problem solved and the PR is merged. |
Actually no, that fix isn't gonna fix this one. You are having a related problem, but, for notifications and you see a crash. Should be an easy fix though. I'll try to fix it right now |
Found and fixed the STUPID bug. |
…ader-in-notification Fixed issue #1495
PR merged |
1.6.0-PRE-1561 works fine. :-) THX => fixed |
ok! :) |
Kubernetes v1.26.9
ORION-LD fiware/orion-ld:1.4.0
3 ORION-LD Pods an a Replicaset for Mongo bitnami/mongodb:6.0.4-debian-11-r14
Loglevel DEBUG
Log:
time=Monday 11 Dec 16:21:47 2023.062Z | lvl=INFO | corr=N/A | trans=N/A | from=N/A | srv=N/A | subsrv=N/A | comp=Orion | op=orionld.cpp[1110]:main | msg=Orion Context Broker is running
time=Monday 11 Dec 16:21:47 2023.065Z | lvl=WARN | corr=N/A | trans=N/A | from=N/A | srv=N/A | subsrv=N/A | comp=Orion | op=mongocInit.cpp[58]:mongocLog | msg=MONGOC[mongoc]: Falling back to malloc for counters.
time=Monday 11 Dec 16:21:47 2023.790Z | lvl=INFO | corr=N/A | trans=N/A | from=N/A | srv=N/A | subsrv=N/A | comp=Orion | op=orionld.cpp[1302]:main | msg=Startup completed
the curl to die the Broker:
curl --location 'https://apis.captn.addix.io/ngsi-ld/v1/entityOperations/upsert?options=update' \ --header 'Content-Type: application/json' \ --header 'NGSILD-Tenant: captn' \ --header 'Accept: application/ld+json' \ --header 'Authorization: Bearer <TOKEN>' \ --data-raw '[ { "id": "urn:ngsi-ld:WeatherObserved:ADDIX:owm:5419982", "type": "WeatherObserved", "dateObserved": { "type": "Property", "value": { "@type": "DateTime", "@value": "2023-12-11T15:45:45.000Z" } }, "atmosphericPressure": { "type": "Property", "value": 996 }, "relativeHumidity": { "type": "Property", "value": 98 }, "feelLikesTemperature": { "type": "Property", "value": 3.6 }, "temperature": { "type": "Property", "value": 6.82 }, "visibility": { "type": "Property", "value": 10000 }, "windDirection": { "type": "Property", "value": 349 }, "windSpeed": { "type": "Property", "value": 5.02 }, "gustSpeed": { "type": "Property", "value": 7.97 }, "weatherType": { "type": "Property", "value": "Rain" }, "source": { "type": "Property", "value": "https://openweathermap.org" } } ] '
The text was updated successfully, but these errors were encountered: