Description of problem: Using the same connection from two threads causes a segmentation fault. Version-Release number of selected component (if applicable): 4.1.8 How reproducible: Always. Steps to Reproduce: Run the following program: ---8<--- #!/usr/bin/ruby require 'ovirtsdk4' # Create the connection to the server: connection = OvirtSDK4::Connection.new( url: 'https://jenkins-vm-22.qa.lab.tlv.redhat.com/ovirt-engine/api', username: 'admin@internal', password: '123456'$q qp insecure: true, debug: true ) events_service = connection.system_service.events_service a = Thread.new do loop do events_service.list(max: 10) end end b = Thread.new do loop do events_service.list(max: 10) end end a.join b.join connection.close --->8--- Actual results: The program crashes with a segmentation fault. Expected results: The program should run without problems. Additional info: This happens because the way we use the underlying library, libcurl, doesn't support access by multiple threads.
Verified that given program runs without crashing using SDK version 4.1.9.