MySQL Forums
Forum List  »  NDB clusters

Re: Exception on get method clusterj
Posted by: Arco van der Velden
Date: April 17, 2015 11:40AM

Hi Craig,

Thanks for your response.
We're running on windows server 2008 64 bit.
Java JDK 7
MySql cluster 7.3.8 Winx 64

I created the table with
CREATE TABLE `positions` (
`id` int(11) NOT NULL,
`total` decimal(30,7) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=ndbcluster DEFAULT CHARSET=utf8;

And the interface looks like

@PersistenceCapable(table = "positions")
public interface PositionsInterface
{
//
//
@PrimaryKey
@Column(name = "id")
int getId();
void setId(int id);

@Column(name = "total")
BigDecimal getTotal();
void setTotal(BigDecimal total);
}

Full stack trace

com.mysql.clusterj.ClusterJDatastoreException: For field total column total valueDelegate object BigDecimal, error executing objectGetValue. Caused by java.lang.IllegalStateException:Current state = CODING_END, new state = FLUSHED
at com.mysql.clusterj.core.metadata.AbstractDomainFieldHandlerImpl.objectGetValue(AbstractDomainFieldHandlerImpl.java:297)
at com.mysql.clusterj.tie.NdbRecordSmartValueHandlerImpl.get(NdbRecordSmartValueHandlerImpl.java:715)
at com.mysql.clusterj.tie.NdbRecordSmartValueHandlerImpl.invoke(NdbRecordSmartValueHandlerImpl.java:741)
at com.mysql.clusterj.core.metadata.$Proxy12.getTotal(Unknown Source)
at com.euroccp.tps.entities.facade.InstructionsFacade.updateRecordClusterJ(InstructionsFacade.java:66)
at com.euroccp.tps.database.TPSDatabase.processTransAction(TPSDatabase.java:68)
at com.euroccp.tps.threads.MySQLClusterJ.processCommand(MySQLClusterJ.java:61)
at com.euroccp.tps.threads.MySQLClusterJ.run(MySQLClusterJ.java:48)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.IllegalStateException: Current state = CODING_END, new state = FLUSHED
at java.nio.charset.CharsetDecoder.throwIllegalStateException(CharsetDecoder.java:968)
at java.nio.charset.CharsetDecoder.flush(CharsetDecoder.java:657)
at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:786)
at com.mysql.clusterj.tie.Utility.getDecimalString(Utility.java:1719)
at com.mysql.clusterj.tie.Utility.getDecimal(Utility.java:1671)
at com.mysql.clusterj.tie.NdbRecordImpl.getDecimal(NdbRecordImpl.java:543)
at com.mysql.clusterj.tie.NdbRecordOperationImpl.getDecimal(NdbRecordOperationImpl.java:854)
at com.mysql.clusterj.tie.NdbRecordSmartValueHandlerImpl.getBigDecimal(NdbRecordSmartValueHandlerImpl.java:210)
at com.mysql.clusterj.core.metadata.AbstractDomainFieldHandlerImpl$10.objectGetValue(AbstractDomainFieldHandlerImpl.java:1249)
at com.mysql.clusterj.core.metadata.AbstractDomainFieldHandlerImpl.objectGetValue(AbstractDomainFieldHandlerImpl.java:295)
... 12 more
java.lang.IllegalStateException: Current state = CODING_END, new state = FLUSHED
at java.nio.charset.CharsetDecoder.throwIllegalStateException(CharsetDecoder.java:968)
at java.nio.charset.CharsetDecoder.flush(CharsetDecoder.java:657)
at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:786)
at com.mysql.clusterj.tie.Utility.getDecimalString(Utility.java:1719)
at com.mysql.clusterj.tie.Utility.getDecimal(Utility.java:1671)
at com.mysql.clusterj.tie.NdbRecordImpl.getDecimal(NdbRecordImpl.java:543)
at com.mysql.clusterj.tie.NdbRecordOperationImpl.getDecimal(NdbRecordOperationImpl.java:854)
at com.mysql.clusterj.tie.NdbRecordSmartValueHandlerImpl.getBigDecimal(NdbRecordSmartValueHandlerImpl.java:210)
at com.mysql.clusterj.core.metadata.AbstractDomainFieldHandlerImpl$10.objectGetValue(AbstractDomainFieldHandlerImpl.java:1249)
at com.mysql.clusterj.core.metadata.AbstractDomainFieldHandlerImpl.objectGetValue(AbstractDomainFieldHandlerImpl.java:295)
at com.mysql.clusterj.tie.NdbRecordSmartValueHandlerImpl.get(NdbRecordSmartValueHandlerImpl.java:715)
at com.mysql.clusterj.tie.NdbRecordSmartValueHandlerImpl.invoke(NdbRecordSmartValueHandlerImpl.java:741)
at com.mysql.clusterj.core.metadata.$Proxy12.getTotal(Unknown Source)
at com.euroccp.tps.entities.facade.InstructionsFacade.updateRecordClusterJ(InstructionsFacade.java:66)
at com.euroccp.tps.database.TPSDatabase.processTransAction(TPSDatabase.java:68)
at com.euroccp.tps.threads.MySQLClusterJ.processCommand(MySQLClusterJ.java:61)
at com.euroccp.tps.threads.MySQLClusterJ.run(MySQLClusterJ.java:48)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
apr 14, 2015

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: Exception on get method clusterj
1157
April 17, 2015 11:40AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.