Before Moodle 2.0 generator classes are instantiated per DDL statement. But under 2.0 they only are instantiated once per request (no matter if they perform N DDL statements).
Currently, there are some code dependent of the old behaviour that fails under the new one (by changing some generator properties at execution time, my fault).
generator classes must guarantee same results independently of the number of DDL statements processed by one instance of them. Going to change those dynamically (wrongly) modified attributes by proper parameters in function calls and so.