SybSQLException: Attempt to update or insert row failed because resultant row of size larger than 1962 bytes

1.2k views Asked by At

I'm getting this error with sybase while updating records to my table. Below is my table definition

CREATE TABLE BATCH_STEP_EXECUTION  (
STEP_EXECUTION_ID BIGINT  NOT NULL PRIMARY KEY ,
VERSION BIGINT NOT NULL,
STEP_NAME VARCHAR(100) NOT NULL,
JOB_EXECUTION_ID BIGINT NOT NULL,
START_TIME DATETIME NOT NULL ,
END_TIME DATETIME DEFAULT NULL NULL,
STATUS VARCHAR(10) NULL,
COMMIT_COUNT BIGINT NULL,
READ_COUNT BIGINT NULL,
FILTER_COUNT BIGINT NULL,
WRITE_COUNT BIGINT NULL,
READ_SKIP_COUNT BIGINT NULL,
WRITE_SKIP_COUNT BIGINT NULL,
PROCESS_SKIP_COUNT BIGINT NULL,
ROLLBACK_COUNT BIGINT NULL,
EXIT_CODE VARCHAR(2500) NULL,
EXIT_MESSAGE VARCHAR(2500) NULL,
LAST_UPDATED DATETIME,
constraint JOB_EXEC_STEP_FK foreign key (JOB_EXECUTION_ID)
references BATCH_JOB_EXECUTION(JOB_EXECUTION_ID)
) ;

Below is the error message

org.springframework.dao.DataIntegrityViolationException: 
PreparedStatementCallback; 
SQL [UPDATE BATCH_STEP_EXECUTION set START_TIME = ?, END_TIME = ?, STATUS = 
?, 
COMMIT_COUNT = ?, READ_COUNT = ?, FILTER_COUNT = ?, WRITE_COUNT = ?, 
EXIT_CODE = ?, 
EXIT_MESSAGE = ?, VERSION = ?, READ_SKIP_COUNT = ?, PROCESS_SKIP_COUNT = ?, 
WRITE_SKIP_COUNT = ?, ROLLBACK_COUNT = ?, LAST_UPDATED = ? where 
STEP_EXECUTION_ID = ? 
and VERSION = ?]; Attempt to update or insert row failed because resultant 
row of size 
2633 bytes is larger than the maximum size (1962 bytes) allowed for this 
table.
; nested exception is com.sybase.jdbc4.jdbc.SybSQLException: Attempt to 
update or 
insert row failed because resultant row of size 2633 bytes is larger than the 
maximum 
size (1962 bytes) allowed for this table.

These 2 columns are creating problem.

enter image description here

0

There are 0 answers