不要怂,就是干,撸起袖子干!

Commit 80f8e0f2 by Jan Aagaard Meier

call clearTypeParser for all dialects

1 parent 301f6b80
...@@ -61,6 +61,11 @@ ConnectionManager.prototype.$refreshTypeParser = function (dataType) { ...@@ -61,6 +61,11 @@ ConnectionManager.prototype.$refreshTypeParser = function (dataType) {
} }
}; };
ConnectionManager.prototype.$clearTypeParser = function () {
this.oidMap = {};
this.arrayOidMap = {};
};
ConnectionManager.prototype.getTypeParser = function (oid, format) { ConnectionManager.prototype.getTypeParser = function (oid, format) {
if (this.oidMap[oid]) { if (this.oidMap[oid]) {
return this.oidMap[oid]; return this.oidMap[oid];
......
...@@ -17,28 +17,7 @@ var chai = require('chai') ...@@ -17,28 +17,7 @@ var chai = require('chai')
describe(Support.getTestDialectTeaser('DataTypes'), function() { describe(Support.getTestDialectTeaser('DataTypes'), function() {
afterEach(function () { afterEach(function () {
// Restore some sanity by resetting all parsers // Restore some sanity by resetting all parsers
switch (dialect) {
case 'postgres':
var types = require('pg-types');
_.each(DataTypes, function (dataType) {
if (dataType.types && dataType.types.postgres) {
dataType.types.postgres.oids.forEach(function (oid) {
types.setTypeParser(oid, _.identity);
});
}
});
require('pg-types/lib/binaryParsers').init(function (oid, converter) {
types.setTypeParser(oid, 'binary', converter);
});
require('pg-types/lib/textParsers').init(function (oid, converter) {
types.setTypeParser(oid, 'text', converter);
});
break;
default:
this.sequelize.connectionManager.$clearTypeParser(); this.sequelize.connectionManager.$clearTypeParser();
}
this.sequelize.connectionManager.refreshTypeParser(DataTypes[dialect]); // Reload custom parsers this.sequelize.connectionManager.refreshTypeParser(DataTypes[dialect]); // Reload custom parsers
}); });
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!