[JDBC-84] Some JDBC drivers return a Boolean that is constructed and not identical to Clojure's true/false Created: 16/Dec/13 Updated: 16/Dec/13 Resolved: 16/Dec/13
|Reporter:||Sean Corfield||Assignee:||Sean Corfield|
After some experimentation, I've discovered that certain JDBC drivers return the equivalent of (Boolean. true) and (Boolean. false) which are truthy/falsey but sometimes produce surprising results since they are not actually true and false. Extending the result set reading protocol to Boolean to turn them into canonical values via if seems to do the trick.
|Comment by Sean Corfield [ 16/Dec/13 2:25 PM ]|
A simple (if v true false) is not sufficient for this - it needs to be (if (= true v) true false) based on tests I've conducted. The problem is that the constructed (Boolean. false) value behaves as truthy.
|Comment by Sean Corfield [ 16/Dec/13 3:13 PM ]|
Added Boolean implementation to IResultSetReadColumn.