It never ceases to amaze me how difficult some responders on message boards make it to use certain tools. Requests for information are usually denied with something similar to “If you have to ask that, you shouldn’t be _fill_in_the_blank_”. How…
Gzip in python
We have a large text file containing 325 million integer values that we need to load into a database. The file uncompressed is about 4.5GB. Even though disk is cheap, we didn’t have enough readily available to quickly decompress the…
Python multiple producer/consumer queue
Below is a simple skeleton for a python queue that is both fed by and consumed by multiple different threads. We run five threads, each of which populate a queue with random integers. Lastly, we sleep a couple of seconds…
Handling constraints when truncating a table
Oracle doesn’t supply a TRUNCATE TABLE TABLE_NAME CASCADE CONSTRAINTS syntax structure as it does when dropping a table. The anonymous block below will truncate all tables in the current schema and handle the constraints violations (foreign keys) that may be…
Dumping Oracle DDL part two
Below is a python script that strip the double quotes from the output of dbms_metadata.get_ddl, as well as the storage clauses. The initial clause is often far too high, so this allows you to extract the DDL and run it…
History of computers
I found this interesting link while searching for something else. It is a fairly complete history of computer technology from the time before Christ to 2003. Enjoy.