provide a reference for the cost model keys
so that the CDDL can refence it. closes #2634
so that the CDDL can refence it. closes #2634
costmdls = { * language => cost_model } ; New
; The keys to the cost model map are not present in the serialization.
; The values in the serialization are assumed to be ordered
; lexicographically by their correpsonding key value.
; The key values are listed in ordered_cost_model_keys.txt.
cost_model = [ 166*166 int ] ; New
transaction_metadatum =
addInteger-cpu-arguments-intercept
addInteger-cpu-arguments-slope
addInteger-memory-arguments-intercept
addInteger-memory-arguments-slope
appendByteString-cpu-arguments-intercept
appendByteString-cpu-arguments-slope
appendByteString-memory-arguments-intercept
appendByteString-memory-arguments-slope
appendString-cpu-arguments-intercept
appendString-cpu-arguments-slope
appendString-memory-arguments-intercept
appendString-memory-arguments-slope
bData-cpu-arguments
bData-memory-arguments
blake2b-cpu-arguments-intercept
blake2b-cpu-arguments-slope
blake2b-memory-arguments
cekApplyCost-exBudgetCPU
cekApplyCost-exBudgetMemory
cekBuiltinCost-exBudgetCPU
cekBuiltinCost-exBudgetMemory
cekConstCost-exBudgetCPU
cekConstCost-exBudgetMemory
cekDelayCost-exBudgetCPU
cekDelayCost-exBudgetMemory
cekForceCost-exBudgetCPU
cekForceCost-exBudgetMemory
cekLamCost-exBudgetCPU
cekLamCost-exBudgetMemory
cekStartupCost-exBudgetCPU
cekStartupCost-exBudgetMemory
cekVarCost-exBudgetCPU
cekVarCost-exBudgetMemory
chooseData-cpu-arguments
chooseData-memory-arguments
chooseList-cpu-arguments
chooseList-memory-arguments
chooseUnit-cpu-arguments
chooseUnit-memory-arguments
consByteString-cpu-arguments-intercept
consByteString-cpu-arguments-slope
consByteString-memory-arguments-intercept
consByteString-memory-arguments-slope
constrData-cpu-arguments
constrData-memory-arguments
decodeUtf8-cpu-arguments-intercept
decodeUtf8-cpu-arguments-slope
decodeUtf8-memory-arguments-intercept
decodeUtf8-memory-arguments-slope
divideInteger-cpu-arguments-constant
divideInteger-cpu-arguments-model-arguments-intercept
divideInteger-cpu-arguments-model-arguments-slope
divideInteger-memory-arguments-intercept
divideInteger-memory-arguments-minimum
divideInteger-memory-arguments-slope
encodeUtf8-cpu-arguments-intercept
encodeUtf8-cpu-arguments-slope
encodeUtf8-memory-arguments-intercept
encodeUtf8-memory-arguments-slope
equalsByteString-cpu-arguments-constant
equalsByteString-cpu-arguments-intercept
equalsByteString-cpu-arguments-slope
equalsByteString-memory-arguments
equalsData-cpu-arguments-intercept
equalsData-cpu-arguments-slope
equalsData-memory-arguments
equalsInteger-cpu-arguments-intercept
equalsInteger-cpu-arguments-slope
equalsInteger-memory-arguments
equalsString-cpu-arguments-constant
equalsString-cpu-arguments-intercept
equalsString-cpu-arguments-slope
equalsString-memory-arguments
fstPair-cpu-arguments
fstPair-memory-arguments
headList-cpu-arguments
headList-memory-arguments
iData-cpu-arguments
iData-memory-arguments
ifThenElse-cpu-arguments
ifThenElse-memory-arguments
indexByteString-cpu-arguments
indexByteString-memory-arguments
lengthOfByteString-cpu-arguments
lengthOfByteString-memory-arguments
lessThanByteString-cpu-arguments-intercept
lessThanByteString-cpu-arguments-slope
lessThanByteString-memory-arguments
lessThanEqualsByteString-cpu-arguments-intercept
lessThanEqualsByteString-cpu-arguments-slope
lessThanEqualsByteString-memory-arguments
lessThanEqualsInteger-cpu-arguments-intercept
lessThanEqualsInteger-cpu-arguments-slope
lessThanEqualsInteger-memory-arguments
lessThanInteger-cpu-arguments-intercept
lessThanInteger-cpu-arguments-slope
lessThanInteger-memory-arguments
listData-cpu-arguments
listData-memory-arguments
mapData-cpu-arguments
mapData-memory-arguments
mkCons-cpu-arguments
mkCons-memory-arguments
mkNilData-cpu-arguments
mkNilData-memory-arguments
mkNilPairData-cpu-arguments
mkNilPairData-memory-arguments
mkPairData-cpu-arguments
mkPairData-memory-arguments
modInteger-cpu-arguments-constant
modInteger-cpu-arguments-model-arguments-intercept
modInteger-cpu-arguments-model-arguments-slope
modInteger-memory-arguments-intercept
modInteger-memory-arguments-minimum
modInteger-memory-arguments-slope
multiplyInteger-cpu-arguments-intercept
multiplyInteger-cpu-arguments-slope
multiplyInteger-memory-arguments-intercept
multiplyInteger-memory-arguments-slope
nullList-cpu-arguments
nullList-memory-arguments
quotientInteger-cpu-arguments-constant
quotientInteger-cpu-arguments-model-arguments-intercept
quotientInteger-cpu-arguments-model-arguments-slope
quotientInteger-memory-arguments-intercept
quotientInteger-memory-arguments-minimum
quotientInteger-memory-arguments-slope
remainderInteger-cpu-arguments-constant
remainderInteger-cpu-arguments-model-arguments-intercept
remainderInteger-cpu-arguments-model-arguments-slope
remainderInteger-memory-arguments-intercept
remainderInteger-memory-arguments-minimum
remainderInteger-memory-arguments-slope
sha2_256-cpu-arguments-intercept
sha2_256-cpu-arguments-slope
sha2_256-memory-arguments
sha3_256-cpu-arguments-intercept
sha3_256-cpu-arguments-slope
sha3_256-memory-arguments
sliceByteString-cpu-arguments-intercept
sliceByteString-cpu-arguments-slope
sliceByteString-memory-arguments-intercept
sliceByteString-memory-arguments-slope
sndPair-cpu-arguments
sndPair-memory-arguments
subtractInteger-cpu-arguments-intercept
subtractInteger-cpu-arguments-slope
subtractInteger-memory-arguments-intercept
subtractInteger-memory-arguments-slope
tailList-cpu-arguments
tailList-memory-arguments
trace-cpu-arguments
trace-memory-arguments
unBData-cpu-arguments
unBData-memory-arguments
unConstrData-cpu-arguments
unConstrData-memory-arguments
unIData-cpu-arguments
unIData-memory-arguments
unListData-cpu-arguments
unListData-memory-arguments
unMapData-cpu-arguments
unMapData-memory-arguments
verifySignature-cpu-arguments-intercept
verifySignature-cpu-arguments-slope
verifySignature-memory-arguments
* I removed an outdated comment * I renamed datum to datum_option (since it can be a hash or a datum)
Other small changes include: * Added a trace event `TDBInitialisingFromLMDBDone`. * Initialisation from an existing LMDB database does not rely on the default `LMDBLimits` anymore, and is passed a limits argument instead. TODO: We should decide whether we want to hardcode these limits to a a substantially large one, or possibly we could link these limits to a versioning number?
add cwbtc
attempt implementation
Other small changes include: * Added a trace event `TDBInitialisingFromLMDBDone`. * Initialisation from an existing LMDB database does not rely on the default `LMDBLimits` anymore, and is passed a limits argument instead. TODO: We should decide whether we want to hardcode these limits to a a substantially large one, or possibly we could link these limits to a versioning number?
Updated crypto exchange rates chapter. I tried my best to address @rdlrt concerns. I would like to add that English is just my 3rd language, so I hope it is not too bad.
Previously, the sequence number of the database is written to disk as part of the on-disk database settings on every flush/write. Conceptually however, the settings of a database should not change on every flush or write. Instead, we make a dinstinction between on-disk database "settings" and "state", where the state can be updated in every write/flush, but the settings should generally be left untouched after database initialisation or node start-up.
Fixes #217.
This works because (a) JavaScript is ultimately single-threaded, (b) there's no execution preemption happening between a 'send' and a 'wait'.