TxInfo
memoization
#4854
Merged
TxInfo
memoization
#4854
IOG Hydra / ci/hydra-build:x86_64-linux.ghc8107.checks.cardano-ledger-babbage:test:tests
succeeded
Jan 30, 2025 in 6h 5m 13s
Build succeeded
1 failed steps
Details
Failed Steps
Step 1
Derivation
/nix/store/3igv0nkny3fqc25wwhr8k8glbl8irz8d-cardano-ledger-babbage-test-tests-1.11.0.0-check.drv
Log
Running phase: unpackPhase
unpacking source archive /nix/store/ixskq9b1f7ri8zy50yx4sdrrvykfr23b-source-eras-babbage-impl-test-tests-root
source root is source-eras-babbage-impl-test-tests-root
Running phase: patchPhase
Running phase: buildPhase
/nix/store/nb8i9a6dqkv4qkz7i8ql4fn58myhvmi5-cardano-ledger-babbage-test-tests-1.11.0.0/bin:
patching script interpreter paths in /build/tmp.8lQ2mq6A90/bin
Babbage
Golden translation tests
golden/translation.cbor [✔] (3004ms)
Upgrade from Alonzo to Babbage
upgradeTxOut is preserved through serialization [✔] (245ms)
+++ OK, passed 100 tests.
upgradeTxCert is preserved through serialization [✔] (122ms)
+++ OK, passed 100 tests.
upgradeTxAuxData is preserved through serialization [✔] (1985ms)
+++ OK, passed 100 tests.
upgradeTxWits is preserved through serialization [✔] (11570ms)
+++ OK, passed 100 tests.
upgradeTxBody is preserved through serialization [✔] (12212ms)
+++ OK, passed 100 tests.
upgradeTx is preserved through serialization [✔] (24492ms)
+++ OK, passed 100 tests.
upgradeScript is preserved through serialization [✔] (719ms)
+++ OK, passed 100 tests.
From: AlonzoTxOut AlonzoEra To BabbageTxOut BabbageEra [✔] (337ms)
+++ OK, passed 100 tests.
RoundTrip
Alonzo era types
Data BabbageEra [✔] (86ms)
+++ OK, passed 100 tests.
BinaryData BabbageEra [✔] (87ms)
+++ OK, passed 100 tests.
CostModels [✔] (1117843ms)
+++ OK, passed 100 tests.
Datum doesn't roundtrip
Datum BabbageEra [‐]
# PENDING: No reason given
Core Type Families
MaryValue [✔] (4086ms)
+++ OK, passed 100 tests.
CompactForm MaryValue [✔] (14001ms)
+++ OK, passed 100 tests.
BabbageTxOut BabbageEra [✔] (351ms)
+++ OK, passed 100 tests.
ShelleyTxCert BabbageEra [✔] (116ms)
+++ OK, passed 100 tests.
PParams BabbageEra [✔] (1094838ms)
+++ OK, passed 100 tests.
PParamsUpdate BabbageEra [✔] (575280ms)
+++ OK, passed 100 tests.
AlonzoScript BabbageEra [✔] (757ms)
+++ OK, passed 100 tests.
AlonzoTxAuxData BabbageEra [✔] (7017ms)
+++ OK, passed 100 tests.
AlonzoTxWits BabbageEra [✔] (10084ms)
+++ OK, passed 100 tests.
BabbageTxBody BabbageEra [✔] (27852ms)
+++ OK, passed 100 tests.
AlonzoTx BabbageEra [✔] (43861ms)
+++ OK, passed 100 tests.
MemPack/CBOR Roundtrip BabbageTxOut BabbageEra [✔] (140ms)
+++ OK, passed 100 tests.
Core State Types
BootstrapWitness [✔] (25ms)
+++ OK, passed 100 tests.
SnapShots [✔] (82700ms)
+++ OK, passed 100 tests.
DState BabbageEra [✔] (18129ms)
+++ OK, passed 100 tests.
PState BabbageEra [✔] (53337ms)
+++ OK, passed 100 tests.
CommitteeState BabbageEra [✔] (639ms)
+++ OK, passed 100 tests.
VState BabbageEra [✔] (16789ms)
+++ OK, passed 100 tests.
CertState BabbageEra [✔] (102220ms)
+++ OK, passed 100 tests.
UTxO BabbageEra [✔] (12343ms)
+++ OK, passed 100 tests.
State Types Families
ShelleyGovState BabbageEra [✔] (3852207ms)
+++ OK, passed 100 tests.
State Types
UTxOState BabbageEra [✔] (4319883ms)
+++ OK, passed 100 tests.
EpochState BabbageEra [✔] (4462367ms)
+++ OK, passed 100 tests.
NewEpochState BabbageEra [✔] (4776747ms)
+++ OK, passed 100 tests.
Predicate Failures
ShelleyDelegPredFailure BabbageEra [✔] (5ms)
+++ OK, passed 100 tests.
ShelleyDelegsPredFailure BabbageEra [✔] (378ms)
+++ OK, passed 100 tests.
ShelleyDelplPredFailure BabbageEra [✔] (80ms)
+++ OK, passed 100 tests.
ShelleyLedgerPredFailure BabbageEra [✔] (508ms)
+++ OK, passed 100 tests.
ShelleyLedgersPredFailure BabbageEra [✔] (838ms)
+++ OK, passed 100 tests.
ShelleyPoolPredFailure BabbageEra [✔] (29ms)
+++ OK, passed 100 tests.
ShelleyPpupPredFailure BabbageEra [✔] (43ms)
+++ OK, passed 100 tests.
BabbageUtxoPredFailure BabbageEra [✔] (11332ms)
+++ OK, passed 100 tests.
BabbageUtxowPredFailure BabbageEra [✔] (1962ms)
+++ OK, passed 100 tests.
AlonzoUtxosPredFailure BabbageEra [✔] (1025ms)
+++ OK, passed 100 tests.
CDDL
Ruby-based
coin: MaryValue [✔] (2773ms)
transaction_body: Annotator (MemoBytes (BabbageTxBodyRaw BabbageEra)) [✔] (7457ms)
auxiliary_data: Annotator (MemoBytes (AlonzoTxAuxDataRaw BabbageEra)) [✔] (2642ms)
native_script: Annotator (Timelock * BabbageEra) [✔] (2726ms)
plutus_data: Annotator (MemoBytes (PlutusData BabbageEra)) [✔] (3705ms)
transaction_output: BabbageTxOut BabbageEra [✔] (2694ms)
script: Annotator (AlonzoScript BabbageEra) [✔] (2736ms)
datum_option: Datum BabbageEra [✔] (2684ms)
transaction_witness_set: Annotator (MemoBytes (AlonzoTxWitsRaw BabbageEra)) [✔] (2650ms)
protocol_param_update: BabbagePParams StrictMaybe BabbageEra [✔] (9862ms)
cost_models: CostModels [✔] (16670ms)
redeemers: Annotator (MemoBytes (RedeemersRaw BabbageEra)) [✔] (2644ms)
transaction: Annotator (AlonzoTx BabbageEra) [✔] (3218ms)
Huddle
coin: MaryValue [✔] (1ms)
transaction_body: Annotator (MemoBytes (BabbageTxBodyRaw BabbageEra)) [✔] (2564ms)
auxiliary_data: Annotator (MemoBytes (AlonzoTxAuxDataRaw BabbageEra)) [✔] (167ms)
native_script: Annotator (Timelock * BabbageEra) [✔] (73ms)
plutus_data: Annotator (MemoBytes (PlutusData BabbageEra)) [✔] (761ms)
transaction_output: BabbageTxOut BabbageEra [✔] (184ms)
script: Annotator (AlonzoScript BabbageEra) [✔] (94ms)
datum_option: Datum BabbageEra [✔] (180ms)
transaction_witness_set: Annotator (MemoBytes (AlonzoTxWitsRaw BabbageEra)) [✔] (928ms)
protocol_param_update: BabbagePParams StrictMaybe BabbageEra [✔] (11049ms)
cost_models: CostModels [✔] (231135ms)
redeemers: Annotator (MemoBytes (RedeemersRaw BabbageEra)) [✔] (378ms)
transaction: Annotator (AlonzoTx BabbageEra) [✔] (216ms)
Babbage
RoundTrip JSON
PParams BabbageEra [✔] (338321ms)
+++ OK, passed 100 tests.
Imp
ShelleyImpSpec
LEDGER
Transactions update UTxO [✔] (1209ms)
EPOCH
Runs basic transaction [✔] (10406ms)
Crosses epoch boundaries [✔] (3226ms)
UTXOW
Bootstrap Witness
Valid Witnesses [✔] (2ms)
InvalidWitnessesUTXOW [✔] (2ms)
MissingVKeyWitnessesUTXOW [✔] (1ms)
MissingScriptWitnessesUTXOW [✔] (1ms)
MissingTxBodyMetadataHash [✔]
MissingTxMetadata [✔]
ConflictingMetadataHash [✔]
ExtraneousScriptWitnessesUTXOW [✔]
UTXO
ShelleyUtxoPredFailure
ValueNotConservedUTxO [✔] (7ms)
ShelleyPureTests
StakeDistrIncludesRewards [✔] (18955ms)
+++ OK, passed 100 tests.
AllegraImpSpec
UTXOW
InvalidMetadata [✔] (3ms)
MaryImpSpec
UTXO
Mint a Token [✔] (16ms)
ShelleyUtxoPredFailure
ValueNotConservedUTxO [✔] (1ms)
AlonzoImpSpec
UTXO
Wrong network ID [✔] (1ms)
PlutusV1
Too many execution units for tx [✔] (5ms)
Insufficient collateral [✔] (12ms)
PlutusV2
Too many execution units for tx [✔] (5ms)
Insufficient collateral [✔] (4ms)
UTXOS
PlutusV1
Spending scripts with a Datum
redeemerSameAsDatum [✔] (2136ms)
purposeIsWellformedWithDatum [✔] (7414ms)
datumIsWellformed [✔] (8956ms)
inputsOutputsAreNotEmptyWithDatum [✔] (4080ms)
Valid transaction marked as invalid [✔]
Invalid transaction marked as valid [✔] (33ms)
Invalid plutus script fails in phase 2 [✔] (11ms)
Scripts pass in phase 2
purposeIsWellformedWithDatum [✔] (11ms)
datumIsWellformed [✔] (9ms)
inputsOutputsAreNotEmptyWithDatum [✔] (12ms)
No cost model [✔] (6ms)
PlutusV2
Spending scripts with a Datum
redeemerSameAsDatum [✔] (5963ms)
purposeIsWellformedWithDatum [✔] (9813ms)
datumIsWellformed [✔] (4500ms)
inputsOutputsAreNotEmptyWithDatum [✔] (5617ms)
Valid transaction marked as invalid [✔] (3ms)
Invalid transaction marked as valid [✔] (625ms)
Invalid plutus script fails in phase 2 [✔] (9ms)
Scripts pass in phase 2
purposeIsWellformedWithDatum [✔] (7ms)
datumIsWellformed [✔] (7ms)
inputsOutputsAreNotEmptyWithDatum [✔] (7ms)
No cost model [✔] (4ms)
UTXOW
Valid transactions
PlutusV1
Validating SPEND script [✔] (17ms)
Not validating SPEND script [✔] (29ms)
Validating CERT script [✔] (8ms)
Not validating CERT script [✔] (80ms)
Validating WITHDRAWAL script [✔] (6ms)
Not validating WITHDRAWAL script [✔] (59ms)
Validating MINT script [✔] (17ms)
Not validating MINT script [✔] (61ms)
PlutusV2
Validating SPEND script [✔] (15ms)
Not validating SPEND script [✔] (45ms)
Validating CERT script [✔] (25ms)
Not validating CERT script [✔] (190ms)
Validating WITHDRAWAL script [✔] (7ms)
Not validating WITHDRAWAL script [✔] (111ms)
Validating MINT script [✔] (11ms)
Not validating MINT script [✔] (130ms)
Validating scripts everywhere [‐]
# PENDING: not implemented yet
Acceptable supplimentary datum [‐]
# PENDING: not implemented yet
Multiple identical certificates [‐]
# PENDING: not implemented yet
Non-script output with datum [‐]
# PENDING: not implemented yet
Invalid transactions
Phase 1 script failure [✔] (1ms)
PlutusV1
MissingRedeemers [✔] (5ms)
MissingRequiredDatums [✔] (5ms)
NotAllowedSupplementalDatums [✔] (20ms)
PPViewHashesDontMatch
Mismatched [✔] (6ms)
Missing [✔] (6ms)
UnspendableUTxONoDatumHash [✔] (8ms)
No ExtraRedeemers on same script certificates [✔] (51ms)
Missing phase-2 script witness [✔] (12ms)
Redeemer with incorrect purpose [✔] (6ms)
Missing witness for collateral input [✔] (6ms)
Extra Redeemer
Minting [✔] (4ms)
Spending [✔] (16ms)
Multiple equal plutus-locked certs [✔] (22ms)
PlutusV2
MissingRedeemers [✔] (5ms)
MissingRequiredDatums [✔] (10ms)
NotAllowedSupplementalDatums [✔] (3ms)
PPViewHashesDontMatch
Mismatched [✔] (12ms)
Missing [✔] (7ms)
UnspendableUTxONoDatumHash [✔] (46ms)
No ExtraRedeemers on same script certificates [✔] (26ms)
Missing phase-2 script witness [✔] (17ms)
Redeemer with incorrect purpose [✔] (4ms)
Missing witness for collateral input [✔] (15ms)
BabbageImpSpec
UTXOW
MalformedScriptWitnesses [✔] (4ms)
MalformedReferenceScripts [✔]
ExtraRedeemers/RedeemerPointerPointsToNothing [✔] (5ms)
P1 reference scripts must be witnessed [✔] (1ms)
CostModels
CBOR deserialization
valid CostModels deserialize correctly, both independently and within PParamsUpdate [✔] (142468ms)
+++ OK, passed 100 tests.
CostModels with less than expected parameters within PParamsUpdate [✔] (262ms)
+++ OK, passed 100 tests.
unknown CostModels deserialize correctly within PParamsUpdate starting with Conway [✔] (39ms)
+++ OK, passed 100 tests.
applyPPUpdates [✔] (371989ms)
+++ OK, passed 100 tests.
TxWits
AlonzoTxWits deserialization
plutus scripts
fails to deserialize if fields contain an empty collection [✔] (32ms)
+++ OK, passed 100 tests.
fails to deserialize if empty or if it contains duplicates, starting with Conway [✔] (84ms)
+++ OK, passed 100 tests.
fails to deserialize if empty, starting with Conway [✔] (47ms)
+++ OK, passed 100 tests.
Finished in 21912.4593 seconds
172 examples, 0 failures, 5 pending
buildPhase completed in 6 hours 5 minutes 12 seconds
post-build-hook: upload /nix/store/05x6pzhkkhbb7i2s17ypqvclzavpwm74-cardano-ledger-babbage-test-tests-1.11.0.0-check
post-build-hook: 171172
Loading