1 //------------------------------------------------------------------------------
2 // test driver used to test reloadable cache enhancement to we_config
3 // for bug 4486
4 // $Id$
5 //------------------------------------------------------------------------------
6 #include <iostream>
7 #include <vector>
8 #include <dbrm.h>
9 
10 #include "we_config.h"
11 
12 using namespace WriteEngine;
13 
test()14 void test()
15 {
16     std::cout << "getDBRootByIdx(1):           " <<
17               Config::getDBRootByIdx(1) << std::endl;
18     std::cout << "getDBRootByIdx(3):           " <<
19               Config::getDBRootByIdx(3) << std::endl;
20 
21     std::cout << "getDBRootByNum(1):           " <<
22               Config::getDBRootByNum(1) << std::endl;
23     std::cout << "getDBRootByNum(3):           " <<
24               Config::getDBRootByNum(3) << std::endl;
25 
26     std::vector<unsigned short> dbRootIds;
27     Config::getRootIdList( dbRootIds );
28     std::cout << "getRootIdList:               ";
29 
30     for (unsigned k = 0; k < dbRootIds.size(); k++)
31     {
32         std::cout << dbRootIds[k] << ' ';
33     }
34 
35     std::cout << std::endl;
36 
37     std::vector<std::string> dbRootPathList;
38     Config::getDBRootPathList( dbRootPathList );
39     std::cout << "getDBRootPathList: " << std::endl;
40 
41     for (unsigned k = 0; k < dbRootPathList.size(); k++)
42         std::cout << "  " << k << ". " << dbRootPathList[k] << std::endl;
43 
44     std::cout << "getBulkRoot():               " <<
45               Config::getBulkRoot() << std::endl;
46     std::cout << "DBRootCount():               " <<
47               Config::DBRootCount() << std::endl;
48     std::cout << "totalDBRootCount():          " <<
49               Config::totalDBRootCount() << std::endl;
50     std::cout << "getWaitPeriod():             " <<
51               Config::getWaitPeriod() << std::endl;
52     std::cout << "getFilePerColumnPartition(): " <<
53               Config::getFilesPerColumnPartition() << std::endl;
54     std::cout << "getExtentsPerSegmentFile():  " <<
55               Config::getExtentsPerSegmentFile() << std::endl;
56     std::cout << "getBulkProcessPriority():    " <<
57               Config::getBulkProcessPriority() << std::endl;
58     std::cout << "getBulkRollbackDir():        " <<
59               Config::getBulkRollbackDir() << std::endl;
60     std::cout << "getMaxFileSystemDiskUsage(): " <<
61               Config::getMaxFileSystemDiskUsage() << std::endl;
62     std::cout << "getNumCompressedPadBlks():   " <<
63               Config::getNumCompressedPadBlks() << std::endl;
64     std::cout << "getParentOAMModuleFlag():    " <<
65               Config::getParentOAMModuleFlag() << std::endl;
66     std::cout << "getLocalModuleType():        " <<
67               Config::getLocalModuleType() << std::endl;
68     std::cout << "getLocalModuleID():          " <<
69               Config::getLocalModuleID() << std::endl;
70     std::cout << "getVBRoot():                 " <<
71               Config::getVBRoot() << std::endl;
72 }
73 
main()74 int main()
75 {
76     Config::initConfigCache();
77     char resp;
78 
79     int nTest = 0;
80     std::cout << std::endl;
81 
82     while (1)
83     {
84         std::cout << "test" << nTest << "..." << std::endl;
85         test();
86         std::cout << "Pause..." << std::endl;
87         std::cin  >> resp;
88         std::cout << std::endl;
89 
90         if (resp == 'c')
91         {
92             std::cout << "Has local DBRootList changed: " <<
93                       (bool)Config::hasLocalDBRootListChanged() << std::endl;
94         }
95         else if (resp == 'q')
96         {
97             break;
98         }
99 
100         nTest++;
101     }
102 
103     return 0;
104 }
105