Bugs item #1811563, was opened at 2007-10-11 17:51
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=462816&aid=1811563&group_id=51305

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: any
Group: last released version
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: E.Bevz (bevz)
Assigned to: Nobody/Anonymous (nobody)
Summary: databaselayer BLOB write error

Initial Comment:
DatabaseLayer ver 1.7.1
File: FirebirdParameter.cpp line 148.
In function FirebirdParameter::ResetBlob().
Error is in request: isc_put_segment(status, &m_pBlob, nDataLength, 
(char*)pData).
If nDataLength > 0xFFFF (unsigned short max value), then only part of user data 
sends to database.
Solution:

  int dataFetched = 0;
  char* dataPtr = (char*)pData;
  while (dataFetched < nDataLength){
    unsigned short segLen = (nDataLength - dataFetched) < 0xFFFF ? (nDataLength 
- dataFetched) : 0xFFFF ;
    nReturn = isc_put_segment(status, &m_pBlob, segLen, dataPtr);
    if (nReturn != 0)
    {
#ifndef DONT_USE_DATABASE_LAYER_EXCEPTIONS
        long nSqlCode = isc_sqlcode(status);
        DatabaseLayerException 
error(FirebirdDatabaseLayer::TranslateErrorCode(nSqlCode),
            FirebirdDatabaseLayer::TranslateErrorCodeToString(nSqlCode, 
status));

        throw error;
#endif

        //isc_print_status(status);
        return;
    }
    dataFetched += segLen;
    dataPtr += segLen;
  }



----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=462816&aid=1811563&group_id=51305

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
wxCode-users mailing list
wxCode-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wxcode-users

Reply via email to