Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
fced4f1
Initial checkin of resource monior plugin
linhuang-blockone May 15, 2020
99a4ed8
Change thread name to resmon (less than 9 chars) and set default thre…
linhuang-blockone May 16, 2020
325c259
Use constexpr for default values
linhuang-blockone May 17, 2020
093a770
Update the authority example
dixia May 21, 2020
fa8564d
update the 3rd example
dixia May 21, 2020
145e9a7
Refactor to support testability (using templates), add automatic unit…
linhuang-blockone Jun 1, 2020
15e74a4
Incorporating Kevin's comments (will refactor unit test cases and cha…
linhuang-blockone Jun 1, 2020
c8026b6
Remove the redundant permission field
dixia Jun 3, 2020
6ee988e
Add is_onblock so logic does not have to be duplicated accross multip…
heifner Jun 1, 2020
ac18305
Verify block_num of on_block trace to account for possible aborted bl…
heifner Jun 1, 2020
b4f35b8
Add new block_start signal
heifner Jun 3, 2020
3d671bf
Use new block_start signal as reliable way to clear out cached transa…
heifner Jun 3, 2020
ad0f2c5
Use new block_start signal as reliable way to clear out cached transa…
heifner Jun 3, 2020
7ea5ca6
add clear_caches to encapsulate
heifner Jun 3, 2020
c280879
Add block_start handling
heifner Jun 3, 2020
478b45f
Use common is_onblock
heifner Jun 3, 2020
8b7e53b
Remove unneeded check and comment
heifner Jun 3, 2020
c3e7b74
Refactor and add more unit test cases in C++ (will convert integratio…
linhuang-blockone Jun 3, 2020
0407e88
Merge pull request #9170 from EOSIO/onblock-trace-2.0
heifner Jun 4, 2020
67dcd74
Merge branch 'release/2.0.x' into patch-set-acc-perm-rel-2.0
dixia Jun 8, 2020
aab3c41
Merge pull request #9124 from EOSIO/patch-set-acc-perm-rel-2.0
dixia Jun 8, 2020
17f6eeb
Fix installation location of header file `eosio.version.hpp`
Jan 10, 2020
3c2ee2a
Rename file `eosio.version.in` to `version.in`
Mar 12, 2020
c931cfd
Incorporated Bucky's comments, restructured to enable to test resourc…
linhuang-blockone Jun 9, 2020
1e613c7
Revert back to whole_archive_flag for programs/nodeos/CMakeLists.txt …
linhuang-blockone Jun 9, 2020
8241509
Merge pull request #9098 from EOSIO/resource-monitor-plugin
linhuang-blockone Jun 9, 2020
d86e328
Use 80GB disk and bump Anka plugin to 0.6.1.
scottarnette Jun 12, 2020
39d8dd5
Merge pull request #9201 from EOSIO/anka-bump-r2.0
scottarnette Jun 12, 2020
de123a3
There is not always a pending block when logging pending_block_producer
heifner Jun 18, 2020
4a8d637
Merge pull request #9223 from EOSIO/pend-prod-2.0
heifner Jun 19, 2020
be079b4
Merge pull request #8432 from EOSIO/2.0.x/eosio-version-header-fix
jeffreyssmith2nd Jun 22, 2020
bc4308a
Add subjective limit to inline transaction size for nonprivileged
jgiszczak Jun 22, 2020
0263395
split transaction logging
huangminghuang Jun 22, 2020
0430f34
fix dangling reference problem
huangminghuang Jun 23, 2020
038a265
Fix another dangling reference problem
huangminghuang Jun 24, 2020
6d513eb
log transaction trying to normal logger
huangminghuang Jun 24, 2020
12f24b9
Add support to log "too many trx in process" in trx failure logger
huangminghuang Jun 24, 2020
4230e18
Restore transaction_tracing logger
huangminghuang Jun 26, 2020
f6b238b
Merge pull request #9252 from EOSIO/transaction-logging-rel-2.0.x
huangminghuang Jun 29, 2020
7656593
Move new inline limit from global property to plugin option.
jgiszczak Jun 29, 2020
3f6c4f3
Remove concurrency groups for scheduled builds
kj4ezj Jun 29, 2020
7758bc6
Merge pull request #9265 from EOSIO/zach-2.0-concurrency-group
kj4ezj Jun 30, 2020
37e38a7
Address review comments.
jgiszczak Jun 30, 2020
8b1f055
Doc changes for PR #9262
bobgt Jun 30, 2020
039efbf
Adjusted characters to fit column length
bobgt Jun 30, 2020
546fffe
Remove new test file and adjust existing inline action test.
jgiszczak Jul 1, 2020
7cc0d25
Merge pull request #9275 from EOSIO/docs/pr-9270-2.0
lparisc Jul 1, 2020
2db6cce
Revert spurious whitespace changes in genesis_state.hpp.
jgiszczak Jul 1, 2020
d8ffb58
Revert structure name change in state history abi.
jgiszczak Jul 2, 2020
96032bb
Avoid breaking consensus while checking nonprivileged inline size
jgiszczak Jul 2, 2020
4364f49
Eliminate redundant condition check.
jgiszczak Jul 2, 2020
2963e9b
Added plumbing to be able to set max_inline_action_size to be able to…
brianjohnson5972 Jul 6, 2020
c557584
Use the new plumbing to not use default values for default_max_inline…
brianjohnson5972 Jul 6, 2020
bb6c5cf
Apply subjective limit on inline actions even skipping auth checks
jgiszczak Jul 6, 2020
e032f5c
character formatting
bobgt Jul 6, 2020
22297cf
correct producer api title in swagger file
Jul 4, 2020
edcc9b7
Merge pull request #9288 from EOSIO/docs/maxinline-actions-update
lparisc Jul 6, 2020
42f3d30
Merge pull request #9290 from EOSIO/docs/pr-9279-2.0
lparisc Jul 7, 2020
411048a
Apply subjective limit to context free actions as well.
jgiszczak Jul 7, 2020
d7570f7
Added plumbing to set max_nonprivileged_inline_action_size.
brianjohnson5972 Jul 8, 2020
1c8ffc3
Added send_action_4k action.
brianjohnson5972 Jul 8, 2020
19bb2a0
Added tests for subjective and objective limits.
brianjohnson5972 Jul 8, 2020
54d69e7
Added comments
brianjohnson5972 Jul 8, 2020
cad1691
Added send_deferred_transaction_4k_action action to contract.
brianjohnson5972 Jul 8, 2020
a1b5baa
Added verification that nonprivileged action size limit is enforced s…
brianjohnson5972 Jul 8, 2020
c3f8dd5
Used BOOST_CHECK_EXCEPTION.
brianjohnson5972 Jul 8, 2020
320850d
Revert eventually spurious whitespace changes to chain_config.hpp
jgiszczak Jul 8, 2020
c00dafb
Merge branch 'nonprivileged-inline-action-subjective-limit' of github…
jgiszczak Jul 8, 2020
403d6d2
Remove and correct some comments.
jgiszczak Jul 8, 2020
bacaa7a
Remove one more invalid comment and clarify tester param name
jgiszczak Jul 8, 2020
05a61a0
Made variable name appropriate.
brianjohnson5972 Jul 9, 2020
5968818
Merge pull request #9262 from EOSIO/nonprivileged-inline-action-subje…
brianjohnson5972 Jul 9, 2020
e040b1c
Bump version to 2.0.7
johndebord Jul 9, 2020
0185b44
Merge pull request #9296 from EOSIO/release/2.0.x-version-bump
Jul 9, 2020
1684129
Revert the renaming of `eosio.version.in`
johndebord Jul 9, 2020
0303cd6
Merge pull request #9300 from EOSIO/release/2.0.x-version-bump
larryk85 Jul 9, 2020
f5e565a
Revert "Initial checkin of resource monior plugin"
larryk85 Jul 9, 2020
267ccb8
Revert commit 17f6eeb8
larryk85 Jul 9, 2020
75c53c6
Merge pull request #9301 from EOSIO/revert-9098-resource-monitor-plugin
Jul 9, 2020
79aab09
Merge pull request #9302 from EOSIO/revert-version-change
Jul 9, 2020
0d87dff
Merge pull request #9297 from EOSIO/release/2.0.x
larryk85 Jul 9, 2020
de79e27
Merge EOS tag 'v2.0.7' into develop-v2.0.7
Alladin9393 Jul 16, 2020
937ffe4
Fixed api tests
Alladin9393 Jul 22, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .cicd/base-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@ steps:
- "git clone git@github.com:EOSIO/eos.git eos && cd eos && git checkout -f $BUILDKITE_BRANCH"
- "cd eos && ./.cicd/platforms/pinned/macos-10.14-pinned.sh"
plugins:
- EOSIO/anka#v0.6.0:
- EOSIO/anka#v0.6.1:
debug: true
vm-name: "10.14.6_6C_14G_40G"
vm-name: "10.14.6_6C_14G_80G"
no-volume: true
always-pull: true
wait-network: true
Expand Down Expand Up @@ -93,9 +93,9 @@ steps:
- "git clone git@github.com:EOSIO/eos.git eos && cd eos && git checkout -f $BUILDKITE_BRANCH"
- "cd eos && ./.cicd/platforms/unpinned/macos-10.14-unpinned.sh"
plugins:
- EOSIO/anka#v0.6.0:
- EOSIO/anka#v0.6.1:
debug: true
vm-name: "10.14.6_6C_14G_40G"
vm-name: "10.14.6_6C_14G_80G"
no-volume: true
always-pull: true
wait-network: true
Expand Down
20 changes: 9 additions & 11 deletions .cicd/build-scripts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,28 +25,27 @@ steps:
- label: ":darwin: macOS 10.14 - Build Pinned"
env:
REPO: "git@github.com:EOSIO/eos.git"
TEMPLATE: "10.14.6_6C_14G_40G"
TEMPLATE: "10.14.6_6C_14G_80G"
TEMPLATE_TAG: "clean::cicd::git-ssh::nas::brew::buildkite-agent"
agents: "queue=mac-anka-large-node-fleet"
command:
- "git clone git@github.com:EOSIO/eos.git eos && cd eos && git checkout -f $BUILDKITE_BRANCH && git submodule update --init --recursive"
- "git clone git@github.com:EOSIO/eos.git eos && cd eos && git checkout -f $BUILDKITE_BRANCH && git submodule update --init --recursive"
- "cd eos && ./scripts/eosio_build.sh -P -y"
plugins:
- EOSIO/anka#v0.5.7:
- EOSIO/anka#v0.6.1:
debug: true
vm-name: "10.14.6_6C_14G_40G"
vm-name: "10.14.6_6C_14G_80G"
no-volume: true
modify-cpu: 12
modify-ram: 24
always-pull: true
wait-network: true
vm-registry-tag: "clean::cicd::git-ssh::nas::brew::buildkite-agent"
pre-execute-sleep: 10
failover-registries:
- "registry_1"
- "registry_2"
inherit-environment-vars: true
- thedyrt/skip-checkout#v0.1.1:
- EOSIO/skip-checkout#v0.1.1:
cd: ~
timeout: 180

Expand Down Expand Up @@ -99,28 +98,27 @@ steps:
- label: ":darwin: macOS 10.14 - Build UnPinned"
env:
REPO: "git@github.com:EOSIO/eos.git"
TEMPLATE: "10.14.6_6C_14G_40G"
TEMPLATE: "10.14.6_6C_14G_80G"
TEMPLATE_TAG: "clean::cicd::git-ssh::nas::brew::buildkite-agent"
agents: "queue=mac-anka-large-node-fleet"
command:
- "git clone git@github.com:EOSIO/eos.git eos && cd eos && git checkout -f $BUILDKITE_BRANCH && git submodule update --init --recursive"
- "cd eos && ./scripts/eosio_build.sh -y"
plugins:
- EOSIO/anka#v0.5.7:
- EOSIO/anka#v0.6.1:
debug: true
vm-name: "10.14.6_6C_14G_40G"
vm-name: "10.14.6_6C_14G_80G"
no-volume: true
modify-cpu: 12
modify-ram: 24
always-pull: true
wait-network: true
vm-registry-tag: "clean::cicd::git-ssh::nas::brew::buildkite-agent"
pre-execute-sleep: 10
failover-registries:
- "registry_1"
- "registry_2"
inherit-environment-vars: true
- thedyrt/skip-checkout#v0.1.1:
- EOSIO/skip-checkout#v0.1.1:
cd: ~
timeout: 180

Expand Down
71 changes: 8 additions & 63 deletions .cicd/generate-pipeline.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,11 @@ set -eo pipefail
# environment
. ./.cicd/helpers/general.sh
export MOJAVE_ANKA_TAG_BASE=${MOJAVE_ANKA_TAG_BASE:-'clean::cicd::git-ssh::nas::brew::buildkite-agent'}
export MOJAVE_ANKA_TEMPLATE_NAME=${MOJAVE_ANKA_TEMPLATE_NAME:-'10.14.6_6C_14G_40G'}
export MOJAVE_ANKA_TEMPLATE_NAME=${MOJAVE_ANKA_TEMPLATE_NAME:-'10.14.6_6C_14G_80G'}
export PLATFORMS_JSON_ARRAY='[]'
BUILDKITE_BUILD_AGENT_QUEUE='automation-eks-eos-builder-fleet'
BUILDKITE_TEST_AGENT_QUEUE='automation-eks-eos-tester-fleet'
[[ -z "$ROUNDS" ]] && export ROUNDS='1'
LINUX_CONCURRENCY='8'
MAC_CONCURRENCY='2'
LINUX_CONCURRENCY_GROUP='eos-scheduled-build'
MAC_CONCURRENCY_GROUP='eos-scheduled-build-mac'

# Determine if it's a forked PR and make sure to add git fetch so we don't have to git clone the forked repo's url
if [[ $BUILDKITE_BRANCH =~ ^pull/[0-9]+/head: ]]; then
PR_ID=$(echo $BUILDKITE_BRANCH | cut -d/ -f2)
Expand Down Expand Up @@ -99,8 +94,6 @@ echo ''
echo ' # builds'
echo $PLATFORMS_JSON_ARRAY | jq -cr '.[]' | while read -r PLATFORM_JSON; do
if [[ ! "$(echo "$PLATFORM_JSON" | jq -r .FILE_NAME)" =~ 'macos' ]]; then
CONCURRENCY=$LINUX_CONCURRENCY
CONCURRENCY_GROUP=$LINUX_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - Build"
command:
Expand All @@ -116,16 +109,14 @@ echo $PLATFORMS_JSON_ARRAY | jq -cr '.[]' | while read -r PLATFORM_JSON; do

EOF
else
CONCURRENCY=$MAC_CONCURRENCY
CONCURRENCY_GROUP=$MAC_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - Build"
command:
- "git clone \$BUILDKITE_REPO eos && cd eos && $GIT_FETCH git checkout -f \$BUILDKITE_COMMIT && git submodule update --init --recursive"
- "cd eos && ./.cicd/build.sh"
- "cd eos && tar -pczf build.tar.gz build && buildkite-agent artifact upload build.tar.gz"
plugins:
- EOSIO/anka#v0.6.0:
- EOSIO/anka#v0.6.1:
no-volume: true
inherit-environment-vars: true
vm-name: ${MOJAVE_ANKA_TEMPLATE_NAME}
Expand Down Expand Up @@ -154,12 +145,6 @@ EOF
timeout: ${TIMEOUT:-180}
agents: "queue=mac-anka-large-node-fleet"
skip: \${SKIP_$(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_UPCASE)_$(echo "$PLATFORM_JSON" | jq -r .VERSION_MAJOR)$(echo "$PLATFORM_JSON" | jq -r .VERSION_MINOR)}${SKIP_BUILD}
EOF
fi
if [ "$BUILDKITE_SOURCE" = "schedule" ]; then
cat <<EOF
concurrency: ${CONCURRENCY}
concurrency_group: ${CONCURRENCY_GROUP}
EOF
fi
done
Expand Down Expand Up @@ -187,8 +172,6 @@ for ROUND in $(seq 1 $ROUNDS); do
echo ' # parallel tests'
echo $PLATFORMS_JSON_ARRAY | jq -cr '.[]' | while read -r PLATFORM_JSON; do
if [[ ! "$(echo "$PLATFORM_JSON" | jq -r .FILE_NAME)" =~ 'macos' ]]; then
CONCURRENCY=$LINUX_CONCURRENCY
CONCURRENCY_GROUP=$LINUX_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - Unit Tests"
command:
Expand All @@ -207,16 +190,14 @@ for ROUND in $(seq 1 $ROUNDS); do

EOF
else
CONCURRENCY=$MAC_CONCURRENCY
CONCURRENCY_GROUP=$MAC_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - Unit Tests"
command:
- "git clone \$BUILDKITE_REPO eos && cd eos && $GIT_FETCH git checkout -f \$BUILDKITE_COMMIT && git submodule update --init --recursive"
- "cd eos && buildkite-agent artifact download build.tar.gz . --step '$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - Build' && tar -xzf build.tar.gz"
- "cd eos && ./.cicd/test.sh scripts/parallel-test.sh"
plugins:
- EOSIO/anka#v0.6.0:
- EOSIO/anka#v0.6.1:
no-volume: true
inherit-environment-vars: true
vm-name: ${MOJAVE_ANKA_TEMPLATE_NAME}
Expand All @@ -236,12 +217,6 @@ EOF
timeout: ${TIMEOUT:-60}
skip: \${SKIP_$(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_UPCASE)_$(echo "$PLATFORM_JSON" | jq -r .VERSION_MAJOR)$(echo "$PLATFORM_JSON" | jq -r .VERSION_MINOR)}${SKIP_UNIT_TESTS}

EOF
fi
if [ "$BUILDKITE_SOURCE" = "schedule" ]; then
cat <<EOF
concurrency: ${CONCURRENCY}
concurrency_group: ${CONCURRENCY_GROUP}
EOF
fi
echo
Expand All @@ -250,8 +225,6 @@ EOF
echo ' # wasm spec tests'
echo $PLATFORMS_JSON_ARRAY | jq -cr '.[]' | while read -r PLATFORM_JSON; do
if [[ ! "$(echo "$PLATFORM_JSON" | jq -r .FILE_NAME)" =~ 'macos' ]]; then
CONCURRENCY=$LINUX_CONCURRENCY
CONCURRENCY_GROUP=$LINUX_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - WASM Spec Tests"
command:
Expand All @@ -270,16 +243,14 @@ EOF

EOF
else
CONCURRENCY=$MAC_CONCURRENCY
CONCURRENCY_GROUP=$MAC_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - WASM Spec Tests"
command:
- "git clone \$BUILDKITE_REPO eos && cd eos && $GIT_FETCH git checkout -f \$BUILDKITE_COMMIT && git submodule update --init --recursive"
- "cd eos && buildkite-agent artifact download build.tar.gz . --step '$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - Build' && tar -xzf build.tar.gz"
- "cd eos && ./.cicd/test.sh scripts/wasm-spec-test.sh"
plugins:
- EOSIO/anka#v0.6.0:
- EOSIO/anka#v0.6.1:
no-volume: true
inherit-environment-vars: true
vm-name: ${MOJAVE_ANKA_TEMPLATE_NAME}
Expand All @@ -299,12 +270,6 @@ EOF
timeout: ${TIMEOUT:-60}
skip: \${SKIP_$(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_UPCASE)_$(echo "$PLATFORM_JSON" | jq -r .VERSION_MAJOR)$(echo "$PLATFORM_JSON" | jq -r .VERSION_MINOR)}${SKIP_WASM_SPEC_TESTS}

EOF
fi
if [ "$BUILDKITE_SOURCE" = "schedule" ]; then
cat <<EOF
concurrency: ${CONCURRENCY}
concurrency_group: ${CONCURRENCY_GROUP}
EOF
fi
echo
Expand All @@ -316,8 +281,6 @@ EOF
SERIAL_TESTS="$(cat tests/CMakeLists.txt | grep nonparallelizable_tests | grep -v "^#" | awk -F" " '{ print $2 }')"
for TEST_NAME in $SERIAL_TESTS; do
if [[ ! "$(echo "$PLATFORM_JSON" | jq -r .FILE_NAME)" =~ 'macos' ]]; then
CONCURRENCY=$LINUX_CONCURRENCY
CONCURRENCY_GROUP=$LINUX_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - $TEST_NAME"
command:
Expand All @@ -336,16 +299,14 @@ EOF

EOF
else
CONCURRENCY=$MAC_CONCURRENCY
CONCURRENCY_GROUP=$MAC_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - $TEST_NAME"
command:
- "git clone \$BUILDKITE_REPO eos && cd eos && $GIT_FETCH git checkout -f \$BUILDKITE_COMMIT && git submodule update --init --recursive"
- "cd eos && buildkite-agent artifact download build.tar.gz . --step '$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - Build' && tar -xzf build.tar.gz"
- "cd eos && ./.cicd/test.sh scripts/serial-test.sh $TEST_NAME"
plugins:
- EOSIO/anka#v0.6.0:
- EOSIO/anka#v0.6.1:
no-volume: true
inherit-environment-vars: true
vm-name: ${MOJAVE_ANKA_TEMPLATE_NAME}
Expand All @@ -364,12 +325,6 @@ EOF
permit_on_passed: true
timeout: ${TIMEOUT:-60}
skip: \${SKIP_$(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_UPCASE)_$(echo "$PLATFORM_JSON" | jq -r .VERSION_MAJOR)$(echo "$PLATFORM_JSON" | jq -r .VERSION_MINOR)}${SKIP_SERIAL_TESTS}
EOF
fi
if [ "$BUILDKITE_SOURCE" = "schedule" ]; then
cat <<EOF
concurrency: ${CONCURRENCY}
concurrency_group: ${CONCURRENCY_GROUP}
EOF
fi
echo
Expand All @@ -383,8 +338,6 @@ EOF
LR_TESTS="$(cat tests/CMakeLists.txt | grep long_running_tests | grep -v "^#" | awk -F" " '{ print $2 }')"
for TEST_NAME in $LR_TESTS; do
if [[ ! "$(echo "$PLATFORM_JSON" | jq -r .FILE_NAME)" =~ 'macos' ]]; then
CONCURRENCY=$LINUX_CONCURRENCY
CONCURRENCY_GROUP=$LINUX_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - $TEST_NAME"
command:
Expand All @@ -403,16 +356,14 @@ EOF

EOF
else
CONCURRENCY=$MAC_CONCURRENCY
CONCURRENCY_GROUP=$MAC_CONCURRENCY_GROUP
cat <<EOF
- label: "$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - $TEST_NAME"
command:
- "git clone \$BUILDKITE_REPO eos && cd eos && $GIT_FETCH git checkout -f \$BUILDKITE_COMMIT && git submodule update --init --recursive"
- "cd eos && buildkite-agent artifact download build.tar.gz . --step '$(echo "$PLATFORM_JSON" | jq -r .ICON) $(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_FULL) - Build' ${BUILD_SOURCE} && tar -xzf build.tar.gz"
- "cd eos && ./.cicd/test.sh scripts/long-running-test.sh $TEST_NAME"
plugins:
- EOSIO/anka#v0.6.0:
- EOSIO/anka#v0.6.1:
no-volume: true
inherit-environment-vars: true
vm-name: ${MOJAVE_ANKA_TEMPLATE_NAME}
Expand All @@ -431,12 +382,6 @@ EOF
permit_on_passed: true
timeout: ${TIMEOUT:-180}
skip: \${SKIP_$(echo "$PLATFORM_JSON" | jq -r .PLATFORM_NAME_UPCASE)_$(echo "$PLATFORM_JSON" | jq -r .VERSION_MAJOR)$(echo "$PLATFORM_JSON" | jq -r .VERSION_MINOR)}${SKIP_LONG_RUNNING_TESTS:-true}
EOF
fi
if [ "$BUILDKITE_SOURCE" = "schedule" ]; then
cat <<EOF
concurrency: ${CONCURRENCY}
concurrency_group: ${CONCURRENCY_GROUP}
EOF
fi
echo
Expand Down Expand Up @@ -596,10 +541,10 @@ cat <<EOF
- "cd eos && buildkite-agent artifact download build.tar.gz . --step ':darwin: macOS 10.14 - Build' && tar -xzf build.tar.gz"
- "cd eos && ./.cicd/package.sh"
plugins:
- EOSIO/anka#v0.6.0:
- EOSIO/anka#v0.6.1:
no-volume: true
inherit-environment-vars: true
vm-name: 10.14.6_6C_14G_40G
vm-name: 10.14.6_6C_14G_80G
vm-registry-tag: "clean::cicd::git-ssh::nas::brew::buildkite-agent"
always-pull: true
debug: true
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ set( CXX_STANDARD_REQUIRED ON)

set(VERSION_MAJOR 0)
set(VERSION_MINOR 4)
set(VERSION_PATCH 2)
set(VERSION_PATCH 3)
unset(VERSION_SUFFIX)

if(VERSION_SUFFIX)
Expand Down
2 changes: 0 additions & 2 deletions libraries/chain/abi_serializer.cpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
#include <eosio/chain/abi_serializer.hpp>
#include <eosio/chain/chain_config.hpp>
#include <eosio/chain/transaction.hpp>
#include <eosio/chain/asset.hpp>
#include <eosio/chain/exceptions.hpp>
#include <fc/io/raw.hpp>
Expand Down
18 changes: 15 additions & 3 deletions libraries/chain/apply_context.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -242,12 +242,12 @@ void apply_context::require_recipient( account_name recipient ) {
* implicitly authorized by the current receiver (running code). This method has significant
* security considerations and several options have been considered:
*
* 1. priviledged accounts (those marked as such by block producers) can authorize any action
* 1. privileged accounts (those marked as such by block producers) can authorize any action
* 2. all other actions are only authorized by 'receiver' which means the following:
* a. the user must set permissions on their account to allow the 'receiver' to act on their behalf
*
* Discarded Implemenation: at one point we allowed any account that authorized the current transaction
* to implicitly authorize an inline transaction. This approach would allow privelege escalation and
* Discarded Implementation: at one point we allowed any account that authorized the current transaction
* to implicitly authorize an inline transaction. This approach would allow privilege escalation and
* make it unsafe for users to interact with certain contracts. We opted instead to have applications
* ask the user for permission to take certain actions rather than making it implicit. This way users
* can better understand the security risk.
Expand Down Expand Up @@ -288,6 +288,12 @@ void apply_context::execute_inline( action&& a ) {
control.check_actor_list( actors );
}

if( !privileged && control.is_producing_block() ) {
const auto& chain_config = control.get_global_properties().configuration;
EOS_ASSERT( a.data.size() < std::min(chain_config.max_inline_action_size, control.get_max_nonprivileged_inline_action_size()),
inline_action_too_big_nonprivileged,
"inline action too big for nonprivileged account ${account}", ("account", a.account));
}
// No need to check authorization if replaying irreversible blocks or contract is privileged
if( !control.skip_auth_check() && !privileged ) {
try {
Expand Down Expand Up @@ -337,6 +343,12 @@ void apply_context::execute_context_free_inline( action&& a ) {
EOS_ASSERT( a.authorization.size() == 0, action_validate_exception,
"context-free actions cannot have authorizations" );

if( !privileged && control.is_producing_block() ) {
const auto& chain_config = control.get_global_properties().configuration;
EOS_ASSERT( a.data.size() < std::min(chain_config.max_inline_action_size, control.get_max_nonprivileged_inline_action_size()),
inline_action_too_big_nonprivileged,
"inline action too big for nonprivileged account ${account}", ("account", a.account));
}

auto inline_receiver = a.account;
_cfa_inline_actions.emplace_back(
Expand Down
Loading