Hi Alex,

The interceptor business comes from the GORDA API project. This should allow different replication algorithms to be plugged into Sequoia. In practice, there is nothing really available for that, so the interceptors are just dummy functions. I just checked the code for Sequoia 2.10.10 and it looks like the interceptor code does not handle cases where no interceptor can be initialized. Please file a new JIRA entry with the description of the problem, the code should be fixed to not crash ungracefully like you experienced.

Which version of Sequoia are you using?
Did you upgrade from a previous version?

Thanks for your feedback,
Emmanuel

I have a question about this error:

ERROR 2009-03-27 13:34:27,671 [RecoverThread for backend DBB] controller.recoverylog.RecoverThread.error - Recovery process failed to replay: request Autocommit StatementExecuteUpdateTask 281474976710657 (INSERT INTO tb_test (col_id, col_remark4, col_type) VALUES (?, ?, ?)/<!%S|003|!%><!%S|I am string|!%><!%I|100|!%>) (Backend VDB - BackendWorkerThread for backend 'configDBB57' with RAIDb level:1 failed (null))

After that I have added some log in the code, below is the error message after I added the log.

21:29:38,351 DEBUG group.bottom.GroupBottomSession Sending message (isSend=false) org.continuent.appia.protocols.group.suspect.al...@1013892

21:29:38,413 INFO loadbalancer.tasks.AbstractTask 111e.getMessage(): null

java.lang.NullPointerException

at org.continuent.sequoia.controller.interceptors.InterceptorManager.invokeBackendRequestInterceptors(InterceptorManager.java:148)

at org.continuent.sequoia.controller.interceptors.impl.InterceptorManagerAdapter.invokeBackendRequestInterceptors(InterceptorManagerAdapter.java:107)

at org.continuent.sequoia.controller.backend.DatabaseBackend.transformQuery(DatabaseBackend.java:2430)

at org.continuent.sequoia.controller.loadbalancer.AbstractLoadBalancer.executeStatementExecuteUpdateOnBackend(AbstractLoadBalancer.java:985)

at org.continuent.sequoia.controller.loadbalancer.tasks.StatementExecuteUpdateTask.executeInAutoCommit(StatementExecuteUpdateTask.java:224)

at org.continuent.sequoia.controller.loadbalancer.tasks.StatementExecuteUpdateTask.executeTask(StatementExecuteUpdateTask.java:116)

at org.continuent.sequoia.controller.loadbalancer.tasks.AbstractTask.execute(AbstractTask.java:143)

at org.continuent.sequoia.controller.loadbalancer.BackendWorkerThread.run(BackendWorkerThread.java:197)

Finally I found out the reason is “backendRequestInterceptors” is null.

“backendRequestInterceptors” is configured by controller_default.properties

My question is what is the meaning about “backend.interceptors” how to configure it.

I really appreciate for your help.

Thanks

Alex


--
Emmanuel Cecchet
FTO @ Frog Thinker Open Source Development & Consulting
--
Web: http://www.frogthinker.org
email: m...@frogthinker.org
Skype: emmanuel_cecchet

_______________________________________________
Sequoia mailing list
Sequoia@lists.forge.continuent.org
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to