Details

      Description

      As the carpenter attempting to fix ClassNotFound issues is messing with handling missing contract atachemtns when dealing with a V4 message

      Slack Discussion

      tudor [2:08 PM]
      in corda 3 we verified transactions inside the system classloader that contained all cordapp jar
      and everything worked even if you didn’t attach all the cordapp dependencies to transactions
      people who had cordapps depend on other stuff, just didn’t do anything and the builder would just attach the cordapp jars
      now in C4 , we use the `AttachmentsClassloader` to deserialize and verify historic transactions
      and cordapps have been removed from the system classpath
      now , when you attempt to verify one of those v3 transactions, it should break with a ClassNotFound
      we have some code that intercepts ClassNotFound on tx verification and attempts to find what the tx is missing by looking through the attachments storage
      and then retries to run verification with that extra attachment

      kat [2:11 PM]
      OK, I see where the carpenter is getting in the way

      tudor [2:11 PM]
      exactly

      kat [2:11 PM]
      cant you just catch carpenting failed?

      tudor [2:11 PM]
      it fails in all sorts of random ways

      kat [2:11 PM]
      so you want a context that disables the carpenter!

      tudor [2:12 PM]
      yes

      kat [2:12 PM]
      and doesn't eat ClassNotFound

      tudor [2:12 PM]
      bingo

        Attachments

          Activity

            People

            • Assignee:
              Katelyn.Baker Katelyn Baker
              Reporter:
              Katelyn.Baker Katelyn Baker
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: