ServiceControl FailedImports and RavenDB Persister 3.5 vs 5

Hi
We’re using ServiceControl to get information from two different of transports: msmq and azure service bus. So per transport we have 2 instances (error and audit instances).
For the error instances it uses RavenDB 3.5 for both transport and for audit it uses RavenDB 5.0

Can I change that or is it out of my hands?

Also I have a problem with failedImports. Some messages could not be imported because a library that is apparently required by RavenDB was missing (see stacktrace below). Meanwhile, the missing library has been installed and new messages show up. But how can a retry the bulk insert, in order to see the messages in ServiceInsights?

2022-11-30 14:39:28.6759|73|Info|ServiceControl.Audit.Auditing.AuditIngestion|Ingesting messages failed
Raven.Client.Exceptions.Documents.BulkInsert.BulkInsertAbortedException: Failed to execute bulk insert ---> System.AggregateException: One or more errors occurred. ---> Raven.Client.Exceptions.Documents.BulkInsert.BulkInsertAbortedException: System.InvalidOperationException: Failed to process bulk insert. Inserted 0 items in 0 batches.
 ---> System.TypeInitializationException: The type initializer for 'Sparrow.Platform.Sodium' threw an exception.
 ---> Sparrow.Utils.IncorrectDllException: libsodium version might be invalid, missing or not usable on current platform. Initialization error could also be caused by missing 'Microsoft Visual C++ 2015 Redistributable Package' (or newer). It can be downloaded from https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads. Arch: X64, OSDesc: Microsoft Windows 10.0.17763

Hi Fabian!

For the error instances it uses RavenDB 3.5 for both transport and for audit it uses RavenDB 5.0

It’s not possible at the moment but we have work scheduled that will update the main/error instances to RavenDB 5 as well.

Please subscribe to Update the main instance peristence to use RavenDB 5 · Issue #3273 · Particular/ServiceControl · GitHub if you want to track the progress.

Also I have a problem with failedImports. Some messages could not be imported because a library that is apparently required by RavenDB was missing (see stacktrace below).

Correct, RavenDB 5 requires https://www.microsoft.com/en-us/download/details.aspx?id=53840

Did you run the ServiceControl installer on that machine? (since it should have installed it for you)

The full list of prerequisites and how to install them can be found here:

Meanwhile, the missing library has been installed and new messages show up. But how can a retry the bulk insert, in order to see the messages in ServiceInsights?

Use the instructions here to re-import the failed messages:

Just reach out again if you have any issues with the re-import.

Cheers,

Andreas

Hi Andreas

Thank you for the great support, it worked well!

Yes I did run the ServiceControl installer on that machine (outgoing/incoming traffic is blocked on that machine)

:bowing_man:

Yes I did run the ServiceControl installer on that machine (outgoing/incoming traffic is blocked on that machine)

Ah, that might explain why the prereqs weren’t there, did you get any errors, or did it silently just not install them?

/Andreas

It did silently not install them.

Got it, I have raised Installer silently skips installing prerequisites if internet access is blocked on the target machine · Issue #3277 · Particular/ServiceControl · GitHub to track that issue.

Cheers,

Andreas

1 Like