44
Views
3
Comments
Solved
Error loading Librdkafka.dll.
Question

Hi all,

 I've been working on an outsystems kafka integration, started by using Kafka Connector and was able to make it work.

Kafka connector is using Confluent.kafka 0.11.6 which is very outdated and is not compatible with schema registry (one of my requirements) so I decided to update for the latest version 2.3.0 along side with Confluent.SchemaRegistry 2.3.0.

Doing that resulted in this error:

Invalid librdkafka version b06ff, expected at least 10502ff 

librdkafka.dll is one of the dependencies of Confluent.kafka and was also updated to version 2.3.0.


Did the next logical step, which was ditching the existing kafka connector and start from scratch, created a new extension with the right libraries. 

Different error, but still related with librdkafka:


image

The systems is complaining about a missing DLL, but I checked the files and it looks to be there:

image

Those files are symlinks that actually point to this:

image 

 

So, it actually looks ok. Tried to delete the files and publish to generate them again but...same error. Pasted the actual dll file there, did not solved .

I don't have a ton of experience with Outsystems extensions, but is actually the first time I use a library that is divided in x64 and x86 and my guess is, maybe Outsystems is not handeling it correctly.

Did a small test library class for .net 4.6.2 (same as the extension) and works fine. If I remove the librdkafka.dll from the bin folder I do have the same exact error, which makes sense...

Any ideas? 


Thanks


UserImage.jpg
Micael Mota
Solution

Was able to solve the issue.

Like I suspected, the problem was  in fact related with the x64/x86 version split. 

I can now tall for sure, Outsystems does not handle that correctly.

What I did was copying the files from the x64 folder to inside the bin and include them on the extension recourses. Then deleted the librdkafka folder and excluded it from extension recourses. 

Actually tries  both x86 and x64 files, only the x64 worked, not sure if that will be the case everywhere.  

2020-09-15 13-07-23
Kilian Hekhuis
 
MVP

Hi Micael,

Though I do not have a direct answer to your question, have you tried to ask the maintainers of the component to upgrade to a newer version?

UserImage.jpg
Micael Mota

Thats not the point, that component does not cover my needs. I just used it as proof of concept.

UserImage.jpg
Micael Mota
Solution

Was able to solve the issue.

Like I suspected, the problem was  in fact related with the x64/x86 version split. 

I can now tall for sure, Outsystems does not handle that correctly.

What I did was copying the files from the x64 folder to inside the bin and include them on the extension recourses. Then deleted the librdkafka folder and excluded it from extension recourses. 

Actually tries  both x86 and x64 files, only the x64 worked, not sure if that will be the case everywhere.  

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.