Hi Henrik, Thanks again for the help. I think I have fixed it. Let me try to elaborate my fix:
I put the following logging in drizzled.cc and recompiled drizzle: if (vm.count("no-defaults")) { cout << "Do not pick default conf: " << vm["no-defaults"].as<bool>() << ".\n"; } else { cout << "pick default conf .\n"; } Then I restarted drizzle server and drizzle client. Irrespective of the 'no-defaults' option, the code always go inside the if block rather than the else block. But the value of vm["no-defaults"].as<bool>() is 'false' if I don't provide "--no-defaults" in the command line. If I provide "--no-defaults" in the command line then vm["no-defaults"].as<bool>() is true: ./drizzled/drizzled ==> vm["no-defaults"].as<bool>() ==> false ./drizzled/drizzled ==> vm["no-defaults"].as<bool>() ==> true So then I went to read Boost documentation from http://www.boost.org/doc/libs/1_49_0/doc/html/program_options/tutorial.htmland I figured out that the boost program options have not been used in proper context in that 'if' statement. So I have replaced the code: Old code: if (vm.count("no-defaults")) New Code: if (! vm["no-defaults"].as<bool>()) I recompiled drizzle and everything looks good now. Now drizzle ignores drizzled.cnf if we pass --no-defaults in the command line options. If you give me green signal then I can go ahead with creating the branch for this and propose it for merging. In the mean time I will do further testing. Thanks for the help. Wajahat Abbassi On 2 April 2012 13:41, Henrik Ingo <henrik.i...@avoinelama.fi> wrote: > Seems like the if statement is not correct either: If "no-defaults" is > true, then the config file should *not* be read. > > Otoh, then you have the opposite problem, if no-defaults is false / > not set, then of course the below code *should* be executed. So you > still need to trace where it is set. (Or maybe it is not set / handled > anywhere?) > > henrik > > On Mon, Apr 2, 2012 at 2:27 PM, Wajahat Abbassi > <wajahat.abba...@gmail.com> wrote: > > Hi Henrik, > > > > Thank you so much for the help. I have figured out what is going wrong. > > Inside the drizzled/drizzled.cc file, the vm.count("no-defaults") is > always > > getting true event if we specify --no-defaults options. This results in > > execution of following code: > > > > if (vm.count("no-defaults")) > > { > > printf("yessssssssssss"); > > > > fs::path system_config_file_drizzle(system_config_dir); > > system_config_file_drizzle /= "drizzled.cnf"; > > defaults_file_list.insert(defaults_file_list.begin(), > > system_config_file_drizzle.file_string()); > > > > fs::path config_conf_d_location(system_config_dir); > > config_conf_d_location /= "conf.d"; > > > > CachedDirectory config_conf_d(config_conf_d_location.file_string()); > > if (not config_conf_d.fail()) > > { > > > > BOOST_FOREACH(CachedDirectory::Entries::const_reference iter, > > config_conf_d.getEntries()) > > { > > string file_entry(iter->filename); > > if (not file_entry.empty() && file_entry != "." && file_entry != > > "..") > > defaults_file_list.push_back((config_conf_d_location / > > file_entry).file_string()); > > } > > } > > } > > > > > > Now I will debug, why vm.count("no-defaults") is getting true always. I > > deliberately denied entry to this code snippet and I can see that the > > configuration file doesn't picked up then. This looks good. So the > problem > > is just in the setting of vm.count("no-defaults") > > > > Thanks. > > > > Wajahat Abbassi. > > > > > > > > On 2 April 2012 11:48, Henrik Ingo <henrik.i...@avoinelama.fi> wrote: > >> > >> Hi Wajahat > >> > >> Looks good. You are on the right track. Note that there are a few > >> options like --no-defaults that drizzled should process early on, > >> earlier than normal options. The point is, for other options drizzled > >> will read the config files first and then process options. But for > >> no-defaults of course it has to evaluate the option before it reads > >> any config file. > >> > >> henrik > >> > >> On Mon, Apr 2, 2012 at 1:04 PM, Wajahat Abbassi > >> <wajahat.abba...@gmail.com> wrote: > >> > Hi Henrik, > >> > > >> > I am debugging that --no-defaults bug since yesterday. I can see that > >> > this > >> > option is not working. i.e. > >> > > >> > waj@wajahat:~/drizzle/drizzled$ strace ./drizzled --no-defaults 2>&1| > >> > grep > >> > cnf > >> > open("/usr/local/etc/drizzle/drizzled.cnf", O_RDONLY) = 3 > >> > > >> > If I remove the drizzled.cnf from the path, then strace shows: > >> > > >> > waj@wajahat:~/drizzle/drizzled$ strace ./drizzled --no-defaults 2>&1| > >> > grep > >> > cnf > >> > open("/usr/local/etc/drizzle/drizzled.cnf", O_RDONLY) = -1 > >> > > >> > Initially I was thinking that it might loads up the configuration but > >> > doesn't use them if --no-defaults is specified. But I tried setting up > >> > few > >> > parameters in drizzled.cnf and 'drizzled' picks up those parameter > even > >> > if I > >> > specify --no-defaults. > >> > > >> > But I analyzed drizzled/main.cc, drizzled/drizzled.cc and most of the > >> > files > >> > in drizzled directory but couldn't find location where 'drizzled' > loads > >> > up > >> > all the configuration. I will keep looking the code, at least I am > >> > getting > >> > better understanding of the code through this code analyses. > >> > > >> > Thanks > >> > > >> > Wajahat Abbassi > >> > > >> > > >> > > >> > On 31 March 2012 17:11, Henrik Ingo <henrik.i...@avoinelama.fi> > wrote: > >> >> > >> >> On Sat, Mar 31, 2012 at 12:56 PM, Wajahat Abbassi > >> >> <wajahat.abba...@gmail.com> wrote: > >> >> > I have a question please. If I make any change in the Drizzle code > >> >> > then > >> >> > I > >> >> > need to recompile again in order to see the effect of that code > >> >> > change > >> >> > please? If the answer is yes, then is there any quick way of > >> >> > compiling > >> >> > the > >> >> > code because on my laptop it takes a long time to compile actually > >> >> > (considering the fact that my laptop is 3 years old :( ). > >> >> > >> >> The first time it takes long on any computer. 30 - 60 minutes is > >> >> minimum. But when you do changes you will see that only the changed > >> >> file needs to be recompiled, this just takes a minute or less. > >> >> > >> >> Occasionally, for instance if you would add a new plugin, remove one > >> >> that used to exist, or you just run ./configure again, you end up > >> >> recompiling everything from scratch. > >> >> > >> >> henrik > >> >> > >> >> > > >> >> > For code contributions, I am following the Standard Operating > >> >> > Procedure > >> >> > from: > >> >> > http://docs.drizzle.org/contributing/code.html > >> >> > > >> >> > I have assigned the following bug to myself on launchpad and I am > >> >> > working on > >> >> > it. If I would have any questions then I will probably ask it on > IRC. > >> >> > So > >> >> > far > >> >> > so good. The bug is: > >> >> > > >> >> > https://bugs.launchpad.net/drizzle/+bug/935951 > >> >> > > >> >> > If anyone can give me initial pointers/hints about how to approach > >> >> > the > >> >> > above > >> >> > bug then it will be of great help to me. > >> >> > > >> >> > Thank you. > >> >> > > >> >> > Wajahat Abbassi > >> >> > > >> >> > > >> >> > On 27 March 2012 15:53, Wajahat Abbassi <wajahat.abba...@gmail.com > > > >> >> > wrote: > >> >> >> > >> >> >> Dear Henrik, > >> >> >> > >> >> >> Thank you for the positive feedback. > >> >> >> > >> >> >>> > >> >> >>> One thing I wanted to ask is, have you ever contributed to some > >> >> >>> open > >> >> >>> source project before? Is some work you have done, even just > >> >> >>> academic, > >> >> >>> publicly available so it could be reviewed by Drizzle mentors? > >> >> >> > >> >> >> > >> >> >> This is the first time I am participating in Google summer of code > >> >> >> and > >> >> >> I > >> >> >> am excited about it. In my past projects, I have worked on Grid > >> >> >> middleware > >> >> >> framework at University of Reading, UK. I designed the integration > >> >> >> mechanism > >> >> >> between GridSphere Portal and Gridway Metaschedular. I will send > the > >> >> >> copy of > >> >> >> that work on you email address in a separate email. > >> >> >> > >> >> >>> > >> >> >>> > >> >> >>> If not, you might want to consider trying to fix some > >> >> >>> low-hanging-bugs > >> >> >>> during the GSOC application period to showcase your skills: > >> >> >>> > >> >> >>> > https://bugs.launchpad.net/drizzle/+bugs?field.tag=low-hanging-fruit > >> >> >> > >> >> >> > >> >> >> I am more than happy to pick up the bugs and fix them. I will now > >> >> >> setup > >> >> >> my > >> >> >> machine with the Drizzle and then pick up a bug to get myself > >> >> >> familiar > >> >> >> with > >> >> >> the system. Thank you for this suggestion. > >> >> >> > >> >> >> Wajahat Abbassi > >> >> >> > >> >> >> > >> >> >> > >> >> >> > >> >> >> On Mon, Mar 26, 2012 at 1:31 AM, Wajahat Abbassi > >> >> >> <wajahat.abba...@gmail.com> wrote: > >> >> >> > Hi Marcus & Danial, > >> >> >> > > >> >> >> > I hope you are doing good. I am interested to work in the > emerging > >> >> >> > Database > >> >> >> > system Drizzle as a GSoC student this year. I have gone through > >> >> >> > the > >> >> >> > list > >> >> >> > of > >> >> >> > very interesting ideas on > >> >> >> > http://wiki.drizzle.org/GSOC_2012_Project_Ideas. I > >> >> >> > have found 1) Compression (Mentor: Marcus) and 2) Make all > plugins > >> >> >> > dynamic > >> >> >> > (Mentor: Danial) very interesting and promising. I would be > really > >> >> >> > pleased > >> >> >> > to make my contributions in one of these projects please. The > >> >> >> > following > >> >> >> > is > >> >> >> > my brief introduction: > >> >> >> > > >> >> >> > I am currently a Mphil student. Previously, I hold M.Sc in > Network > >> >> >> > Centred > >> >> >> > computing focusing mainly on network programming, data > >> >> >> > communications > >> >> >> > and > >> >> >> > high performance computing from at University of Reading, UK. I > >> >> >> > have > >> >> >> > extensive hands on experience in different programming languages > >> >> >> > (C. > >> >> >> > C++, > >> >> >> > J2EE, J2SE, Ruby on rails and Shell scripting). In my > >> >> >> > dissertation, I > >> >> >> > worked > >> >> >> > on grid computing paradigm where I designed and developed an > >> >> >> > integration > >> >> >> > layer between GridWay Metaschedular and GridSphere Portal > >> >> >> > framework > >> >> >> > to > >> >> >> > offer > >> >> >> > a PORTLET-based GUI to allow the GRID based distributed jobs to > be > >> >> >> > scheduled > >> >> >> > to the Grid worker nodes remotely and also to perform various > job > >> >> >> > management > >> >> >> > functions. > >> >> >> > > >> >> >> > The following is a list of some of my academic projects: > >> >> >> > > >> >> >> > · Implemented Enterprise JavaBeans according to the EJB > >> >> >> > 3.0 > >> >> >> > specification (JSR 220). Deployment and execution of stateless & > >> >> >> > state-full > >> >> >> > session EJB. > >> >> >> > > >> >> >> > · Developed MVC based Sporting manager using Servlets, > >> >> >> > JSPs & > >> >> >> > JavaBeans. > >> >> >> > > >> >> >> > · Designed, developed and demonstrated a client-server > >> >> >> > Java > >> >> >> > based > >> >> >> > application for checking student module sections that is > >> >> >> > consistent > >> >> >> > with > >> >> >> > programme specification. > >> >> >> > > >> >> >> > · Implemented the FTP protocol using C and UNIX System > >> >> >> > calls > >> >> >> > in > >> >> >> > Advanced OS course. > >> >> >> > > >> >> >> > I am really looking forward to have a very productive summer of > >> >> >> > coding > >> >> >> > with > >> >> >> > Drizzle. > >> >> >> > > >> >> >> > Please find my attached resume. > >> >> >> > > >> >> >> > Yours Sincerely, > >> >> >> > > >> >> >> > Wajahat Abbassi > >> >> >> > > >> >> >> > > >> >> >>> > >> >> >>> > _______________________________________________ > >> >> >>> > Mailing list: https://launchpad.net/~drizzle-discuss > >> >> >>> > Post to : drizzle-discuss@lists.launchpad.net > >> >> >>> > Unsubscribe : https://launchpad.net/~drizzle-discuss > >> >> >>> > More help : https://help.launchpad.net/ListHelp > >> >> >>> > > >> >> >>> > >> >> >>> > >> >> >>> > >> >> >>> -- > >> >> >>> henrik.i...@avoinelama.fi > >> >> >>> +358-40-8211286 skype: henrik.ingo irc: hingo > >> >> >>> www.openlife.cc > >> >> >>> > >> >> >>> My LinkedIn profile: > >> >> >>> http://www.linkedin.com/profile/view?id=9522559 > >> >> >> > >> >> >> > >> >> >> > >> >> > > >> >> > >> >> > >> >> > >> >> -- > >> >> henrik.i...@avoinelama.fi > >> >> +358-40-8211286 skype: henrik.ingo irc: hingo > >> >> www.openlife.cc > >> >> > >> >> My LinkedIn profile: http://www.linkedin.com/profile/view?id=9522559 > >> > > >> > > >> > >> > >> > >> -- > >> henrik.i...@avoinelama.fi > >> +358-40-8211286 skype: henrik.ingo irc: hingo > >> www.openlife.cc > >> > >> My LinkedIn profile: http://www.linkedin.com/profile/view?id=9522559 > > > > > > > > -- > henrik.i...@avoinelama.fi > +358-40-8211286 skype: henrik.ingo irc: hingo > www.openlife.cc > > My LinkedIn profile: http://www.linkedin.com/profile/view?id=9522559 >
_______________________________________________ Mailing list: https://launchpad.net/~drizzle-discuss Post to : drizzle-discuss@lists.launchpad.net Unsubscribe : https://launchpad.net/~drizzle-discuss More help : https://help.launchpad.net/ListHelp