| Q: | eventmonAPI sometimes generate email for invalid element especially when running dataPipelines with -metadataapi tee option. (PR# 2173) |
| A: | eventmonAPI sends data objects via threads. Each sent object
is destroyed on completion of the thread function. If
the -metadataapi option is used to send metadata object to
both ligolw and metadata APIs, the same object is sent
in parallel and then destroyed in parallel. There could
be a potential memory corruption if the sent object is being
reused before the 2nd destruction occurs.
Work around: -metadataapi tee option was created to save data in case of database deadlock or error during insertion. With the threaded metadataAPI there is less likely chance of losing data since each insertion is done atomically in a thread. So it may not be necessary to use -metadataapi tee option all the time. The -metadataapi metadata should suffice in most cases. |