diff options
author | Sverker Eriksson <[email protected]> | 2019-03-07 21:00:44 +0100 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2019-03-07 21:00:44 +0100 |
commit | 397bb89701a1113125baf1adbaa16a50612cfadb (patch) | |
tree | 99d8a25b725e50d7deb9332093f28c4c50b1e3d5 /erts/emulator/beam/erl_db_hash.c | |
parent | c70a0aaeacd91d525c59f9a376022cb87d18e87a (diff) | |
parent | 8e323b5c6cbc2ffc8f8f8883daaaf419144c35f1 (diff) | |
download | otp-397bb89701a1113125baf1adbaa16a50612cfadb.tar.gz otp-397bb89701a1113125baf1adbaa16a50612cfadb.tar.bz2 otp-397bb89701a1113125baf1adbaa16a50612cfadb.zip |
Merge branch 'sverker/maint/ets-no-mbuf-trapping/OTP-15660'
into sverker/master/ets-no-mbuf-trapping/OTP-15660
Diffstat (limited to 'erts/emulator/beam/erl_db_hash.c')
-rw-r--r-- | erts/emulator/beam/erl_db_hash.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/erts/emulator/beam/erl_db_hash.c b/erts/emulator/beam/erl_db_hash.c index f05a3b51c9..426c7d2d48 100644 --- a/erts/emulator/beam/erl_db_hash.c +++ b/erts/emulator/beam/erl_db_hash.c @@ -1323,11 +1323,7 @@ static int match_traverse(Process* p, DbTableHash* tb, unlock_hash_function(lck); break; } - if (iterations_left <= 0 || MBUF(p)) { - /* - * We have either reached our limit, or just created some heap fragments. - * Since many heap fragments will make the GC slower, trap and GC now. - */ + if (iterations_left <= 0) { unlock_hash_function(lck); ret_value = ctx->on_trap(ctx, slot_ix, got, &mpi.mp, ret); goto done; @@ -1433,11 +1429,7 @@ static int match_traverse_continue(Process* p, DbTableHash* tb, unlock_hash_function(lck); break; } - if (iterations_left <= 0 || MBUF(p)) { - /* - * We have either reached our limit, or just created some heap fragments. - * Since many heap fragments will make the GC slower, trap and GC now. - */ + if (iterations_left <= 0) { unlock_hash_function(lck); ret_value = ctx->on_trap(ctx, slot_ix, got, mpp, ret); goto done; |