Skip to content

why this version's top event also XidInMVCCSnapshot #1

Closed
@digoal

Description

@digoal

HI,
i had use this version test tpc-b.
but when i test 2000 connections, the hot spot the same as postgresql community version.

Samples: 18M of event 'cpu-clock', Event count (approx.): 609642457155                                                                                                                                                                       
Overhead  Shared Object         Symbol                                                                                                                                                                                                       
  59.00%  postgres              [.] XidInMVCCSnapshot                                                                                                                                                                                        
   4.52%  postgres              [.] TransactionIdIsInProgress  

this is test demo:

listen_addresses = '0.0.0.0'
port = 4001
max_connections = 21000
superuser_reserved_connections = 13
unix_socket_directories = '/tmp,.'
shared_buffers = 32GB
dynamic_shared_memory_type = posix
vacuum_cost_delay = 0
bgwriter_delay = 10ms
bgwriter_lru_maxpages = 900
bgwriter_lru_multiplier = 5.0
effective_io_concurrency = 0
wal_level = minimal 
synchronous_commit = off
full_page_writes = off
wal_buffers = 128MB
wal_writer_delay = 10ms
wal_writer_flush_after = 1MB
checkpoint_timeout = 25min
max_wal_size = 64GB
min_wal_size = 16GB
checkpoint_completion_target = 0.1
max_wal_senders = 0
seq_page_cost = 1.0
random_page_cost = 1.1
log_destination = 'csvlog'
logging_collector = on
log_truncate_on_rotation = on
log_checkpoints = on
log_connections = on
log_disconnections = on
log_error_verbosity = verbose  
log_timezone = 'PRC'
autovacuum = on
log_autovacuum_min_duration = 0
autovacuum_max_workers = 3
datestyle = 'iso, mdy'
timezone = 'PRC'
lc_messages = 'C'
lc_monetary = 'C'
lc_numeric = 'C'
lc_time = 'C'
default_text_search_config = 'pg_catalog.english'

first patch pgbench

https://commitfest.postgresql.org/18/1388/

and then

pgbench -i -s 20 --unlogged-tables

pgbench -M prepared -n -r -P 1 -c 2000 -j 1000

pgbench -M prepared -n -r -P 1 -c 20000 -j 1000

best regards,
digoal

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions