Yes, of course, but I never felt the need to time the operations, we

are using a udf s.th. like:

void EXPORT fn_b_load ( char* s , BLOB b )
{
unsigned char *buffer;
if ( b->blob_handle )
{
int buffsize = 4096;
FILE *file;
unsigned char *fname = intern_recode(s);
file= fopen ( fname, "rb" );
if ( file )
{
buffer= ( unsigned char * ) malloc ( buffsize );
if ( buffer )
{
int readSize;
for ( ;; )
{
readSize = fread ( buffer,1,buffsize, file );
( *b->blob_put_segment ) ( b->blob_handle, buffer,readSize );
if ( readSize != buffsize )
break;
}
free ( buffer );
}
fclose ( file );
}
free( fname);
}
}

Unfortunately I haven't had any success in trying this because blob_put_segment() is causing Firebird embedded to throw an instance of "Firebird::status_exception" followed by a core dump that I really can't get to the bottom of. All the other blob functions work fine (such as blob_get_segment) and return correct results.


  • [f... miker...@gmail.com [firebird-support]
    • ... Mike Ro miker...@gmail.com [firebird-support]
      • ... Frank Schlottmann-Gödde fr...@schlottmann-goedde.de [firebird-support]
        • ... Mike Ro miker...@gmail.com [firebird-support]
        • ... Mike Ro miker...@gmail.com [firebird-support]
          • ... Frank Schlottmann-Gödde fr...@schlottmann-goedde.de [firebird-support]
            • ... Mike Ro miker...@gmail.com [firebird-support]
              • ... Frank Schlottmann-Gödde fr...@schlottmann-goedde.de [firebird-support]
                • ... Mike Ro miker...@gmail.com [firebird-support]
                • ... Olivier Mascia o...@tipgroup.com [firebird-support]
                • ... Mike Ro miker...@gmail.com [firebird-support]
                • ... Frank Schlottmann-Gödde fr...@schlottmann-goedde.de [firebird-support]
                • ... Mike Ro miker...@gmail.com [firebird-support]
                • ... Olivier Mascia o...@integral.be [firebird-support]
                • ... Mike Ro miker...@gmail.com [firebird-support]

Reply via email to