patch 4.0

This commit is contained in:
wangzelin.wzl
2022-10-24 10:34:53 +08:00
parent 4ad6e00ec3
commit 93a1074b0c
10533 changed files with 2588271 additions and 2299373 deletions

View File

@ -10,60 +10,83 @@
* See the Mulan PubL v2 for more details.
*/
#include <gtest/gtest.h>
#define protected public
#define private public
#include "storage/ob_partition_merge_task.h"
#include "storage/ob_build_index_task.h"
#include "storage/ob_partition_migrator.h"
#include "share/scheduler/ob_dag_scheduler.h"
#include "storage/ob_partition_split_task.h"
#include "storage/ob_sstable_row_iterator.h"
#include <gtest/gtest.h>
namespace oceanbase {
namespace oceanbase
{
using namespace blocksstable;
using namespace common;
using namespace storage;
using namespace share::schema;
using namespace ::testing;
using namespace share;
namespace unittest {
class TestDagSize : public ::testing::Test {};
namespace unittest
{
class TestDagSize : public ::testing::Test
{
public:
TestDagSize()
: tenant_id_(500),
tenant_base_(500)
{}
~TestDagSize() {}
void SetUp()
{
ObTenantDagScheduler *scheduler = OB_NEW(ObTenantDagScheduler, ObModIds::TEST);
tenant_base_.set(scheduler);
ObTenantEnv::set_tenant(&tenant_base_);
ASSERT_EQ(OB_SUCCESS, tenant_base_.init());
ASSERT_EQ(OB_SUCCESS, scheduler->init(500));
}
void TearDown()
{
tenant_base_.destroy();
ObTenantEnv::set_tenant(nullptr);
}
private:
const uint64_t tenant_id_;
ObTenantBase tenant_base_;
};
TEST_F(TestDagSize, test_size)
{
ObDagScheduler& scheduler = ObDagScheduler::get_instance();
ObAddr addr(1, 1);
ASSERT_EQ(OB_SUCCESS, scheduler.init(addr));
ObBuildIndexDag* build_index_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler.alloc_dag(build_index_dag));
scheduler.free_dag(*build_index_dag);
ObMigrateDag* migrate_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler.alloc_dag(migrate_dag));
scheduler.free_dag(*migrate_dag);
ObSSTableMajorMergeDag* major_merge_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler.alloc_dag(major_merge_dag));
scheduler.free_dag(*major_merge_dag);
ObSSTableMinorMergeDag* minor_merge_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler.alloc_dag(minor_merge_dag));
scheduler.free_dag(*minor_merge_dag);
ObSSTableSplitDag* split_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler.alloc_dag(split_dag));
scheduler.free_dag(*split_dag);
ObUniqueCheckingDag* unique_check_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler.alloc_dag(unique_check_dag));
scheduler.free_dag(*unique_check_dag);
ObTenantDagScheduler *scheduler = MTL(ObTenantDagScheduler*);
ASSERT_TRUE(nullptr != scheduler);
STORAGE_LOG(INFO, "micro block row getter size", K(sizeof(ObMicroBlockRowGetter)));
STORAGE_LOG(INFO, "micro block row scanner size", K(sizeof(ObMicroBlockRowScanner)));
STORAGE_LOG(INFO, "micro block reader size", K(sizeof(ObMicroBlockReader)));
STORAGE_LOG(INFO, "multiple scan merge", K(sizeof(ObMultipleScanMerge)));
scheduler.destroy();
ObBuildIndexDag *build_index_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler->alloc_dag(build_index_dag));
scheduler->free_dag(*build_index_dag);
ObMigrateDag *migrate_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler->alloc_dag(migrate_dag));
scheduler->free_dag(*migrate_dag);
ObSSTableMajorMergeDag *major_merge_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler->alloc_dag(major_merge_dag));
scheduler->free_dag(*major_merge_dag);
ObSSTableMinorMergeDag *minor_merge_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler->alloc_dag(minor_merge_dag));
scheduler->free_dag(*minor_merge_dag);
ObUniqueCheckingDag *unique_check_dag = NULL;
ASSERT_EQ(OB_SUCCESS, scheduler->alloc_dag(unique_check_dag));
scheduler->free_dag(*unique_check_dag);
scheduler->destroy();
}
} // namespace unittest
} // namespace oceanbase
}
}
int main(int argc, char** argv)
int main(int argc, char **argv)
{
OB_LOGGER.set_log_level("INFO");
::testing::InitGoogleTest(&argc, argv);