Bug #26307 inconsistant jam()/ljam() use in DBTUP source files.
Submitted: 13 Feb 2007 0:35 Modified: 23 Mar 2007 3:21
Reporter: Hartmut Holzgraefe Email Updates:
Status: Closed Impact on me:
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S3 (Non-critical)
Version:5.1 OS:
Assigned to: li zhou CPU Architecture:Any

[13 Feb 2007 0:35] Hartmut Holzgraefe
jam()/ljam() useage is not consistant in the storage/ndb/src/kernel/block/dbtup/*.cpp source files

- several files define ljam() macros but use a mix of ljam() and jam()
- DbtupScan.cpp redefines jam() instead of adding an ljam() on top of it
- DbtupExecQuery.cpp and DbtupDiskAlloc.cpp don't define ljam() at all, so causing ambiguos entries
- DbtupExecQuery.cpp has >3000 lines, so overlapping with the ljam() ranges of DbtupBuffer.cpp and DbtupRoutines.cpp

How to repeat:
just look at the source

Suggested fix:
- fix inconsistant jam()/ljam() usees
- make DbtupScan.cpp use ljam() instead of redefining jam()
- define offset ranges for DbtupExecQuery.cpp and DbtupDiskAlloc.cpp
- maybe redefine offset ranges to increments of 10000 as in DBTUX?
[2 Mar 2007 10:51] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:


ChangeSet@1.2440, 2007-03-02 18:45:09+00:00, lzhou@dev3-63.(none) +18 -0
  BUG#26307 correct inconsistant jam() and ljam() use in DBTUP source files.
[23 Mar 2007 3:21] Jon Stephens
Change is in sources only, no visible changes to end users -> nothing to document. Closed w/o further action.