wiki:HyperTable/HowToInstall

Version 9 (modified by sunny, 16 years ago) (diff)

--

如何安裝Hypertable

【Google Wiki】

【安裝】

  • 安裝過程運行於Ubuntu作業系統,以下所列說明指令適用於Ubuntu的安裝方式,若使用者要安裝到其他作業平台環境,可以參考下列安裝項目並以通用該平台的安裝指令來取代之,接下來會說明編譯過程中的相關檔案存放位置,以及如何組態並編譯原始程式碼,最後再說明安裝方式及如何執行迴歸測試。
  • Hypertable原始程式碼的存放路徑放置於:
    ~/src/hypertable
    
  • 編譯過程中所產生的連結物件檔存放於:
    ~/build/hypertable
    
  • 編譯完成的輸出執行檔存放路徑:
    ~/hypertable
    

【下載原始程式碼】

  • 要取得Hypertable原始碼需要先安裝git這套由google所提出的版本控制軟體,安裝指令如下:
    $ sudo apt-get install git-core
    
  • 然後執行以下指令設定git所通行的使用者資訊,這一份使用者資訊原則上是由git這套版本控制軟體儲存,以及留作記錄程式碼被哪些使用者下載的一份參考來源,其設定使用者資訊方式如下:
    $ git config --global user.name "<your name>"
    $ git config --global user.email "<your email>"
    
  • 使用git下載Hypertable原始碼之指令:
    $ git clone git://scm.hypertable.org/pub/repos/hypertable.git
    
  • 更新已下載之Hypertable原始碼方式:
    $ cd ~/hypertable
    $ git pull
    

