in reply to Multithreading and DBI
If not, trying to overlap your queries will not result in a performance gain, rather, you would most likely substantially slow the overall throughput.
That is, are the libraries supplied by Oracle that DBI will call to interface to the DBM certified for multi-threaded use?
Many such DBM interface libraries internally use the process id of the caller to key intermediate storage. If multiple threads from the same process start calling with different, overlapping queries, the internal storage can become corrupted.
Neither of these are limitation of Perl, just facts of life you will have to verify.
If, having verified that your RDBMS and interface libraries are capable of supporting multi-threaded calling code, and that your DB server is such that it is able to overlap multiple concurrent queries and produce a performace increase, then you will have to verify that the DBD driver that you connect through with DBI is capable of multi-threaded use.
Finally, DBI itself is not certified as thread-safe, so if you get problems, you'll have noone to turn to for help.
Overall, it seems to me that listening to those offering "known-to-work" alternatives, rather than being less than gracious of their attempts to help, might save you a lot of heartache.
|
|---|