Re: [Sguil-devel] Error in SguilLoaderd.tcl
Status: Beta
Brought to you by:
bamm
From: Dave C. <sg...@pi...> - 2011-02-15 01:58:28
|
Actually, now that I re-read the CVS commit (blame the Valentine beer!) I see that the delimiter definition was already there, so the change that was committed was to explicitly add the "LOCAL" keyword to the ELSE path of that statement block, which seems odd. I've included the text from the MySQL docs for the "LOCAL" keyword below. In my case, my lab machine has Sguild and MySQL on the same host, so I've defined DBHOST as 'localhost' (or 127.0.0.1). So the IF statement that was modified on Sept 15 should flow like: If DBHOST is not equal to localhost or 127.0.0.1 then create the mysqlexec statement with the "LOCAL" keyword else do not include the "LOCAL" keyword. But instead, the current CVS code includes the "LOCAL" keyword regardless of the DBHOST setting. -Dave The LOCAL keyword, if specified, is interpreted with respect to the client end of the connection: If LOCAL is specified, the file is read by the client program on the client host and sent to the server. The file can be given as a full path name to specify its exact location. If given as a relative path name, the name is interpreted relative to the directory in which the client program was started. If LOCAL is not specified, the file must be located on the server host and is read directly by the server. The server uses the following rules to locate the file: On Feb 14, 2011, at 8:25 PM, Dave Crawford wrote: > Hi Bamm, > > Not sure if my response from work made it through so I apologize for any dupes.... > > I'm pretty sure the error I was seeing (mysqlexec/db server: Malformed packet) is related directly to the CVS change to SguilLoaderd.tcl on Sept 15th and not a permission issue. (It actually looks like a simple copy/paste error) > > If you remove the "LOCAL" keyword from the mysqlexec statement in the "else" block everything works as expected. > > If you also compare the two commands that are built in that if/else block they are identical, meaning there wouldn't be a need for the check on whether MySQL was running on localhost. Which is why my suspicion is that its a copy/paste error when you were updating the original "if" statement to add the syntax for defining the delimiter in the SANCP files. > > -Dave > > On Feb 14, 2011, at 8:15 AM, Bamm Visscher wrote: > >> Dave, >> >> Did you grant proper permissions to the DB? What version of mysql is this? >> >> GRANT FILE ON *.* TO sguil@localhost; >> FLUSH PRIVILEGES; >> >> Bamm >> >> >> On Sun, Feb 13, 2011 at 6:58 PM, Dave Crawford <sg...@pi...> wrote: >>> Greetings, >>> >>> After spending the weekend debugging why a new Sguil deployment was failing when loading SANCP files I spotted the change below that was made to SguilLoaderd.tcl back on on Sept 15, 2010. I'm not sure of the purpose of the change but it breaks new installs where MySQL is running on the same host as Sguild. (MySQL throws a "mysqlexec/db server: Malformed packet" error when the "LOCAL" keyword is used locally.) >>> >>> >>> -Dave >>> >>> *** 249,253 **** >>> FIELDS TERMINATED BY '|'" >>> } else { >>> ! set dbCmd "LOAD DATA CONCURRENT INFILE '$fileName' INTO TABLE `$table`\ >>> FIELDS TERMINATED BY '|'" >>> } >>> --- 250,255 ---- >>> FIELDS TERMINATED BY '|'" >>> } else { >>> ! #set dbCmd "LOAD DATA CONCURRENT INFILE '$fileName' INTO TABLE `$table` >>> ! set dbCmd "LOAD DATA CONCURRENT LOCAL INFILE '$fileName' INTO TABLE `$table`\ >>> FIELDS TERMINATED BY '|'" >>> } >>> >>> >>> ------------------------------------------------------------------------------ >>> The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: >>> Pinpoint memory and threading errors before they happen. >>> Find and fix more than 250 security defects in the development cycle. >>> Locate bottlenecks in serial and parallel code that limit performance. >>> http://p.sf.net/sfu/intel-dev2devfeb >>> _______________________________________________ >>> Sguil-devel mailing list >>> Sgu...@li... >>> https://lists.sourceforge.net/lists/listinfo/sguil-devel >>> >> >> >> >> -- >> sguil - The Analyst Console for NSM >> http://sguil.sf.net >> >> ------------------------------------------------------------------------------ >> The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: >> Pinpoint memory and threading errors before they happen. >> Find and fix more than 250 security defects in the development cycle. >> Locate bottlenecks in serial and parallel code that limit performance. >> http://p.sf.net/sfu/intel-dev2devfeb >> _______________________________________________ >> Sguil-devel mailing list >> Sgu...@li... >> https://lists.sourceforge.net/lists/listinfo/sguil-devel > > > ------------------------------------------------------------------------------ > The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: > Pinpoint memory and threading errors before they happen. > Find and fix more than 250 security defects in the development cycle. > Locate bottlenecks in serial and parallel code that limit performance. > http://p.sf.net/sfu/intel-dev2devfeb > _______________________________________________ > Sguil-devel mailing list > Sgu...@li... > https://lists.sourceforge.net/lists/listinfo/sguil-devel |