(14.0.51.637) Maximum grid count exceeded at... 3

I have a long script with loads of PL/SQL blocks testing my package:
Max grids - progress

Some statements in teh script are SELECTs, so apart of the script's output I get separate grids for my queries.
However, something was changed in the way the grids get numbered and instead of Grid 1, Grid 2, Grid 3, etc, now I get Grid 4, Grid 12 and Grid 182.

I would not mind the higher number (maybe it is tight somehow to the line in the script) if it was not causing an error:
Max grids - dialog
(see also the one in red in the previous screenshot).
No need to mention that the grids are not created as of then....

Just made another test: rerun the same script straight after restarting TOAD - grid numbers were 3, 7 and 171. Then edited the script by removing few empty lines at the top - the grid numbers become 4, 12, 175.
Are those random numbers?

1 Like

The grid tabs are literally numbered by "the number of tabs - 4". The other 4 are "Output", "Errors", "History" (which could be hidden due to settings) and "Environment".

I wonder if there is some error that is happening after a grid is created but before we make it visible. This would explain why your numbers are off.

Is this happening for all of your scripts now or just some?
If you make a script full of "select * from dual;", does that work?

Yes, other scripts fail too - not the shortest ones though, I'd say that only the most "complex" ones. All of these scripts that fail now were running OK in the previous 14 betas - cannot tell which version exactly had ruined that as I'm not running all of these regularly.

I've ruled out:

  • the errors in the script - the same script with all statements producing ORAs removed still fails. However, shows more grids than the longer version with errors (16 vs 2):

    The script without errors:
  • the size of the output - the same number of grids is shown before "Maximum grid count exceeded" error if the output is several thousands of lines (the application tracing on DBMS_OUTPUT) or 200 lines.
  • the size of the grids content - as on the above screenshots: the grids are one-liners.
  • the number of grids - there's no fixed number of grids (or grid #) that limits I have 2 or 16 on the above screenshots, but the other script fails after 20 grids.

Running simple "select * from dual;" does not replicate the problem - even 200 of them have not.
Really, the only thing that could be attributed is the "complexity" of the script - a mix of all: PL/SQL statements, SQL*Plus commands, some DBMS_OUTPUT, few SQL queries.

I will post one of the failing scripts and its output to the Google Drive that you shared with me the other day - maybe it will help.

Thanks, I can reproduce that. The EXECs are using up the 'in-between' grid numbers.