Error in recordtype sync

I found an error in recordtype sync in tomcat log, but what is this error indicating? I'm not sure this is related to my recordtype sync error, in recordtype it only said 'Unable to sync due to a system failure'

2024-11-28 03:00:07,537 [RecordSyncScheduler_Worker-1] ERROR com.appiancorp.record.data.recordloaders.ads.RecordTypeAdsLoadService - Error creating join index for relationship with uuid:
com.appian.data.client.AdsUserInputException: APNX-3-1000-06D: Invalid parameter specified to the createJoinIndex function. Attrs must reference valid attributes. Invalid attr ref(s): [e88c8e26-426e-400f-b196-58dad303f85c::318d243c-ab51-430b-8048-872019cb75f9]
at jdk.internal.reflect.GeneratedConstructorAccessor521.newInstance(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
at com.appian.data.client.AdsExceptionBuilder.build(AdsExceptionBuilder.java:133)
at com.appian.data.client.DataClientImpl.buildWriteError(DataClientImpl.java:1150)
at com.appian.data.client.DataClientImpl.writeWithRetry(DataClientImpl.java:561)
at com.appian.data.client.DataClientImpl.write00(DataClientImpl.java:508)
at com.appian.data.client.DataClientImpl.lambda$write0$6(DataClientImpl.java:489)
at com.appian.data.client.DataClientImpl.runWithAdditionalGroupsIfNeeded(DataClientImpl.java:276)
at com.appian.data.client.DataClientImpl.write0(DataClientImpl.java:488)
at com.appian.data.client.DataClientImpl.write(DataClientImpl.java:468)
at com.appiancorp.record.service.quartz.AdsJoinIndicesHelper.writeJoinIndex(AdsJoinIndicesHelper.java:221)
at com.appiancorp.record.data.recordloaders.ads.RecordTypeAdsLoadService.createIndexForRelationship(RecordTypeAdsLoadService.java:142)
at com.appiancorp.record.data.recordloaders.ads.RecordTypeAdsLoadService.createIndexForRelationship(RecordTypeAdsLoadService.java:127)
at com.appiancorp.record.data.recordloaders.ads.RecordTypeAdsLoadService.lambda$createRelationshipJoinIndices$1(RecordTypeAdsLoadService.java:120)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
at com.appiancorp.record.data.recordloaders.ads.RecordTypeAdsLoadService.createRelationshipJoinIndices(RecordTypeAdsLoadService.java:120)
at com.appiancorp.record.service.BulkLoadServiceImpl.loadAllRecordRowsWithErrorHandling(BulkLoadServiceImpl.java:337)
at com.appiancorp.record.service.BulkLoadServiceImpl.lambda$loadAllRecordRowsInner$0(BulkLoadServiceImpl.java:173)
at com.appiancorp.record.metrics.RecordReplicaLoadMetricsLoggerImpl.timeSyncAndLogMetrics(RecordReplicaLoadMetricsLoggerImpl.java:243)
at com.appiancorp.record.service.BulkLoadServiceImpl.lambda$loadAllRecordRowsInner$1(BulkLoadServiceImpl.java:168)
at com.appiancorp.record.service.RecordDataSyncRetryUtilityImpl.syncRecordData(RecordDataSyncRetryUtilityImpl.java:43)
at jdk.internal.reflect.GeneratedMethodAccessor3068.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:234)
at jdk.proxy4/jdk.proxy4.$Proxy639.syncRecordData(Unknown Source)
at com.appiancorp.record.service.BulkLoadServiceImpl.lambda$loadAllRecordRowsInner$2(BulkLoadServiceImpl.java:167)
at com.appiancorp.security.auth.SpringSecurityContextHelper.runAsAdmin(SpringSecurityContextHelper.java:201)
at com.appiancorp.security.auth.SpringSecurityContextImpl.runAsAdmin(SpringSecurityContextImpl.java:26)
at com.appiancorp.record.service.BulkLoadServiceImpl.loadAllRecordRowsInner(BulkLoadServiceImpl.java:149)
at com.appiancorp.record.service.BulkLoadServiceImpl.loadAllRecordRows(BulkLoadServiceImpl.java:141)
at jdk.internal.reflect.GeneratedMethodAccessor3065.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:241)
at jdk.proxy4/jdk.proxy4.$Proxy131.loadAllRecordRows(Unknown Source)
at com.appiancorp.record.service.quartz.ReplicaLoadJob.execute(ReplicaLoadJob.java:100)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)

  Discussion posts and replies are publicly visible

  • 0
    Certified Lead Developer

    It looks like the error you're seeing in the Tomcat log is related to an issue with creating a join index for a relationship in Appian.

    The specific error is:
    com.appian.data.client.AdsUserInputException: APNX-3-1000-06D: Invalid parameter specified to the createJoinIndex function. Attrs must reference valid attributes. Invalid attr ref(s): [e88c8e26-426e-400f-b196-58dad303f85c::318d243c-ab51-430b-8048-872019cb75f9]

    This means that when Appian is trying to create an index for the relationship, it's running into a problem because the attribute references (the UUIDs in the error) are invalid or not set up properly.

    As for the "Unable to sync due to a system failure" message in your record type sync error, it might be related to this issue. If the system can’t create the join index or resolve the relationship correctly, the sync process will fail.

    Possible solutions can be:

    • Check your attribute references
    • Review your record type setup
    • Rebuild the join index

      It seems like resolving the join index issue could also fix the sync failure. Hopefully, this helps!