From 98cc8400f44f2a0805f67d2c86162e1e9e98c241 Mon Sep 17 00:00:00 2001 From: Stas Kelvich Date: Wed, 31 Mar 2021 15:13:50 +0300 Subject: [PATCH] Move regression tests output to tmp_check/regress --- pgbuild.sh | 6 +++++- src/bin/pageserver.rs | 6 ++++++ src/control_plane.rs | 9 +++++++-- src/page_cache.rs | 2 ++ src/walreceiver.rs | 2 +- tests/test_pageserver.rs | 6 ++++-- 6 files changed, 25 insertions(+), 6 deletions(-) diff --git a/pgbuild.sh b/pgbuild.sh index ee097eaaf5..aaabe53f33 100755 --- a/pgbuild.sh +++ b/pgbuild.sh @@ -14,12 +14,16 @@ REPO_ROOT=$(dirname "$0") REPO_ROOT="`( cd \"$REPO_ROOT\" && pwd )`" # configure +echo "Configiring postgres build" mkdir -p $REPO_ROOT/tmp_install/build cd $REPO_ROOT/tmp_install/build ../../vendor/postgres/configure CFLAGS='-O0' --enable-debug --enable-cassert \ - --enable-depend --with-libxml --prefix=/ + --enable-depend --with-libxml --prefix=/ > configure.log # compile +echo "Compiling postgres" make -j8 -s export DESTDIR=$REPO_ROOT/tmp_install + +echo "Installing postgres to $DESTDIR" make install -s diff --git a/src/bin/pageserver.rs b/src/bin/pageserver.rs index 204573d00f..aba466a1e6 100644 --- a/src/bin/pageserver.rs +++ b/src/bin/pageserver.rs @@ -209,6 +209,12 @@ fn init_logging(conf: &PageServerConf) -> slog_scope::GlobalLoggerGuard { let log_file = File::create(log).unwrap_or_else(|_| panic!("Could not create log file")); let decorator = slog_term::PlainSyncDecorator::new(log_file); let drain = slog_term::CompactFormat::new(decorator).build(); + let drain = slog::Filter::new(drain, |record: &slog::Record| { + if record.level().is_at_least(slog::Level::Info) { + return true; + } + return false; + }); let drain = std::sync::Mutex::new(drain).fuse(); let logger = slog::Logger::root(drain, slog::o!()); slog_scope::set_global_logger(logger) diff --git a/src/control_plane.rs b/src/control_plane.rs index 315e93d396..c1ef135e1f 100644 --- a/src/control_plane.rs +++ b/src/control_plane.rs @@ -269,8 +269,6 @@ impl PostgresNode { if check_ok && !pg_ctl.success() { panic!("pg_ctl failed"); } - - self.safe_psql("postgres", "CREATE DATABASE regression"); } pub fn start(&self) { @@ -335,6 +333,13 @@ impl Drop for PostgresNode { pub fn regress_check(pg : &PostgresNode) { + pg.safe_psql("postgres", "CREATE DATABASE regression"); + + let regress_run_path = Path::new(env!("CARGO_MANIFEST_DIR")) + .join("tmp_check/regress"); + fs::create_dir_all(regress_run_path.clone()).unwrap(); + std::env::set_current_dir(regress_run_path).unwrap(); + let regress_build_path = Path::new(env!("CARGO_MANIFEST_DIR")) .join("tmp_install/build/src/test/regress"); let regress_src_path = Path::new(env!("CARGO_MANIFEST_DIR")) diff --git a/src/page_cache.rs b/src/page_cache.rs index 1790c7cffb..c7b7c27d73 100644 --- a/src/page_cache.rs +++ b/src/page_cache.rs @@ -373,6 +373,8 @@ pub fn put_wal_record(tag: BufferTag, rec: WALRecord) *rel_entry = tag.blknum + 1; } + trace!("put_wal_record lsn: {}", key.lsn); + let oldentry = shared.pagecache.insert(key, Arc::new(entry)); PAGECACHE.num_entries.fetch_add(1, Ordering::Relaxed); diff --git a/src/walreceiver.rs b/src/walreceiver.rs index d65d058139..3015aac1c8 100644 --- a/src/walreceiver.rs +++ b/src/walreceiver.rs @@ -84,7 +84,7 @@ async fn walreceiver_main(conf: &PageServerConf) -> Result<(), Error> { match replication_message? { ReplicationMessage::XLogData(xlog_data) => { - trace!("received XLogData"); + trace!("received XLogData , lsn: {}", xlog_data.wal_start()); // Pass the WAL data to the decoder, and see if we can decode // more records as a result. diff --git a/tests/test_pageserver.rs b/tests/test_pageserver.rs index a232da1041..1cb0c5b827 100644 --- a/tests/test_pageserver.rs +++ b/tests/test_pageserver.rs @@ -34,12 +34,14 @@ fn test_redo_cases() { node.safe_psql("postgres", "INSERT INTO t SELECT generate_series(1,100000), 'payload'"); let count: i64 = node - .safe_psql("postgres", "SELECT count(*) FROM t") + .safe_psql("postgres", "SELECT sum(key) FROM t") .first() .unwrap() .get(0); - assert_eq!(count, 100000); + println!("sum = {}", count); + + assert_eq!(count, 5000050000); } // Runs pg_regress on a compute node