trafodion-codereview mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From DaveBirdsall <>
Subject [GitHub] incubator-trafodion pull request #915: [TRAFODION-2440] Replace fixed length...
Date Tue, 17 Jan 2017 17:15:25 GMT
GitHub user DaveBirdsall opened a pull request:

    [TRAFODION-2440] Replace fixed length buffers with strings in LOB code

    The LOB code has two uses:
    1. To read and write LOB column values in Trafodion tables
    2. To read Hive files into the Trafodion executor
    The LOB code made use of fixed length buffers to store LOB file names. Unfortunately these
are too short in general for use with Hive files. Rather than simply make them longer, I have
replaced these fixed length buffers with string data types in most places in the code.
    Some design notes:
    The LOB code is in the middle of a slow transition from using STL classes and the global
heap to using the Trafodion NAHeap classes and heaps for memory management. Where a LOB class
uses the STL heap, I replaced its fixed length buffer members with an STL string. Where a
LOB class uses NAHeap, I used a Trafodion NAString instead.
    In one place I left the fixed length buffer alone: I did this where the LOB code calls
the CLI function SQL_EXEC_LOBcliInterface. It appears that this code path is traversed only
for LOB column values. (If anyone knows otherwise, please comment.)

You can merge this pull request into a Git repository by running:

    $ git pull Trafodion2440

Alternatively you can review and apply these changes as the patch at:

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #915
commit 49498dfdf6b629bf349f9630fdb5ceb197e93bf9
Author: Dave Birdsall <>
Date:   2017-01-17T17:07:11Z

    [TRAFODION-2440] Replace fixed length buffers with strings in LOB code


If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at or file a JIRA ticket
with INFRA.

View raw message