Scanning for Custom Serializers in the context of transaction verification is broken

Description

As part of transaction verification, we must load the custom serializers that are defined for the types that are used in the ContractStates.
This is currently done by scanning the transaction attachments for instances of `CustomSerializer`.
We use the `ClassGraph` library for that.

Apparently, even though the classloader is correctly set, the library ignores it and scans the cordapp classloader.

Note: ClassGraph is not able to understand our custom Url scheme that we use for the attachments classloader to avoid loading attachments from disk , so that is a problem for creating a quick fix.

Suggested fix: scan for custom serializers when the attachments is imported and save the serializers to the database.

Assignee

Chris Rankin

Reporter

Tudor Malene

Epic Link

None

Priority

High

Engineering Teams

Kernel

Affects versions

None

Ported to...

Corda Enterprise 4.3
Corda Enterprise 4.1 Patch
Corda Enterprise 4.2 patch
Corda 4.4

Sprint

None

Labels

Story Points / Dev Days

None

Feature Team

Kernel Group

Severity

High
Configure