Support for the latest build of L2J Server, get help here with installations, upgrades, problems.
Do not post bugs reports here, use viewforum.php?f=77 instead. There is no support for other server builds than the official provided by l2jserver.com
Could not store char base data: L2PcInstance:Molodou[269073070] - Incorrect string value: '\xD0\xA3\xD0\xBA\xD1\x80...' for column 'title' at row 1java.sql.SQLException: Incorrect string value: '\xD0\xA3\xD0\xBA\xD1\x80...' for column 'title' at row 1 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3603) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3535) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1989) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2150) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2626) at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2119) at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1362) at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.execute(NewProxyPreparedStatement.java:989) at com.l2jserver.gameserver.model.actor.instance.L2PcInstance.storeCharBase(L2PcInstance.java:7719) at com.l2jserver.gameserver.model.actor.instance.L2PcInstance.store(L2PcInstance.java:7625) at com.l2jserver.gameserver.model.actor.instance.L2PcInstance.store(L2PcInstance.java:7638) at com.l2jserver.gameserver.network.L2GameClient.saveCharToDisk(L2GameClient.java:360) at com.l2jserver.gameserver.network.L2GameClient$AutoSaveTask.run(L2GameClient.java:831) at com.l2jserver.gameserver.ThreadPoolManager$RunnableWrapper.run(ThreadPoolManager.java:86) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRunAndReset(Unknown Source) at java.util.concurrent.FutureTask.runAndReset(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
Could not store char base data: L2PcInstance:---[---] - Incorrect string value: '\xE1\xBB\x83m :...' for column 'title' at row 1java.sql.SQLException: Incorrect string value: '\xE1\xBB\x83m :...' for column 'title' at row 1 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3603) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3535) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1989) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2150) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2626) at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2119) at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1362) at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.execute(NewProxyPreparedStatement.java:989) at com.l2jserver.gameserver.model.actor.instance.L2PcInstance.storeCharBase(L2PcInstance.java:8433) at com.l2jserver.gameserver.model.actor.instance.L2PcInstance.store(L2PcInstance.java:8337) at com.l2jserver.gameserver.model.actor.instance.L2PcInstance.store(L2PcInstance.java:8350) at com.l2jserver.gameserver.network.L2GameClient.saveCharToDisk(L2GameClient.java:361) at com.l2jserver.gameserver.network.L2GameClient$AutoSaveTask.run(L2GameClient.java:845) at com.l2jserver.gameserver.ThreadPoolManager$RunnableWrapper.run(ThreadPoolManager.java:86) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRunAndReset(Unknown Source) at java.util.concurrent.FutureTask.runAndReset(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
Zoey76 wrote:To me looks like unsupported/wrong text encode.
Probably non-latin characters, (Cyrillic ?)
Check your database character set.
I need a case scenario to test myself, what title does the player has, stuff like that.
Temporal fix; try to manually delete de title of that char from database, table characters -> title.
Switch to utf8 maybe?
I have promises to keep and miles to go before I sleep.
You can try to switch to UTF-8, not sure if L2Net is unicode (or whatever it supports) but there are some client modifications and some official clients that allow player to write in non-English characters.
Make a backup of the tables, and change them one by one, you dont want to mess your gameserver by doing something wrong
Also you can add some check to your website if you have some sort of account manager that allow changes in characters from the site.
--Edit
You may want to shutdown your gameserver (and loginserver if they are both in same database) to do the switch.
Powered by Eclipse 4.34 | Eclipse Temurin 21 | MariaDB 11.3.2 | L2J Server 2.6.3.0 - High Five
Zoey76 wrote:You can try to switch to UTF-8, not sure if L2Net is unicode (or whatever it supports) but there are some client modifications and some official clients that allow player to write in non-English characters.
Make a backup of the tables, and change them one by one, you dont want to mess your gameserver by doing something wrong
Also you can add some check to your website if you have some sort of account manager that allow changes in characters from the site.
--Edit You may want to shutdown your gameserver (and loginserver if they are both in same database) to do the switch.
No way, I will immediateley switch my mysql database character set to utf8 while everything is running. What can happen? No risk, no fun. xD
I have promises to keep and miles to go before I sleep.
Ok I found out that this exception is thrown if someone enters non-latin1 characters in the new character title value and saves this value then because core-sided it seems to be allowed to do so but sql-sided its permitted as the appropriate characters title field has the character set latin1 so it must be restricted core-sided as well to only allow latin1 charcters or replace/convert non-latin1 characters.
Knowing that I searched my ass off for a possible solution and found out that its nonsense to try to convert non-latin1 (generally non-ascii) characters back to latin1 characters so at the end the only possible solution is to use maybe regex to check and replace the value before its being saved to the database in order to avoid this exception.
I have promises to keep and miles to go before I sleep.