diff --git a/ChangeLog b/ChangeLog index 9c5db9396e51169f5d1b87c27cca624a7e2ed804..2d3fe76740b492dcd3e724ef8c0a06780897e6a6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +Wed Sep 16 2020 Piotr Balcer <piotr.balcer@intel.com> + + * Version 1.9.1 + + Detailed list of bug fixes: + - common: fix LIBFABRIC flags + - common: Add runtime SDS check and disable + - pool: disable SDS check if not supported + - obj: fix failure atomicity bug in huge allocs + - obj: add missing drain after ulog processing + Fri Jul 3 2020 Piotr Balcer <piotr.balcer@intel.com> * Version 1.9 diff --git a/README.md b/README.md index b5271c3abf373119f201e801e0c317ae4093149c..38fcf895254d71e8ba7d44f46d1455333dada34f 100644 --- a/README.md +++ b/README.md @@ -167,7 +167,7 @@ To build from source, clone this tree: For a stable version, checkout a [release tag](https://github.com/pmem/pmdk/releases) as follows. Otherwise skip this step to build the latest development release. ``` - $ git checkout tags/1.9 + $ git checkout tags/1.9.1 ``` Once the build system is setup, the Persistent Memory Development Kit is built using the `make` command at the top level: diff --git a/src/libpmempool/check_sds.c b/src/libpmempool/check_sds.c index 8685ef97a9aef84f29b92e2dfd4b6099661b1777..3eaf7414b787bcf5493c76d045eebe048918130f 100644 --- a/src/libpmempool/check_sds.c +++ b/src/libpmempool/check_sds.c @@ -26,7 +26,6 @@ enum question { #define SDS_CHECK_STR "checking shutdown state" #define SDS_OK_STR "shutdown state correct" #define SDS_DIRTY_STR "shutdown state is dirty" -#define SDS_NOT_SUPP "shutdown state not supported" #define ADR_FAILURE_STR \ "an ADR failure was detected - your pool might be corrupted" @@ -47,22 +46,6 @@ enum question { ? SDS_DIRTY_STR ".|" ZERO_SDS_STR \ : ADR_FAILURE_STR ".|" RESET_SDS_STR -/* - * - */ -static int -sds_is_supported(location *loc) -{ - LOG(3, NULL); - - ASSERTne(loc, NULL); - struct pool_replica *rep = REP(loc->set, 0); - ASSERTne(rep, NULL); - ASSERTne(PART(rep, 0)->fd, 0); - - return shutdown_state_is_supported(PART(rep, 0)->fd); -} - /* * sds_check_replica -- (internal) check if replica is healthy */ @@ -106,13 +89,6 @@ sds_check(PMEMpoolcheck *ppc, location *loc) CHECK_INFO(ppc, "%s" SDS_CHECK_STR, loc->prefix); - /* shutdown state is supported */ - if (sds_is_supported(loc)) { - CHECK_INFO(ppc, "%s" SDS_NOT_SUPP, loc->prefix); - loc->step = CHECK_STEP_COMPLETE; - return 0; - } - /* shutdown state is valid */ if (!sds_check_replica(loc)) { CHECK_INFO(ppc, "%s" SDS_OK_STR, loc->prefix); @@ -276,12 +252,6 @@ check_sds(PMEMpoolcheck *ppc) /* initialize replica 0 for sds check */ loc->replica = 0; init_location_data(ppc, loc); - if (!sds_is_supported(loc)) { - CHECK_INFO(ppc, "%s" SDS_CHECK_STR, - loc->prefix); - CHECK_INFO(ppc, "%s" SDS_NOT_SUPP, loc->prefix); - return; - } if (!loc->init_done) { sds_get_healthy_replicas_num(ppc, loc); diff --git a/src/test/pmempool_check/TEST1.PS1 b/src/test/pmempool_check/TEST1.PS1 index cf1aba5bb10a878f54f24e273e9a2a8473605807..56bc1d9789bb4dd5ba8f9998b44d6ff61aa353ba 100644 --- a/src/test/pmempool_check/TEST1.PS1 +++ b/src/test/pmempool_check/TEST1.PS1 @@ -1,5 +1,5 @@ # SPDX-License-Identifier: BSD-3-Clause -# Copyright 2014-2019, Intel Corporation +# Copyright 2014-2020, Intel Corporation # # # pmempool_check/TEST1 -- test for checking pools @@ -20,7 +20,7 @@ echo "PMEMLOG: pool_hdr" > $LOG expect_normal_exit $PMEMPOOL create log $POOL check_file $POOL -Invoke-Expression "$PMEMSPOIL -v $POOL pool_hdr.major=0x0 pool_hdr.features.compat=0xfe pool_hdr.features.incompat=0xfe pool_hdr.features.ro_compat=0xfb pool_hdr.shutdown_state.usc=0 pool_hdr.shutdown_state.uuid=0 'pool_hdr.shutdown_state.f:checksum_gen' pool_hdr.unused=ERROR >> $LOG" +Invoke-Expression "$PMEMSPOIL -v $POOL pool_hdr.major=0x0 pool_hdr.features.compat=0xfe pool_hdr.features.incompat=0xfb pool_hdr.features.ro_compat=0xff pool_hdr.shutdown_state.usc=0 pool_hdr.shutdown_state.uuid=0 'pool_hdr.shutdown_state.f:checksum_gen' pool_hdr.unused=ERROR >> $LOG" expect_normal_exit $PMEMPOOL check -vry $POOL >> $LOG echo "PMEMLOG: pmemlog" >> $LOG diff --git a/src/test/pmempool_check/TEST9.PS1 b/src/test/pmempool_check/TEST9.PS1 index 92bc34c8eef385546d9cf3ed9d684ee909cb15fd..1d1e2ef3f11b38abbcf354336c390900b23796fe 100644 --- a/src/test/pmempool_check/TEST9.PS1 +++ b/src/test/pmempool_check/TEST9.PS1 @@ -1,5 +1,5 @@ # SPDX-License-Identifier: BSD-3-Clause -# Copyright 2017-2019, Intel Corporation +# Copyright 2017-2020, Intel Corporation # # pmempool_check/TEST9 -- test for checking pmemobj pool # @@ -23,7 +23,7 @@ expect_normal_exit $PMEMPOOL check -vyr $POOL >> $LOG &$PMEMSPOIL -v $POOL ` pool_hdr.major=0x0 ` pool_hdr.features.compat=0xfe ` - pool_hdr.features.incompat=0xfe ` + pool_hdr.features.incompat=0xfb ` pool_hdr.features.ro_compat=0xff ` pool_hdr.shutdown_state.usc=0 ` pool_hdr.shutdown_state.uuid=0 ` diff --git a/src/test/pmempool_feature/common.sh b/src/test/pmempool_feature/common.sh index afdcfe9b08b2d109b488b3600d93ebb938614007..7a2c32130fcd4e0e92b0980f9fa926a49617865f 100644 --- a/src/test/pmempool_feature/common.sh +++ b/src/test/pmempool_feature/common.sh @@ -154,8 +154,8 @@ function pmempool_feature_test_SHUTDOWN_STATE() { # If SDS is not enabled at this point is because SDS is not available for # this device - pmempool_feature_query_return "SHUTDOWN_STATE" - if [[ $? -eq 0 ]]; then + ret=$(pmempool_feature_query_return "SHUTDOWN_STATE") + if [[ $ret -eq 0 ]]; then msg "$UNITTEST_NAME: SKIP: SDS is not available" exit 0 fi