Hi, Luca, The file capi.cpp has been updated to include try-catch blocks to absorb all C++ exceptions. The new code is in the SVN repository. When you get a chance to try it, please let us know if it works for you.
John On 6/5/2010 1:35 PM, Luca Deri wrote: > Hi John > I think that the FastBit C API should catch C++ exceptions and return error > an error code instead of (being uncatch) terminating apps that use FastBit > > What do you think? > > Thanks in advance Luca > > > OSError: [Errno 28] No space left on device: > '/home/deri/fastbit/processed/queries/2010/06/05/14/30' > Warning -- makeDir failed to create directory > "/home/deri/fastbit/netflow/2010/06/05/14/35" > terminate called after throwing an instance of 'char const*' > > Program received signal SIGABRT, Aborted. > [Switching to Thread 0x7ffff12ca910 (LWP 914)] > 0x00007ffff53da4b5 in *__GI_raise (sig=<value optimized out>) at > ../nptl/sysdeps/unix/sysv/linux/raise.c:64 > 64 ../nptl/sysdeps/unix/sysv/linux/raise.c: No file o directory. > in ../nptl/sysdeps/unix/sysv/linux/raise.c > (gdb) bt > #0 0x00007ffff53da4b5 in *__GI_raise (sig=<value optimized out>) at > ../nptl/sysdeps/unix/sysv/linux/raise.c:64 > #1 0x00007ffff53ddf50 in *__GI_abort () at abort.c:92 > #2 0x00007ffff4f57cc5 in __gnu_cxx::__verbose_terminate_handler() () from > /usr/lib/libstdc++.so.6 > #3 0x00007ffff4f560f6 in ?? () from /usr/lib/libstdc++.so.6 > #4 0x00007ffff4f56123 in std::terminate() () from /usr/lib/libstdc++.so.6 > #5 0x00007ffff4f5621e in __cxa_throw () from /usr/lib/libstdc++.so.6 > #6 0x00007ffff7252fc8 in part (this=0x7ffff12c96f0, adir=0x7ffff7fe9be8 > "/home/deri/fastbit/netflow/2010/06/05/14/35", bdir=0x0, ro=<value optimized > out>) at part.cp\ > p:346 > #7 0x00007ffff7757c76 in ibis::tafel::write (this=<value optimized out>, > dir=<value optimized out>, tname=<value optimized out>, tdesc=<value > optimized out>, idx=0x7\ > ffff12c71c0 "\330u,\361\377\177") at tafel.cpp:1679 > #8 0x00007ffff77fd8cd in fastbit_flush_buffer (dir=0x7ffff7fe9be8 > "/home/deri/fastbit/netflow/2010/06/05/14/35") at capi.cpp:1460 > #9 0x00007ffff7b47ff6 in flush_fastbit2disk (now=1275741321, final_flush=0 > '\000') at fastbit/fastbit.c:251 > #10 0x00007ffff7b48da4 in dump_flow2fastbit (buffer=0x6ad110 > "\316\r\036\v\300\f\300\005", buffer_len=116) at fastbit/fastbit.c:520 > #11 0x00007ffff7b454ff in exportBucketToNetflowV9 (myBucket=0x7fffe9e9fed0, > direction=1, free_memory=1 '\001') at export.c:155 > #12 0x00007ffff7b455cb in exportBucketToNetflow (myBucket=0x7fffe9e9fed0, > direction=1, free_memory=1 '\001') at export.c:184 > #13 0x00007ffff7b44084 in exportBucket (myBucket=0x7fffe9e9fed0, > free_memory=1 '\001') at engine.c:1500 > #14 0x00007ffff7b44653 in dequeueBucketToExport (notUsed=0x0) at engine.c:1625 > #15 0x00007ffff6481a04 in start_thread (arg=<value optimized out>) at > pthread_create.c:300 > #16 0x00007ffff5486d4d in clone () at > ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 > #17 0x0000000000000000 in ?? () > (gdb) > > _______________________________________________ > FastBit-users mailing list > [email protected] > https://hpcrdm.lbl.gov/cgi-bin/mailman/listinfo/fastbit-users _______________________________________________ FastBit-users mailing list [email protected] https://hpcrdm.lbl.gov/cgi-bin/mailman/listinfo/fastbit-users
