Toad World® Forums

Bypass 'Build All' step of the Generate Schema Script function


#1

Is there anyway to skip the creation of the ‘Build All’ script at the end of the Generate Schema Script function?

Using Toad for Oracle versions 12.12 or 13.0, select Database, then Export and then Generate Schema Script. From there I select a set of schema’s to export, check the Create Individual Object DDL files option, pick a high level directory and click the run button. The part where it generates the individual objects seems to work great, no issues but Toad will usually choke and die on the when it gets to the Generate Schema Build Script. Turning off the sort option helps but I still get crashes on schemas with a lot of objects.

Version 13.0 is better at this, it seems to handle very large schema’s better and the interface is easier to use, but it still crashes at the Generate Schema Build Script step for schemas with hundreds or thousands of objects.

Thanks in advance to anyone that can help.


#2

Are you using 32 bit Toad? 64 bit might handle the large schemas better (it won’t be any faster though).

If you don’t want the big script to be generated at all, and you only the individuals files, you can just leave the “one script” field blank and only specify the folder for individual files.


#3

Can you send me a screen shot of when it crashes? I am assuming it is just because the script is too large for Toad to handle all at once, but if it’s something else, I’d like to know so I can hopefully address it.


#4

Oh, it just occurred to me…

When you say “build all” script, are you referring to the script that calls each individual script file? Or the script that has all of the statements to build the entire schema? At first I thought the latter, but after re-reading, I am thinking that you meant the former. There is no way to exclude the former, but I should be able to optimize that. If that is the file you are talking about, you must have LOTS of objects in your schema. Hundreds of thousands? More?


#5

John,

Thanks for replying to my question…

For the ‘crash’ screen print, I don’t think I can provide that, Toad 13.01 basically goes into ‘Not Responding’ mode and then eventually I either get a Windows dialog about the crash or Toad just closes. From the Event Viewer I see this

The program Toad.exe version 13.0.0.80 stopped interacting with Windows and was closed. To see if more information about the problem is available, check the problem history in the Action Center control panel.
Process ID: 3f28
Start Time: 01d425e83fc73201
Termination Time: 25
Application Path: C:\Program Files\Quest Software\Toad for Oracle 2018 Edition\Toad for Oracle 13.0\Toad.exe
Report Id: 9d267d7c-91dc-11e8-899f-a0b3cc4c13ae

This is where is gets stuck, 42,000 objects …

1643.toad_err1.png


#6

I saw your reply by email, but I don’t see it in the Toadworld forum. Not sure what’s going on with that, but…

The code that’s being executed at the time of your screen shot is threaded. So the application main thread should be available to say “hey, I’m responding” to windows, no matter how busy the generate schema script thread is. If you are running Toad in a VM that only has one processor or core, increasing that to at least 2 should solve this.

I’ve spent the day looking at this code. I found a few places that could be optimized, but if you’ve got a ton of objects in your schema and you’ve chosen to write individual DDL script files, well, then your disk is probably very busy during this process, so just be patient and let it run, even if windows thinks the app is not responding. If the CPU usage is high, Toad is working and will finish, as long as it doesn’t run out of memory or disk space.

I’ll post a follow up here when I have some improvements in place for the next beta. I should have it done this week.

-John


#7

42,000 objects is a lot, but it should be no problem. I guess it’s possible that something about the objects themselves is giving Toad a hard time. If you can send me a script to reproduce your schema, I’d be happy to give it a try here. You can email it to john.dorlon@quest.com. I noticed you’ve blanked out schema name, etc. If you send it, I’ll keep it confidential and delete it when I’m done testing.


#8

I looked move closely at the objects Toad is generating and it looks like the table grants might be part of this. The process creates a stand alone file for each grant and for one schema that count was over 25,000 grant objects, it’s a very old database and stuff like that accumulates over time. Seems to work fine when I remove the table grants.

My manager was not comfortable sending you a create script for the schema, so that will not be an option. Sorry I know that would help with this but security first.

Toad is running on my work PC, Windows 7, quad-core cpu, plenty of ram, etc. Also the Resource Monitor does not show any activity for Toad when it ‘hangs’? I also checked for activity in the source database and nothing happening there either.

On a side note I am not getting any emails from this thread, I checked my email address and it looked correct, could be a corporate spam filter on my side but might be related to your things where you saw my response before it was posted to the forum?