Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(connector-corda): support JVM 17 Cordapps #3387

Conversation

petermetz
Copy link
Contributor

  1. The runner stage of the corda connector JVM image now uses an up to
    date JRE instead of the very old JDK 8 which the builder stage is still
    stuck on.
  2. This enables the connector to load and use contract .jar files which
    were built with the newer JDK as well.
  3. This is important because we would like to support as wide range of
    contract/flow invocation use cases as possible and also recently there's
    been some changes in the Corda official samples repositories where the
    contracts are being upgraded to JVM 17 as well so this will become more
    and more relevant as a use-case in the near future.

Signed-off-by: Peter Somogyvari [email protected]

Pull Request Requirements

  • Rebased onto upstream/main branch and squashed into single commit to help maintainers review it more efficient and to avoid spaghetti git commit graphs that obfuscate which commit did exactly what change, when and, why.
  • Have git sign off at the end of commit message to avoid being marked red. You can add -s flag when using git commit command. You may refer to this link for more information.
  • Follow the Commit Linting specification. You may refer to this link for more information.

Character Limit

  • Pull Request Title and Commit Subject must not exceed 72 characters (including spaces and special characters).
  • Commit Message per line must not exceed 80 characters (including spaces and special characters).

A Must Read for Beginners
For rebasing and squashing, here's a must read guide for beginners.

@petermetz petermetz enabled auto-merge (rebase) July 8, 2024 21:09
@petermetz petermetz requested a review from RafaelAPB July 8, 2024 21:15
petermetz added a commit to petermetz/cacti that referenced this pull request Jul 8, 2024
1. The test case was broken due to a number of different issues related
to the AIO image build an also the connector image build, but on top of
those problems it also had misconfiguration issues where the port number
wasn't set to what it should be for the RPC connection that the connector
container uses to establish communications with the AIO ledger image.

In order to properly verify that this test case is working, a few other
pull requests have to be merged first and container images from those
sources published as well.

In addition to the pull request dependencies we also depend on a permission
issue being resolved in the larger GitHub organization itself as well:
hyperledger/governance#299

Depends on hyperledger-cacti#3386
Depends on hyperledger-cacti#3387

Signed-off-by: Peter Somogyvari <[email protected]>
@petermetz petermetz added this to the v2.0.0-rc.3 milestone Jul 8, 2024
Copy link
Contributor

@jagpreetsinghsasan jagpreetsinghsasan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

1. The runner stage of the corda connector JVM image now uses an up to
date JRE instead of the very old JDK 8 which the builder stage is still
stuck on.
2. This enables the connector to load and use contract .jar files which
were built with the newer JDK as well.
3. This is important because we would like to support as wide range of
contract/flow invocation use cases as possible and also recently there's
been some changes in the Corda official samples repositories where the
contracts are being upgraded to JVM 17 as well so this will become more
and more relevant as a use-case in the near future.

Signed-off-by: Peter Somogyvari <[email protected]>
@petermetz petermetz force-pushed the feat-connector-corda-support-jvm-17-cordapps branch from 23dcf55 to a94888a Compare July 9, 2024 16:36
@petermetz petermetz merged commit 1994128 into hyperledger-cacti:main Jul 9, 2024
144 of 150 checks passed
@petermetz petermetz deleted the feat-connector-corda-support-jvm-17-cordapps branch July 9, 2024 16:45
petermetz added a commit to petermetz/cacti that referenced this pull request Jul 9, 2024
Primary Change:
---------------

1. The test case was broken due to a number of different issues related
to the AIO image build an also the connector image build, but on top of
those problems it also had misconfiguration issues where the port number
wasn't set to what it should be for the RPC connection that the connector
container uses to establish communications with the AIO ledger image.

Secondary Change(s):
---------------------
1. Fixed 2 bugs in the test tooling package where the port configuration
was not randomizing the exposed ports of the corda connector container and
the corda test ledger leading to accessibility issues.
2. Also introduced a createJvmInt(...) utility function on the corda connector
package which allows the flowdb test case to construct the flow invocation
requests with much less manual labor (manual coding).

In order to properly verify that this test case is working, a few other
pull requests have to be merged first and container images from those
sources published as well.

In addition to the pull request dependencies we also depend on a permission
issue being resolved in the larger GitHub organization itself as well:
hyperledger/governance#299

Depends on hyperledger-cacti#3386
Depends on hyperledger-cacti#3387

Signed-off-by: Peter Somogyvari <[email protected]>
petermetz added a commit to petermetz/cacti that referenced this pull request Jul 10, 2024
Primary Change:
---------------

1. The test case was broken due to a number of different issues related
to the AIO image build an also the connector image build, but on top of
those problems it also had misconfiguration issues where the port number
wasn't set to what it should be for the RPC connection that the connector
container uses to establish communications with the AIO ledger image.

Secondary Change(s):
---------------------
1. Fixed 2 bugs in the test tooling package where the port configuration
was not randomizing the exposed ports of the corda connector container and
the corda test ledger leading to accessibility issues.
2. Also introduced a createJvmInt(...) utility function on the corda connector
package which allows the flowdb test case to construct the flow invocation
requests with much less manual labor (manual coding).

In order to properly verify that this test case is working, a few other
pull requests have to be merged first and container images from those
sources published as well.

In addition to the pull request dependencies we also depend on a permission
issue being resolved in the larger GitHub organization itself as well:
hyperledger/governance#299

Depends on hyperledger-cacti#3386
Depends on hyperledger-cacti#3387

Signed-off-by: Peter Somogyvari <[email protected]>
petermetz added a commit to petermetz/cacti that referenced this pull request Jul 10, 2024
Primary Change:
---------------

1. The test case was broken due to a number of different issues related
to the AIO image build an also the connector image build, but on top of
those problems it also had misconfiguration issues where the port number
wasn't set to what it should be for the RPC connection that the connector
container uses to establish communications with the AIO ledger image.

Secondary Change(s):
---------------------
1. Fixed 2 bugs in the test tooling package where the port configuration
was not randomizing the exposed ports of the corda connector container and
the corda test ledger leading to accessibility issues.
2. Also introduced a createJvmInt(...) utility function on the corda connector
package which allows the flowdb test case to construct the flow invocation
requests with much less manual labor (manual coding).

In order to properly verify that this test case is working, a few other
pull requests have to be merged first and container images from those
sources published as well.

In addition to the pull request dependencies we also depend on a permission
issue being resolved in the larger GitHub organization itself as well:
hyperledger/governance#299

Depends on hyperledger-cacti#3386
Depends on hyperledger-cacti#3387

Signed-off-by: Peter Somogyvari <[email protected]>
petermetz added a commit that referenced this pull request Jul 10, 2024
Primary Change:
---------------

1. The test case was broken due to a number of different issues related
to the AIO image build an also the connector image build, but on top of
those problems it also had misconfiguration issues where the port number
wasn't set to what it should be for the RPC connection that the connector
container uses to establish communications with the AIO ledger image.

Secondary Change(s):
---------------------
1. Fixed 2 bugs in the test tooling package where the port configuration
was not randomizing the exposed ports of the corda connector container and
the corda test ledger leading to accessibility issues.
2. Also introduced a createJvmInt(...) utility function on the corda connector
package which allows the flowdb test case to construct the flow invocation
requests with much less manual labor (manual coding).

In order to properly verify that this test case is working, a few other
pull requests have to be merged first and container images from those
sources published as well.

In addition to the pull request dependencies we also depend on a permission
issue being resolved in the larger GitHub organization itself as well:
hyperledger/governance#299

Depends on #3386
Depends on #3387

Signed-off-by: Peter Somogyvari <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants