Invalid column type: getBLOB not implemented for class oracle.jdbc.driver.T4CLongRawAccessor during backup process
Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.
Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Summary
Problem
When generating a backup, the following error is thrown in GUI
1
An exception occurred backing up: org.ofbiz.core.util.GeneralRuntimeException: Error creating GenericValue (SQL Exception while getting value: (Invalid column type: getBLOB not implemented for class oracle.jdbc.driver.T4CLongRawAccessor))
The following appears in the atlassian-jira.log
1
2
3
4
5
6
2016-09-13 13:24:21,066 http-bio-8747-exec-6 ERROR bostjanv 800x332x1 1oz48lq 172.22.48.96 /secure/admin/XmlBackup.jspa [web.action.util.XmlBackup] Exception occurred backing up: org.ofbiz.core.util.GeneralRuntimeException: Error creating GenericValue (SQL Exception while getting value: (Invalid column type: getBLOB not implemented for class oracle.jdbc.driver.T4CLongRawAccessor))
org.ofbiz.core.util.GeneralRuntimeException: Error creating GenericValue (SQL Exception while getting value: (Invalid column type: getBLOB not implemented for class oracle.jdbc.driver.T4CLongRawAccessor))
at org.ofbiz.core.entity.EntityListIterator.next(EntityListIterator.java:253)
at com.atlassian.jira.ofbiz.DefaultOfBizListIterator.next(DefaultOfBizListIterator.java:140)
at com.atlassian.jira.ofbiz.WrappingOfBizListIterator.next(WrappingOfBizListIterator.java:80)
at com.atlassian.jira.action.admin.export.DefaultSaxEntitiesExporter.exportEntity(DefaultSaxEntitiesExporter.java:148)
Diagnosis
Environment
Oracle database
Diagnostic Steps
Enable the following debug class from logging and profiling:
com.atlassian.jira.action.admin.export
Trace the following from the logs:
1
2
2016-09-13 14:07:08,114 http-bio-8747-exec-24 DEBUG bostjanv 844x393x1 1oz48lq 172.22.48.96 /secure/admin/XmlBackup.jspa [action.admin.export.DefaultSaxEntitiesExporter] curEntityName = OSPropertyData
2016-09-13 14:07:08,114 http-bio-8747-exec-24 DEBUG bostjanv 844x393x1 1oz48lq 172.22.48.96 /secure/admin/XmlBackup.jspa [action.admin.export.DefaultSaxEntitiesExporter] inTransaction=true
Check from JIRA_Installation/WEB-INF/classes/entitydefs/entitymodel.xml for OSPropertyData from above curEntityName = OSPropertyData
You will see the following from the entitymodel.xml file:
1 2 3 4 5
<entity entity-name="OSPropertyData" table-name="propertydata" package-name=""> <field name="id" type="numeric"/> <field name="value" col-name="propertyvalue" type="blob"/> <prim-key field="id"/> </entity>
This will show the expected table type for the table
Crosscheck with the table in database
1 2 3 4 5
SQL> desc propertydata; Name Null? Type ----------------------------------------- -------- ---------------------------- ID NOT NULL NUMBER(18) PROPERTYVALUE LONG RAW
Cause
There are tables in JIRA which does not have the correct type, where in above case, the expected is 'blob' but the table is having 'long raw'. Can be due to manual intervention or wrong configuration of the database.
Solution
Resolution
Alter the table type accordingly like below example:
1
2
3
4
5
6
7
SQL> alter table propertydata modify (propertyvalue BLOB);
…
SQL> desc propertydata;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(18)
PROPERTYVALUE BLOB
Was this helpful?