The Sync Order service fails for a batch of messages

Technote (troubleshooting)


This document applies only to the following language version(s):

English

Problem(Abstract)

The Sync Order service fails for a batch of messages, where some of them fail and others completed successfully.

Symptom

The general error is "Failed to verify credentials for user: wcsauth." The user name and password in the Sync order message header exists for all the messages, however, some of the messages failed despite the credentials being provided.


Cause

From the log, there are two threads updating the UserDemo table for the same user at the same time, shown in the following snippet. Then, the next entry for both threads contain the same error:


[1/10/13 12:52:56:560 EST] 000004f8 WC_USER 3
com.ibm.commerce.member.dataobjects.UserDemographicsDO write
com.ibm.commerce.member.dataobjects.UserDemographicsDO for member ID: 200002308
[1/10/13 12:52:56:560 EST] 000004fc WC_USER 3
com.ibm.commerce.member.dataobjects.UserDemographicsDO write
com.ibm.commerce.member.dataobjects.UserDemographicsDO for member ID: 200002308


Resolving the problem

This serialization capability is configurable, and the default value is disabled. The capability can be enabled by adding the following setting in the <InstanceProperties> tag in the wc-server.xml instance configuration file:

<OptimisticLockingSelectForUpdate
com.ibm.commerce.user.beans.MemberLock.HitAndMiss="enabled" />

This serializes threads by member ID on their first use of the CachedUserAccessBean class in a transaction.

Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

WebSphere Commerce Enterprise

Software version:

7.0

Operating system(s):

AIX

Reference #:

1622958

Modified date:

2013-04-15

Translate my page

Machine Translation

Content navigation