Skip to content
This repository has been archived by the owner on Feb 20, 2023. It is now read-only.

Fix DurabilityPolicy::DISABLE configuration. #1596

Merged
merged 4 commits into from
May 27, 2021

Conversation

lmwnshn
Copy link
Contributor

@lmwnshn lmwnshn commented May 27, 2021

Heading

Fix DurabilityPolicy::DISABLE configuration.

Description

Fix #1595.

  • Allow ReplicationPolicy::DISABLE to be set if DurabilityPolicy::DISABLE is also set.
  • Immediately release the buffer segment if durability is disabled.
  • Immediately remove any txn that commits if durability is disabled. (is this fine?)

Essentially trying to emulate the log manager off configuration.

@lmwnshn lmwnshn added ready-for-review This PR passes all checks and is ready to be reviewed. Mark PRs with this. ready-for-ci Indicate that this build should be run through CI. labels May 27, 2021
@lmwnshn lmwnshn self-assigned this May 27, 2021
@noisepage-checks
Copy link

Minor Decrease in Performance

Be warned: this PR may have decreased the throughput of the system slightly.

tps (%change) benchmark_type wal_device details
1.9% tpcc RAM disk
Detailsmaster tps=22196.87, commit tps=22619.71, query_mode=extended, benchmark_type=tpcc, scale_factor=32.0000, terminals=32, client_time=60, weights={'Payment': 43, 'Delivery': 4, 'NewOrder': 45, 'StockLevel': 4, 'OrderStatus': 4}, wal_device=RAM disk, max_connection_threads=32
1.81% tpcc None
Detailsmaster tps=29494.84, commit tps=30029.36, query_mode=extended, benchmark_type=tpcc, scale_factor=32.0000, terminals=32, client_time=60, weights={'Payment': 43, 'Delivery': 4, 'NewOrder': 45, 'StockLevel': 4, 'OrderStatus': 4}, wal_device=None, max_connection_threads=32
-2.81% tpcc HDD
Detailsmaster tps=21932.05, commit tps=21316.82, query_mode=extended, benchmark_type=tpcc, scale_factor=32.0000, terminals=32, client_time=60, weights={'Payment': 43, 'Delivery': 4, 'NewOrder': 45, 'StockLevel': 4, 'OrderStatus': 4}, wal_device=HDD, max_connection_threads=32
8.11% tatp RAM disk
Detailsmaster tps=6543.37, commit tps=7074.07, query_mode=extended, benchmark_type=tatp, scale_factor=1.0000, terminals=16, client_time=60, weights={'GetAccessData': 35, 'UpdateLocation': 14, 'GetNewDestination': 10, 'GetSubscriberData': 35, 'DeleteCallForwarding': 2, 'InsertCallForwarding': 2, 'UpdateSubscriberData': 2}, wal_device=RAM disk, max_connection_threads=32
0.8% tatp None
Detailsmaster tps=7438.3, commit tps=7498.15, query_mode=extended, benchmark_type=tatp, scale_factor=1.0000, terminals=16, client_time=60, weights={'GetAccessData': 35, 'UpdateLocation': 14, 'GetNewDestination': 10, 'GetSubscriberData': 35, 'DeleteCallForwarding': 2, 'InsertCallForwarding': 2, 'UpdateSubscriberData': 2}, wal_device=None, max_connection_threads=32
7.14% tatp HDD
Detailsmaster tps=6433.71, commit tps=6892.86, query_mode=extended, benchmark_type=tatp, scale_factor=1.0000, terminals=16, client_time=60, weights={'GetAccessData': 35, 'UpdateLocation': 14, 'GetNewDestination': 10, 'GetSubscriberData': 35, 'DeleteCallForwarding': 2, 'InsertCallForwarding': 2, 'UpdateSubscriberData': 2}, wal_device=HDD, max_connection_threads=32

@codecov
Copy link

codecov bot commented May 27, 2021

Codecov Report

Merging #1596 (f7ed218) into master (dbc4383) will increase coverage by 0.01%.
The diff coverage is 66.66%.

❗ Current head f7ed218 differs from pull request most recent head c1d031b. Consider uploading reports for the commit c1d031b to get more accurate results
Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1596      +/-   ##
==========================================
+ Coverage   81.22%   81.23%   +0.01%     
==========================================
  Files         747      747              
  Lines       52453    52452       -1     
==========================================
+ Hits        42603    42610       +7     
+ Misses       9850     9842       -8     
Impacted Files Coverage Δ
src/transaction/transaction_manager.cpp 90.90% <0.00%> (-1.20%) ⬇️
src/include/transaction/transaction_context.h 97.82% <100.00%> (ø)
src/storage/record_buffer.cpp 100.00% <100.00%> (ø)
src/traffic_cop/traffic_cop.cpp 74.29% <100.00%> (-0.10%) ⬇️
src/execution/sql/sorter.cpp 96.73% <0.00%> (-0.55%) ⬇️
src/execution/vm/vm.cpp 83.90% <0.00%> (-0.15%) ⬇️
src/execution/sema/sema_builtin.cpp 61.54% <0.00%> (+0.09%) ⬆️
src/include/storage/index/bplustree.h 92.05% <0.00%> (+0.10%) ⬆️
src/execution/vm/bytecode_generator.cpp 84.20% <0.00%> (+0.17%) ⬆️
src/network/connection_handle.cpp 64.06% <0.00%> (+0.78%) ⬆️
... and 3 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update dbc4383...c1d031b. Read the comment docs.

@mbutrovich mbutrovich merged commit 923fdb6 into cmu-db:master May 27, 2021
@lmwnshn lmwnshn deleted the durabilitydisable branch August 10, 2021 18:44
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
ready-for-ci Indicate that this build should be run through CI. ready-for-review This PR passes all checks and is ready to be reviewed. Mark PRs with this.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

DurabilityPolicy::DISABLE doesn't seem to work.
2 participants