【如何編譯】

  • 在編譯Hypertable之前,需要先把編譯環境準備好,有一些編譯軟體要先安裝就序,以下條列出在Ubuntu環境下,各項編譯軟體的安裝指令:
    • 此套件在安裝C語言標準程式庫所需要的編譯環境,如果沒有安裝build-essential套件時可能會出現編譯階段找不到stdio.h這個引入檔案的位置,因此建議要先確認這項套件是否有安裝。
      $ sudo apt-get install build-essential
      
    • 在Hypertable會使用到一些資料壓縮與解壓縮功能,因此需要安裝 z library。
      $ sudo apt-get install zlib1g-dev
      
    • 安裝可跨平台的makefiles產生工具CMake,因此可以選擇編譯器及編譯環境來產生Hypertable的執行檔;根據官網公佈資訊,目前測試過可執行的平台仍以Linux/Unix為主,Windows平台仍在測試當中。
      $ sudo apt-get install cmake
      
    • 安裝Boost 程式庫1.34.1以上版本,這套程式庫為強化C++ Standard Library而設計,內含功能像是記憶體的Buffer處理,數學,Hash,MPI,圖形等等函式庫。
      $ sudo apt-get install libboost.*-dev libboost-doc libboost.*1.34.1
      
    • 安裝log4cpp套件,此套件參考log4j而設計,故名思議是針對c++而設計的記錄日誌檔機制,在Hypertable裡的記錄檔案便是由此套記錄機制在處理Log功能。
      $ sudo apt-get install liblog4cpp*
      
    • 安裝expat套件,這個套件是一個XML處理程式庫,在Hypertable舉凡對於XML的存取都是引用這個套件來處理。
      $ sudo apt-get install expat libexpat1 libexpat1-dev
      
    • 安裝libattr套件,它是處理檔案的延伸屬性的程式庫。
      $ sudo apt-get install libattr1 libattr1-dev
      
    • 安裝readline套件,這份套件內含讀取terminal上的command line程式庫,在Hypertable裡面像是登入hql shell模式,或其他會需要讀取command line的情況會使用到這一類的功能。
      $ sudo apt-get install libreadline5-dev
      
    • 安裝ncurses,透過它可以撰寫terminal底下的文字模式介面程式,在Hypertable裡面像是登入hql shell模式,或需要模擬文字模式下的使用者介面,會使用到這一類的功能。
      $ sudo apt-get install libncurses5 libncurses5-dev
      
    • 安裝tcmalloc(Thread-Caching Malloc)套件,它是一個記憶體配置套件,可處理多執行緒情況下的記憶體回收之程式庫。
      $ sudo apt-get install libgoogle-perftools0 libgoogle-perftools-dev
      
    • 開始編譯程式前還需要建立安裝目錄,以及編譯後的物件檔案存放目錄
      $ mkdir ~/src/hypertable
      $ mkdir -p ~/build/hypertable
      
    • 執行CMake來產生編譯組態文件(makefiles),並指定編譯後的執行檔模式為偵錯模式(Debug)或發行模式(Release),以及安裝路徑,如果組態過程中出現找不到預設路徑下的Boost程式庫時,可以再指定其路徑,指令範例如下列所示,其中 -D代表定義某個變數的前置符號。
      $ cmake -DCMAKE_INSTALL_PREFIX="~/hypertable" -DCMAKE_BUILD_TYPE="Debug" -DBoost_INCLUDE_DIR="/usr/include/boost" ~/src/hypertable
      
    • 編譯過程中,顯示結果如下:
      組態過程...
      -- Looking for required boost libraries...
      -- Boost include dir: /usr/include/boost
      -- Boost thread lib: /usr/lib/libboost_thread-mt.so
      -- Boost program options lib: /usr/lib/libboost_program_options-mt.so
      -- Boost lib dir: /usr/lib
      -- Boost version: 1_34_1
      -- Looking for doxygen...
      -- Looking for doxygen... - found /usr/bin/doxygen
      -- Looking for dot tool...
      -- Looking for dot tool... - found /usr/bin/dot
      -- Found Tcmalloc: /usr/lib/libtcmalloc_minimal.so
      -- Found Tcmalloc: /usr/lib/libtcmalloc_minimal.so
      -- Got boost 1.34.x, prepend fix directory
      -- Configuring done
      -- Generating done
      -- Build files have been written to: /home/sunny/build/hypertable
      
  • Build the software (make)
    sunny@hsihdp:~/build/hypertable$ make
    [  6%] Built target HyperComm
    [ 10%] Built target HyperCommon
    [ 11%] Built target commTest
    [ 12%] Built target commTestDatagram
    [ 12%] Built target commTestReverseRequest
    [ 13%] Built target commTestTimeout
    [ 13%] Built target commTestTimer
    [ 13%] Built target sampleClient
    [ 14%] Built target testServer
    [ 14%] Built target htConvert
    [ 17%] Built target Hyperspace
    [ 33%] Built target Hypertable
    [ 42%] Built target HyperDfsBroker
    [ 50%] Built target Hyperspace.Master
    [ 56%] Built target Hypertable.Master
    [ 57%] Built target htgc
    [ 73%] Built target Hypertable.RangeServer
    [ 76%] Built target count_stored
    [ 79%] Built target csdump
    [ 79%] Built target bmz-test
    [ 79%] Built target bmzip
    [ 80%] Built target compressor_test
    [ 80%] Built target generate_test_data
    [ 80%] Built target loadDataSourceTest
    [ 81%] Built target locationCacheTest
    [ 81%] Built target schemaTest
    [ 85%] Built target dfsTest
    [ 88%] Built target dfsclient
    [ 94%] Built target hyperspace
    [ 94%] Built target hyperspaceTest
    [ 95%] Built target hypertable
    [ 95%] Built target hypertable_test
    [ 96%] Built target dumplog
    [ 96%] Built target merge_diff
    [ 97%] Built target rsTest
    [ 98%] Built target rsclient
    [ 99%] Built target rsdump
    [ 99%] Built target serverup
    [100%] Built target localBroker
    

【如何安裝】

  • Install the software (make install)
    sunny@hsihdp:~/build/hypertable$ make install DESTDIR="~/hypertable"
    [  6%] Built target HyperComm
    [ 10%] Built target HyperCommon
    [ 11%] Built target commTest
    [ 12%] Built target commTestDatagram
    [ 12%] Built target commTestReverseRequest
    [ 13%] Built target commTestTimeout
    [ 13%] Built target commTestTimer
    [ 13%] Built target sampleClient
    [ 14%] Built target testServer
    [ 14%] Built target htConvert
    [ 17%] Built target Hyperspace
    [ 33%] Built target Hypertable
    [ 42%] Built target HyperDfsBroker
    [ 50%] Built target Hyperspace.Master
    [ 56%] Built target Hypertable.Master
    [ 57%] Built target htgc
    [ 73%] Built target Hypertable.RangeServer
    [ 76%] Built target count_stored
    [ 79%] Built target csdump
    [ 79%] Built target bmz-test
    [ 79%] Built target bmzip
    [ 80%] Built target compressor_test
    [ 80%] Built target generate_test_data
    [ 80%] Built target loadDataSourceTest
    [ 81%] Built target locationCacheTest
    [ 81%] Built target schemaTest
    [ 85%] Built target dfsTest
    [ 88%] Built target dfsclient
    [ 94%] Built target hyperspace
    [ 94%] Built target hyperspaceTest
    [ 95%] Built target hypertable
    [ 95%] Built target hypertable_test
    [ 96%] Built target dumplog
    [ 96%] Built target merge_diff
    [ 97%] Built target rsTest
    [ 98%] Built target rsclient
    [ 99%] Built target rsdump
    [ 99%] Built target serverup
    [100%] Built target localBroker
    Linking CXX executable CMakeFiles/CMakeRelink.dir/Hyperspace.Master
    Linking CXX executable CMakeFiles/CMakeRelink.dir/Hypertable.Master
    Linking CXX executable CMakeFiles/CMakeRelink.dir/htgc
    Linking CXX executable CMakeFiles/CMakeRelink.dir/Hypertable.RangeServer
    Linking CXX executable CMakeFiles/CMakeRelink.dir/count_stored
    Linking CXX executable CMakeFiles/CMakeRelink.dir/csdump
    Linking CXX executable CMakeFiles/CMakeRelink.dir/generate_test_data
    Linking CXX executable CMakeFiles/CMakeRelink.dir/dfsclient
    Linking CXX executable CMakeFiles/CMakeRelink.dir/hyperspace
    Linking CXX executable CMakeFiles/CMakeRelink.dir/hypertable
    Linking CXX executable CMakeFiles/CMakeRelink.dir/dumplog
    Linking CXX executable CMakeFiles/CMakeRelink.dir/merge_diff
    Linking CXX executable CMakeFiles/CMakeRelink.dir/rsclient
    Linking CXX executable CMakeFiles/CMakeRelink.dir/rsdump
    Linking CXX executable CMakeFiles/CMakeRelink.dir/serverup
    Linking CXX executable CMakeFiles/CMakeRelink.dir/localBroker
    Install the project...
    -- Install configuration: "Debug"
    -- Installing /home/sunny/hypertable/0.9.0.5/demo/metadata-test.xml
    -- Installing /home/sunny/hypertable/0.9.0.5/demo/testdata.txt.bz2
    -- Installing /home/sunny/hypertable/0.9.0.5/demo/Test.xml
    -- Installing /home/sunny/hypertable/0.9.0.5/demo/Test-schema.xml
    -- Installing /home/sunny/hypertable/0.9.0.5/conf/hypertable.cfg
    -- Installing /home/sunny/hypertable/0.9.0.5/conf/METADATA.xml
    -- Installing /home/sunny/hypertable/0.9.0.5/java/lib/commons-logging-1.0.4.jar
    -- Installing /home/sunny/hypertable/0.9.0.5/java/lib/hadoop-0.14.4-core.jar
    -- Installing /home/sunny/hypertable/0.9.0.5/java/lib/junit-4.3.1.jar
    -- Installing /home/sunny/hypertable/0.9.0.5/java/lib/log4j-1.2.13.jar
    -- Installing /home/sunny/hypertable/0.9.0.5/java/lib/hypertable-0.9.0.jar
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/jrun
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/start-all-servers.sh
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/start-master.sh
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/start-range-server.sh
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/kill-servers.sh
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/slaves.sh
    -- Installing /home/sunny/hypertable/0.9.0.5/test/create-test-tables.hql
    -- Installing /home/sunny/hypertable/0.9.0.5/examples/apache_log
    -- Installing /home/sunny/hypertable/0.9.0.5/examples/apache_log/apache_log_query.cc
    -- Installing /home/sunny/hypertable/0.9.0.5/examples/apache_log/README.txt
    -- Installing /home/sunny/hypertable/0.9.0.5/examples/apache_log/apache_log_load.cc
    -- Installing /home/sunny/hypertable/0.9.0.5/examples/apache_log/access.log.gz
    -- Installing /home/sunny/hypertable/0.9.0.5/examples/apache_log/WebServerLog-create-table.hql
    -- Installing /home/sunny/hypertable/0.9.0.5/examples/apache_log/Makefile
    -- Installing /home/sunny/hypertable/0.9.0.5/examples/hql_tutorial
    -- Installing /home/sunny/hypertable/0.9.0.5/examples/hql_tutorial/Pages-create.hql
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/ReactorRunner.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/IOHandlerData.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/ConnectionManager.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/ApplicationHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/CommBuf.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/DispatchHandlerSynchronizer.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/DispatchHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/ApplicationQueue.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/Reactor.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/Header.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/HandlerMap.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/IOHandlerAccept.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/IOHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/Protocol.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/Serialization.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/Timer.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/PollTimeout.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/ResponseCallback.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/ReactorFactory.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/Comm.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/IOHandlerDatagram.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/HeaderBuilder.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/RequestCache.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/Event.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/AsyncComm/ConnectionHandlerFactory.h
    -- Installing /home/sunny/hypertable/0.9.0.5/lib/libHyperComm.a
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/SockAddrMap.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/ReferenceCount.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/FileUtils.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Exception.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Logger.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/CharStrHashMap.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/CharStrHashTraits.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/ByteString.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/InteractiveCommand.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/InetAddr.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/ServerLauncher.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/System.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/NumberStream.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Init.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/atomic.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/CharArena.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/DynamicBuffer.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/StringExt.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Thread.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/HashMap.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Checksum.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/ByteOrder.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Properties.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Runnable.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Error.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/TestHarness.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Sweetener.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/md5.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Common/Usage.h
    -- Installing /home/sunny/hypertable/0.9.0.5/lib/libHyperCommon.a
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ClientConnectionHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerAttrDel.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/SessionData.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/Session.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerExists.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerRelease.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ResponseCallbackOpen.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerReaddir.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ResponseCallbackLock.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerLock.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerDelete.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/DirEntry.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerMkdir.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerAttrGet.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/HandleData.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerAttrSet.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ClientKeepaliveHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ServerKeepaliveHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ServerConnectionHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerOpen.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerStatus.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/Protocol.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/NodeData.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/Master.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ResponseCallbackAttrGet.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ClientHandleState.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/LockSequencer.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ResponseCallbackExists.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/Notification.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/HandleCallback.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/ResponseCallbackReaddir.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/RequestHandlerClose.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hyperspace/Event.h
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/Hyperspace.Master
    -- Installing /home/sunny/hypertable/0.9.0.5/lib/libHyperspace.a
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/Hypertable.Master
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/htgc
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/Hypertable.RangeServer
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/csdump
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/count_stored
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/Client.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/BlockCompressionHeader.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/HqlCommandInterpreter.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/CommandShell.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/TableMutator.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/RangeLocator.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/BlockCompressionCodecBmz.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/CommitLogReader.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/ApacheLogParser.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/TestData.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/KeySpec.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/CommandInterpreter.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/TableScanner.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/TableMutatorDispatchHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/BlockCompressionCodecLzo.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/CompressorFactory.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/BlockCompressionHeaderCommitLog.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/Defaults.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/BlockCompressionCodecNone.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/LoadDataSource.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/Cell.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/Filesystem.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/LocationCache.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/Key.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/RangeServerProtocol.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/TestSource.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/HqlParser.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/MasterFileHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/BlockCompressionCodecQuicklz.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/RangeLocationInfo.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/BlockCompressionCodecZlib.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/ScanBlock.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/Schema.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/TableMutatorScatterBuffer.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/RangeServerClient.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/MasterProtocol.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/HqlHelpText.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/CommitLog.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/MasterClient.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/Types.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/DataSource.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/BlockCompressionCodec.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/fletcher16.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/RootFileHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/Table.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/Hypertable/Lib/EventHandlerMasterChange.h
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/generate_test_data
    -- Installing /home/sunny/hypertable/0.9.0.5/lib/libHypertable.a
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/dfsclient
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/hyperspace
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/hypertable
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/dumplog
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/merge_diff
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/rsclient
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/rsdump
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/serverup
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/Client.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerPread.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/Broker.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/ResponseCallbackOpen.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerReaddir.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerFlush.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/OpenFileMap.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerOpen.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerMkdirs.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerStatus.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerLength.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/ResponseCallbackRead.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/Protocol.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerRemove.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerAppend.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/ResponseCallbackAppend.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerSeek.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/ResponseCallbackLength.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerCreate.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerRead.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/ClientBufferedReaderHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerRmdir.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/ResponseCallbackReaddir.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/RequestHandlerClose.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/ConnectionHandler.h
    -- Installing /home/sunny/hypertable/0.9.0.5/include/DfsBroker/Lib/ConnectionHandlerFactory.h
    -- Installing /home/sunny/hypertable/0.9.0.5/lib/libHyperDfsBroker.a
    -- Installing /home/sunny/hypertable/0.9.0.5/bin/localBroker
    

【運行迴歸測試程式】

  • Enable the extended attributes on the partition that holds the installation
    • NOTE. mac os, hadoop(HDFS), kosmos(KFS) 不需要再修改 extended attributes
      $ sudo vim /etc/fstab
      /dev/sda1 ext3 defaults,errors=remount-ro 0 1 => /dev/sda1 ext3 defaults,user_xattr,errors=remount-ro 0 1
      $ sudo mount -o remount /home
      
  • Restart servers and re-create test tables
    • ./start-all-servers.sh: Usage: start-test-servers.sh [local|hadoop|kosmos]
      sunny@hsihdp:~/hypertable/0.9.0.5/bin$ ./kill-servers.sh 
      Unable to connect to DfsBroker.
      ./kill-servers.sh: line 59: kill: (6213) - 沒有此一程序
      ./kill-servers.sh: line 59: kill: (6247) - 沒有此一程序
      ./kill-servers.sh: line 59: kill: (6282) - 沒有此一程序
      sunny@hsihdp:~/hypertable/0.9.0.5/bin$ ./start-all-servers.sh local
      Successfully started DFSBroker (local)
      Successfully started Hyperspace
      Successfully started Hypertable.Master
      Successfully started Hypertable.RangeServer
      
  • Run the regression tests
    sunny@hsihdp:~/build/hypertable$ make test
    Running tests...
    Start processing tests
    Test project /home/sunny/build/hypertable
      1/ 17 Testing HyperComm                        Passed
      2/ 17 Testing HyperComm-datagram               Passed
      3/ 17 Testing HyperComm-timeout                Passed
      4/ 17 Testing HyperComm-timer                  Passed
      5/ 17 Testing HyperComm-reverse-request        Passed
      6/ 17 Testing Schema                           Passed
      7/ 17 Testing LocationCache                    Passed
      8/ 17 Testing LoadDataSource                   Passed
      9/ 17 Testing BlockCompressor-BMZ              Passed
     10/ 17 Testing BlockCompressor-LZO              Passed
     11/ 17 Testing BlockCompressor-NONE             Passed
     12/ 17 Testing BlockCompressor-QUICKLZ          Passed
     13/ 17 Testing BlockCompressor-ZLIB             Passed
     14/ 17 Testing HyperDfsBroker                   Passed
     15/ 17 Testing Hyperspace                       Passed
     16/ 17 Testing hypertable                       Passed
     17/ 17 Testing RangeServer                      Passed
    
    100% tests passed, 0 tests failed out of 17