From: Mark W. <ma...@gm...> - 2012-01-18 15:42:59
|
On Tue, Jan 17, 2012 at 8:01 AM, Tian Luo <jac...@gm...> wrote: > Mark, > > Thanks for your reply. But problem remains. > > I have checked out the code again, > from https://sourceforge.net/projects/osdldbt/files/dbt5/, > which was last modified on 2010-04-04. Yeah that looks right, it's been a while since I've been able to work on that... > And I used the correct parameters: > dbt5-pgsql-build-db -c 5000 -i 5000 -t 5000 -s 500 -w 300 > > Still, the same error message. > "Generating ADDRESS table...Segmentation fault > #> BEGIN" > > So, maybe I really need to trace into the problematic function call > "pLoad->WriteNextRecord", made in file "egen/src/EGenGenerateAndLoad.cpp". > Please let me know where to find the definition of this function (forgive my > inexperience with C++). I've found ctags to be helpful with the egen code, if you're looking for another tool to use. :) But WriteNextRecord() may still need some explanation. When using the kit with postgres the WriteNextRecord() method is defined/overloaded in each class that maps to a table in the egen/inc/custom/pgsql directory. For example, since egen threw an error generating the address table, the file you probably want to look at is PGSQLAddressLoad.h. > By the way, which Linux distribution is typical for running this toolkit? I > may try it on a different OS installation as a last resort. I've primarily done development on gentoo, with gcc 4.4. I think I see correctly that ubuntu 10.04 also uses gcc 4.4. IIRC, this kit was developed to run on RHEL 5.4 (in addition to Windows), which uses gcc 4.1. We've made an attempt to update the egen code for the newer version of gcc so hopefully that is not the cause of your problems. I think the bulk of those changes are between these two commits: http://osdldbt.git.sourceforge.net/git/gitweb.cgi?p=osdldbt/dbt5;a=commit;h=8357bb6260eada8b45e1fdeb7bf0e3297283ab31 http://osdldbt.git.sourceforge.net/git/gitweb.cgi?p=osdldbt/dbt5;a=commit;h=0499e41d5c12ab5dd4b3de37af97e68dc5907fa1 One frustration spot for people have been that egen is sensitive to the version of gcc used but this should be ok. I also had a quick look at what version of egen is on the TPC site, so the egen code (in the egen dir, in case it wasn't clear) is still current at 1.12.0. Regards, Mark |