From lordelf007 at gmail.com Tue Sep 4 02:15:13 2012 From: lordelf007 at gmail.com (Tri Nguyen Phi Minh) Date: Tue, 4 Sep 2012 15:15:13 +0900 Subject: [chord] Build and deploy Chord on multiple computers Message-ID: Hi all, I am trying to build and deploy Chord in several nodes (computers) based on instructions in https://github.com/sit/dht/wiki/howto . I am using: 1. The latest version of Chord (chord-0.1) from Git clone. 2. SFSLite at https://github.com/okws/sfslite 3. Ubuntu precise, 12.04. However, I got problems when building SFS-Lite. Does anyone please tell me which GCC, G++ version are you using with Chord? Thank you, Best regards, Tri -------------- next part -------------- An HTML attachment was scrubbed... URL: http://amsterdam.lcs.mit.edu/pipermail/chord/attachments/20120904/faa66f2c/attachment.htm From lordelf007 at gmail.com Wed Sep 5 08:50:09 2012 From: lordelf007 at gmail.com (Tri Nguyen Phi Minh) Date: Wed, 5 Sep 2012 21:50:09 +0900 Subject: [chord] Chord source code and corresponding SFS version Message-ID: Dear the Chord community, I obtained some Chord packages which are: [1]. chord-0.1-20060902 [2]. chord-0.1-20061206 [3]. chord-0.1 (the version I am using, I think its latest, is cloned from Mercurial: git clone git://github.com/sit/dht chord-0.1 ) Based on https://github.com/sit/dht/wiki/howto, I must use "SFSlite 0.8.16pre1 or newer" to run with [3]. But I couldn't find any SFSLite0.8.16.tar package currently available from the web links. 1. So, does anyone please give me SFSlite 0.8.16.tar package? or could you give me any Chord source and SFS version working with it? 2. And could you tell me what Linux version were you running well with that Chord and SFS? I saw some comments from code that it will not run in some new Linux versions. Thanks all in advance, Best regards, Tri To Dr.Sit: I really hope to get your help regarding of this issue. Thank you. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://amsterdam.lcs.mit.edu/pipermail/chord/attachments/20120905/f540b315/attachment.htm From sit at mit.edu Sat Sep 8 15:16:33 2012 From: sit at mit.edu (Emil Sit) Date: Sat, 8 Sep 2012 15:16:33 -0400 Subject: [chord] Chord source code and corresponding SFS version In-Reply-To: References: Message-ID: Hi Tri, On Wed, Sep 5, 2012 at 8:50 AM, Tri Nguyen Phi Minh wrote: > 1. So, does anyone please give me SFSlite 0.8.16.tar package? or could you > give me any Chord source and SFS version working with it? You can get it from https://github.com/okws/sfslite/tree/0.8.16 > 2. And could you tell me what Linux version were you running well with that > Chord and SFS? I saw some comments from code that it will not run in some > new Linux versions. I last developed this in 2008, so if you install Ubuntu 8.04, you may have some success compiling and linking. There is no active development on this software and it is not supported in any way. You may find that http://www.emilsit.net/blog/archives/the-afterlife-of-systems-research-code/ helps you understand why. Hope this helps. -- Emil Sit / http://www.emilsit.net/ From lordelf007 at gmail.com Mon Sep 10 23:49:44 2012 From: lordelf007 at gmail.com (Tri Nguyen Phi Minh) Date: Tue, 11 Sep 2012 12:49:44 +0900 Subject: [chord] Chord source code and corresponding SFS version In-Reply-To: References: Message-ID: Dear Dr.Emil Sit, Thank you so much for your link! I installed successfully SFSLite 0.8.16 on Ubuntu 8.04 as your recommendation. Then, for installing BerkeleyDB, I installed version 4.6 of it, but the processing of running Chord configure couldn't locate it when it notices: " ./configure --with-sfs=../sfslite-0.8/okws-sfslite-d10ee20/ --with-db=/usr/local/BerkeleyDB checking for ... ... checking for BerkeleyDB library... configure: error: Cannot find BerkeleyDB in /usr/local/BerkeleyDB " I did some configurations to make system to be aware of where the Berkeley DB libraries can be found like: " echo /usr/local/BerkeleyDB/lib > /etc/ld.so.conf ldconfig export CPPFLAGS="-I/usr/local/BerkeleyDB/include" export LD_LIBRARY_PATH="/usr/local/BerkeleyDB/lib/" export LDFLAGS="$LDFLAGS:-L/usr/localBerkeleyDB/lib" " ldconfig now could locate BerkeleyDB when it shows: " tri at tri-desktop:/etc$ ldconfig -p | grep libdb libdbus-1.so.3 (libc6) => /usr/lib/libdbus-1.so.3 libdbus-glib-1.so.2 (libc6) => /usr/lib/libdbus-glib-1.so.2 libdb-4.6.so (libc6) => /usr/local/BerkeleyDB/lib/libdb-4.6.so libdb-4.6.so (libc6) => /usr/lib/libdb-4.6.so " However, running Chord's configure file still complain that it cannot find BerkeleyDB as previous. Could you please tell me extra configurations I should do to make Chord find Berkeley libraries? Thank you for your time. Tri Nguyen 2012/9/9 Emil Sit > Hi Tri, > > On Wed, Sep 5, 2012 at 8:50 AM, Tri Nguyen Phi Minh > wrote: > > 1. So, does anyone please give me SFSlite 0.8.16.tar package? or could > you > > give me any Chord source and SFS version working with it? > > You can get it from https://github.com/okws/sfslite/tree/0.8.16 > > > 2. And could you tell me what Linux version were you running well with > that > > Chord and SFS? I saw some comments from code that it will not run in some > > new Linux versions. > > I last developed this in 2008, so if you install Ubuntu 8.04, you may > have some success compiling and linking. > > There is no active development on this software and it is not > supported in any way. You may find that > > http://www.emilsit.net/blog/archives/the-afterlife-of-systems-research-code/ > helps you understand why. > > Hope this helps. > > -- > Emil Sit / http://www.emilsit.net/ > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://amsterdam.lcs.mit.edu/pipermail/chord/attachments/20120911/0621764a/attachment-0001.htm From sit at mit.edu Tue Sep 11 12:33:33 2012 From: sit at mit.edu (Emil Sit) Date: Tue, 11 Sep 2012 12:33:33 -0400 Subject: [chord] Chord source code and corresponding SFS version In-Reply-To: References: Message-ID: Hi Tri, On Mon, Sep 10, 2012 at 11:49 PM, Tri Nguyen Phi Minh wrote: > However, running Chord's configure file still complain that it cannot find > BerkeleyDB as previous. > Could you please tell me extra configurations I should do to make Chord find > Berkeley libraries? What you did looks reasonable as far as my recollection goes. I don't recall precisely what the configure script is testing for and I am grateful these days to generally not have to use autoconf any more. You can check the configure.log or something to see what link command it was trying to use and see if you can get that command to work. -- Emil Sit / http://www.emilsit.net/ From lordelf007 at gmail.com Wed Sep 12 13:08:28 2012 From: lordelf007 at gmail.com (Tri Nguyen Phi Minh) Date: Thu, 13 Sep 2012 02:08:28 +0900 Subject: [chord] Chord source code and corresponding SFS version In-Reply-To: References: Message-ID: Dear Dr.Emil Sit, I simply solved the problem by using BerkeleyDB 4.5 instead of version 4.6. I was able to compile and build the Chord with no problems. Just for those who would like to know, here are libraries and versions I am using: + Ubuntu 8.02 - Hardy + chord.0.1-20070418 + sfslite-0.8.16 + BerkeleyDB4.5 + GCC 4.1.3 + G++ 4.1.3 + libgmp 2.4 + autoconf/automake/m4: 2.6/1.9/1.4 Then, I did some tests on Chord based on 2 Linux virtual machines. I store a file on host 1 but I still cannot retrieve that file from host 2: + Started DHT on host1 with 16 vnodes + Insert file1 on host1 + Join the DHT from host2 with 16 vnodes + Trying retrieve file1 on host2 >> failed Here is log that I did for 2 hosts: /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// [HOST1]chord-0.1/lsd$ ./start-dhash --bindir /home/tri/Desktop/chord-0.1/ --root /tmp/tri/dht/ -v 16 -j 173.16.200.130:10000 -p 10000 RUNNING: /home/tri/Desktop/chord-0.1//lsd/adbd adbd -d ./db -S ./adbd-sock RUNNING: /home/tri/Desktop/chord-0.1//maint/maintd maintd -d ./maintdata -m carbonite -C ./maint-sock RUNNING: /home/tri/Desktop/chord-0.1//lsd/lsd lsd -d ./adbd-sock -S ./dhash-sock -R ./maint-sock -C ./lsd-sock -v 16 -j 173.16.200.130:10000 -p 10000 // //STORE A FILE ON HOST 1: [HOST1]chord-0.1/tools$ ./filestore /tmp/tri/dht/dhash-sock -s /tmp/tri/test 1 >>>len 20 inflight 0 >>>len 20 >>>p >>>len 280 >>>dadff40f9fa1b2351a887a0ec0711df4b825f496 // //FETCH A FILE ON HOST 1 -> OK: [HOST2] ./filestore /tmp/tri/dht/dhash-sock -f dadff40f9fa1b2351a887a0ec0711df4b825f496 1 retrieve dadff40f9fa1b2351a887a0ec0711df4b825f496 retrieve 1669616e7240f306e53efa7dba0b0842b85e484a retrieve 56c1704c715905a46d458907299c3b5499cb973a // [HOST2]chord-0.1/lsd$ ./start-dhash --bindir /home/tri/Desktop/chord_ins/chord-0.1 --root /tmp/tri/dht/ -v 16 -j 173.16.200.130:10000 RUNNING: /home/tri/Desktop/chord_ins/chord-0.1/lsd/adbd adbd -d ./db -S ./adbd-sock RUNNING: /home/tri/Desktop/chord_ins/chord-0.1/maint/maintd maintd -d ./maintdata -m carbonite -C ./maint-sock RUNNING: /home/tri/Desktop/chord_ins/chord-0.1/lsd/lsd lsd -d ./adbd-sock -S ./dhash-sock -R ./maint-sock -C ./lsd-sock -v 16 -j 173.16.200.130:10000 // //FETCH A FILE ON HOST 1 FROM HOST 2 -> FAILED: [HOST2]chord-0.1/tools$ ./filestore /tmp/tri/dht/dhash-sock -f dadff40f9fa1b2351a887a0ec0711df4b825f496 1 retrieve dadff40f9fa1b2351a887a0ec0711df4b825f496 dhashclient::retrieve failed: dadff40f9fa1b2351a887a0ec0711df4b825f496: DHASH_NOENT fatal: lost inode /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 1. Could you tell me is it possible to test Chord implementation on Virtual machines instead of real ones? 2. Could you tell me the roles of vnode in Chord implementation? Why do we need to use virtual nodes? Thank you very much for your time. Sincerely, Here are logs that how can I test chord with T 2012/9/12 Emil Sit > Hi Tri, > > On Mon, Sep 10, 2012 at 11:49 PM, Tri Nguyen Phi Minh > wrote: > > However, running Chord's configure file still complain that it cannot > find > > BerkeleyDB as previous. > > Could you please tell me extra configurations I should do to make Chord > find > > Berkeley libraries? > > What you did looks reasonable as far as my recollection goes. I don't > recall precisely what the configure script is testing for and I am > grateful these days to generally not have to use autoconf any more. > You can check the configure.log or something to see what link command > it was trying to use and see if you can get that command to work. > > -- > Emil Sit / http://www.emilsit.net/ > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://amsterdam.lcs.mit.edu/pipermail/chord/attachments/20120913/fff86b6e/attachment.htm From lordelf007 at gmail.com Fri Sep 14 22:07:16 2012 From: lordelf007 at gmail.com (Tri Nguyen Phi Minh) Date: Sat, 15 Sep 2012 11:07:16 +0900 Subject: [chord] Chord source code and corresponding SFS version In-Reply-To: References: Message-ID: I finally found the answer for the meaning of Virtual nodes. This is because a Chord node is identified by a pair of . So, for each physical node we can maintain several virtual nodes which are nodes having the same IP_address but different port. It can solve a problem of key load balance as well. Two virtual nodes on the same computer can communicate without using RPC library. Virtual node just use RPC when they communicate with node in other system, that's why I saw two functions definition for obtaining successors in virtual node implementation (one is doget_successor (user_args *sbp); other is get_successor (ptr n, cbchordID_t cb);). Thank you. Tri -------------- next part -------------- An HTML attachment was scrubbed... URL: http://amsterdam.lcs.mit.edu/pipermail/chord/attachments/20120915/3b84c757/attachment.htm