Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-31148

Fix Cannot deep copy java.lang.Integer

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 10.10-HF65, 2021.25
    • Component/s: Core DBS
    • Release Notes Summary:
      The error "Cannot deep copy: java.lang.Integer" is handled at Core level.
    • Team:
      PLATFORM
    • Sprint:
      nxplatform #67
    • Story Points:
      3

      Description

      Sometimes we observe this kind of exception during indexing:

      java.lang.UnsupportedOperationException: Cannot deep copy: java.lang.Integer
      	at org.nuxeo.ecm.core.storage.StateHelper.deepCopy(StateHelper.java:300) ~[nuxeo-core-storage-10.10-HF55.jar:?]
      	at org.nuxeo.ecm.core.storage.StateHelper.deepCopy(StateHelper.java:320) ~[nuxeo-core-storage-10.10-HF55.jar:?]
      	at org.nuxeo.ecm.core.storage.StateHelper.deepCopy(StateHelper.java:309) ~[nuxeo-core-storage-10.10-HF55.jar:?]
      	at org.nuxeo.ecm.core.storage.dbs.DBSDocumentState.<init>(DBSDocumentState.java:74) ~[nuxeo-core-storage-dbs-10.10-HF55.jar:?]
      	at org.nuxeo.ecm.core.storage.dbs.DBSTransactionState.newTransientState(DBSTransactionState.java:184) ~[nuxeo-core-storage-dbs-10.10-HF55.jar:?]
      	at org.nuxeo.ecm.core.storage.dbs.DBSTransactionState.getStateForUpdate(DBSTransactionState.java:201) ~[nuxeo-core-storage-dbs-10.10-HF55.jar:?]
      	at org.nuxeo.ecm.core.storage.dbs.DBSSession.getDocument(DBSSession.java:427) ~[nuxeo-core-storage-dbs-10.10-HF55.jar:?]
      	at org.nuxeo.ecm.core.storage.dbs.DBSDocument.getWorkingCopy(DBSDocument.java:781) ~[nuxeo-core-storage-dbs-10.10-HF55.jar:?]
      	at org.nuxeo.ecm.core.storage.dbs.DBSDocument.isVersionSeriesCheckedOut(DBSDocument.java:770) ~[nuxeo-core-storage-dbs-10.10-HF55.jar:?]
      	at org.nuxeo.ecm.core.api.DocumentModelFactory.refreshDocumentModel(DocumentModelFactory.java:290) ~[nuxeo-core-10.10-HF56.jar:?]
      	at org.nuxeo.ecm.core.api.AbstractSession.refreshDocument(AbstractSession.java:2617) ~[nuxeo-core-10.10-HF56.jar:?]
      	at org.nuxeo.ecm.core.api.impl.DocumentModelImpl.refresh(DocumentModelImpl.java:1414) ~[nuxeo-core-api-10.10-HF56.jar:?]
      	at org.nuxeo.ecm.core.api.impl.DocumentModelImpl.getVersionSeriesId(DocumentModelImpl.java:665) ~[nuxeo-core-api-10.10-HF56.jar:?]
      	at org.nuxeo.elasticsearch.io.JsonESDocumentWriter.writeSystemProperties(JsonESDocumentWriter.java:96) ~[nuxeo-elasticsearch-core-10.10-HF56.jar:?]
      	at org.nuxeo.elasticsearch.io.JsonESDocumentWriter.writeESDocument(JsonESDocumentWriter.java:194) ~[nuxeo-elasticsearch-core-10.10-HF56.jar:?]
      	at org.nuxeo.elasticsearch.core.ElasticSearchIndexingImpl.source(ElasticSearchIndexingImpl.java:484) ~[nuxeo-elasticsearch-core-10.10-HF56.jar:?]
      	at org.nuxeo.elasticsearch.core.ElasticSearchIndexingImpl.buildEsIndexingRequest(ElasticSearchIndexingImpl.java:462) ~[nuxeo-elasticsearch-core-10.10-HF56.jar:?]
      	at org.nuxeo.elasticsearch.core.ElasticSearchIndexingImpl.processBulkIndexCommands(ElasticSearchIndexingImpl.java:179) ~[nuxeo-elasticsearch-core-10.10-HF56.jar:?]
      	at org.nuxeo.elasticsearch.core.ElasticSearchIndexingImpl.indexNonRecursive(ElasticSearchIndexingImpl.java:147) ~[nuxeo-elasticsearch-core-10.10-HF56.jar:?]
      	at org.nuxeo.elasticsearch.ElasticSearchComponent.indexNonRecursive(ElasticSearchComponent.java:430) ~[nuxeo-elasticsearch-core-10.10-HF56.jar:?]
      	at org.nuxeo.elasticsearch.work.BucketIndexingWorker.doWork(BucketIndexingWorker.java:78) ~[nuxeo-elasticsearch-core-10.10-HF56.jar:?]
      	at org.nuxeo.elasticsearch.work.BaseIndexingWorker.work(BaseIndexingWorker.java:48) ~[nuxeo-elasticsearch-core-10.10-HF56.jar:?]
      	at org.nuxeo.ecm.core.work.AbstractWork.runWorkWithTransaction(AbstractWork.java:493) ~[nuxeo-core-event-10.10-HF44.jar:?]
      	at org.nuxeo.ecm.core.work.AbstractWork.run(AbstractWork.java:383) ~[nuxeo-core-event-10.10-HF44.jar:?]
      	at org.nuxeo.ecm.core.work.WorkHolder.run(WorkHolder.java:57) ~[nuxeo-core-event-10.10-HF44.jar:?]
      

      It may be interesting to analyse the root cause because State shouldn't hold Integer, numbers are Long.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: