While trying out sequelize, I was TDD’ing some code using mocha and reached this error from mocha while watching a test fail:
Error: global leak detected: columnTypes
So I looked through the code and found https://github.com/sequelize/sequelize/blob/f16f39221d9f3be64d7fd58235d5420eba4e10be/lib/dialects/sqlite/query.js#L38 which certainly looks like it would be a global leak, since the code is referring to “this” inside of an anonymous function.
However, inside the sequelize tests, “this” was referring to some sort of representation of the query, likely due to an “apply” or “call” somewhere. Some time later, I just tried to get the test to pass, and once I sync()ed the table and added some columns to the model, it did.
Long story short: that is the error that you get when:
- the table does not exist
- the model does not have any attributes