Bug #47546 rep_latency: uses ndbout before calling ndb_init()
Submitted: 23 Sep 2009 10:41 Modified: 31 Jan 2014 7:40
Reporter: Jørgen Austvik Email Updates:
Status: Closed Impact on me:
None 
Category:Tests: Cluster Severity:S3 (Non-critical)
Version:5.1-telco-7.0 OS:Solaris (SunStudio)
Assigned to: Magnus Blåudd CPU Architecture:Any

[23 Sep 2009 10:41] Jørgen Austvik
Description:
rep_latency without any parameters core dumps.

rep_latency.cpp:

  if (argc != 8)
  {
    ndbout << "Arguments are <connect_string cluster 1> <connect_string cluster 2> <database> <table name> <primary key> <value of primary key> <attribute to update>.\n";
    exit(-1);
  }
  // ndb_init must be called first
  ndb_init();

core dump:

t@1 (l@1) program terminated by signal SEGV (no mapping at the fault address)
eCurrent function is NdbOut::operator<<
   60   NdbOut::operator<<(const char* val){ m_out->print("%s", val ? val : "(null)"); return * this; }
(dbx) where
current thread: t@1
=>[1] NdbOut::operator<<(this = 0x25088, val = 0x145a4 "Arguments are <connect_string cluster 1> <connect_string cluster 2> <database> <table name> <primary key> <value of primary key> <attribute to update>.\n"), line 60 in "NdbOut.cpp"
  [2] main(argc = 4, argv = 0xffbff90c), line 72 in "rep_latency.cpp"
(dbx) print m_out
m_out = (nil)

How to repeat:
./rep_latency (compiled with SunStudio on Solaris)

Suggested fix:
Send warning to cerr instead of ndbout
[23 Sep 2009 10:46] Jonas Oreland
why not just move ndb_init to first line inside of main()

also, we normally don't report bugs in "internal" test-programs
(i.e in binaries that we don't ship to customers in a binary distribution)
[23 Sep 2009 10:55] Jørgen Austvik
Ah, I saw it in my install directory, but that is probably because I have ./configure --with-ndb-test.

Changing category to Tests - Cluster.

The reason I suggested cerr instead of earlyer ndb_init is because I didn't think there were any reason for doing ndb_init when we are not going to use ndb.
[23 Sep 2009 20:28] Sveta Smirnova
Thank you for the report.

Verified as described.
[31 Jan 2014 7:40] Magnus Blåudd
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release.

If necessary, you can access the source repository and build the latest available version, including the bug fix. More information about accessing the source trees is available at

    http://dev.mysql.com/doc/en/installing-source.html