
| Key: |
HHH-3161
|
| Type: |
Bug
|
| Status: |
Open
|
| Priority: |
Critical
|
| Assignee: |
Unassigned
|
| Reporter: |
cyrus
|
| Votes: |
1
|
| Watchers: |
2
|
|
If you were logged in you would be able to see more operations.
|
|
|
|
Environment:
|
hibernate 3.2.1 + mysql
|
|
Issue Links:
|
Fix
|
|
|
|
This issue is fixed by:
|
|
|
HHH-3892 Improve support for mapping SQL LONGVARCHAR and CLOB to Java String, SQL LONGVARBINARY and BLOB to Java byte[]
|
|
|
|
|
|
|
|
When I execute the statement below:
SELECT concat(case ip_protocol when 6 then 'TCP' when 17 then 'UDP' else 'OTHER' end, ', PORT ', repeat(' ', 5 - length(if(port is NULL, 0, port))), if(port is NULL, 0, port)) as protocol, concat(case ip_protocol when 6 then 'TCP' when 17 then 'UDP' else 'OTHER' end, if(port is NULL, 0, port)) as id, sum(byte_subtotal) as total FROM usage_sum_minute WHERE from_unixtime(time_min * 60) between '2008-02-03 14:00:00' and '2008-03-05 13:59:00' GROUP BY protocol ORDER BY total DESC LIMIT 0, 20
DB schema:
CREATE TABLE `ascot`.`usage_sum_minute` (
`id` int(11) NOT NULL auto_increment,
`igateway_id` smallint(5) NOT NULL,
`time_min` int(11) NOT NULL,
`user_name` varchar(255) default NULL,
`mac_local` varchar(80) NOT NULL,
`ip_local` bigint(20) NOT NULL,
`ip_remote` bigint(20) NOT NULL,
`ip_protocol` smallint(5) NOT NULL,
`port` smallint(6) default NULL,
`domain_name` char(80) default NULL,
`url` varchar(1024) default NULL,
`byte_subtotal` int(11) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`),
KEY `index_igateway` (`igateway_id`),
KEY `index_protocol` (`ip_protocol`),
KEY `index_minute` (`time_min`),
KEY `index_user` (`user_name`),
KEY `index_port` (`port`),
KEY `index_ip` (`ip_remote`)
) ENGINE=InnoDB AUTO_INCREMENT=505699 DEFAULT CHARSET=latin1
It give an exception "No Dialect mapping for JDBC type: -4"
|
|
Description
|
When I execute the statement below:
SELECT concat(case ip_protocol when 6 then 'TCP' when 17 then 'UDP' else 'OTHER' end, ', PORT ', repeat(' ', 5 - length(if(port is NULL, 0, port))), if(port is NULL, 0, port)) as protocol, concat(case ip_protocol when 6 then 'TCP' when 17 then 'UDP' else 'OTHER' end, if(port is NULL, 0, port)) as id, sum(byte_subtotal) as total FROM usage_sum_minute WHERE from_unixtime(time_min * 60) between '2008-02-03 14:00:00' and '2008-03-05 13:59:00' GROUP BY protocol ORDER BY total DESC LIMIT 0, 20
DB schema:
CREATE TABLE `ascot`.`usage_sum_minute` (
`id` int(11) NOT NULL auto_increment,
`igateway_id` smallint(5) NOT NULL,
`time_min` int(11) NOT NULL,
`user_name` varchar(255) default NULL,
`mac_local` varchar(80) NOT NULL,
`ip_local` bigint(20) NOT NULL,
`ip_remote` bigint(20) NOT NULL,
`ip_protocol` smallint(5) NOT NULL,
`port` smallint(6) default NULL,
`domain_name` char(80) default NULL,
`url` varchar(1024) default NULL,
`byte_subtotal` int(11) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`),
KEY `index_igateway` (`igateway_id`),
KEY `index_protocol` (`ip_protocol`),
KEY `index_minute` (`time_min`),
KEY `index_user` (`user_name`),
KEY `index_port` (`port`),
KEY `index_ip` (`ip_remote`)
) ENGINE=InnoDB AUTO_INCREMENT=505699 DEFAULT CHARSET=latin1
It give an exception "No Dialect mapping for JDBC type: -4" |
Show » |
|
Seems the suspected type is 'blob': com.mysql.jdbc.MysqlDefs.mysqlToJavaType("blob") gives -4.