forum.wfido.ru  

Вернуться   forum.wfido.ru > Прочие эхи > RU.JNODE

Ответ
 
Опции темы Опции просмотра
  #1  
Старый 28.01.2018, 19:40
Henri Laan
Guest
 
Сообщений: n/a
По умолчанию MySQL - ошибка в INSERT

Henri Laan написал(а) к All в Jan 18 17:27:34 по местному времени:

Нello, All.

Отловил тут ошибку:

======================
28-01-18 00:19:46 [00000033] Echomail SQL Exception in save: java.sql.SQLException: Unable to run insert stmt on object Echomail

......

at com.j256.ormlite.misc.SqlExceptionUtil.create(SqlExceptionUtil.java:22)
at com.j256.ormlite.stmt.mapped.MappedCreate.insert(MappedCreate.java:135)
at com.j256.ormlite.stmt.StatementExecutor.create(StatementExecutor.java:450)
at com.j256.ormlite.dao.BaseDaoImpl.create(BaseDaoImpl.java:310)
at jnode.dao.GenericDAO.save(GenericDAO.java:335)
at jnode.ftn.tosser.FtnTosser.tossEchomail(FtnTosser.java:177)
at jnode.ftn.tosser.FtnTosser.tossInboundDirectory(FtnTosser.java:282)
at jnode.main.threads.TosserQueue.toss(TosserQueue.java:49)
at jnode.ftn.tosser.FtnTosser.tossIncoming(FtnTosser.java:209)
at jnode.protocol.binkp.BinkpProtocolTools.forwardToTossing(BinkpProtocolTools.java:166)
at jnode.protocol.binkp.connector.BinkpAbstractConnector.proccessFrame(BinkpAbstractConnector.java:254)
at jnode.protocol.binkp.connector.BinkpAsyncConnector.run(BinkpAsyncConnector.java:158)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'message' at row 1
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4235)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4169)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2617)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2778)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2825)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2156)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2441)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2366)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2350)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.insert(JdbcDatabaseConnection.java:170)
at com.j256.ormlite.stmt.mapped.MappedCreate.insert(MappedCreate.java:91)
... 13 more
======================

Поле message в таблице echomail по-умолчанию создается с типом text.
При вставке некоторых сообщений этого явно не хватает.
Конкретно здесь идет вставка 71426 символов, при ограничении в 65535.

Т.е. такое решение может помочь:
ALTER TABLE echomail MODIFY message MEDIUMTEXT;
ну или LONGTEXT, не знаю, как лучше.

При этом, в таблице netmail поле text по-умолчанию идет с типом MEDIUMTEXT


Best regards, Нenri Laan.
---
Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 20:20. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2022, vBulletin Solutions, Inc. Перевод: zCarot