Async business function error

digitalfallout

Active Member
Anybody getting this error, attached is a screen shot, we are on E810 8.94G1, we are troubleshooting this issue and any help is highly appreciated. Thanks
 

Attachments

  • 101743-Async.doc
    461 KB · Views: 219
Can you attach JAS logs for more details to track exact problem.

Following can be a cause of problem:
1. Web Services are noit running properly. Bounce the Services once.
2. Is object is generated for 'J' environment.
3. Check OCM for 'DEFAULT' buisness Function .
 
Actually the current JAS logs are not giving any specific information, I am planning to increase the level of logging, will send the jas logs then, hopefully by tomorrow, on the app server side we get the primary key violation error, but we checked the database and this key violation is caused due to this error I guess. Also I am planning to rebuild the object from a lower environment along with all the apps and the business function. About recycling web service, we get this error all the time and that too with different business functions, hence was concerned a bit. Thanks for the tips eSky, will try out those too.
 
Attached are the JAS logs for referfence
 

Attachments

  • 101782-jas_logs.txt
    252 KB · Views: 283
specific part of the log which we get constantly, anybody knows what this error means

2006-01-11 05:07:52.467 [ Worker Thread - AsynchBSFNThread group4 Assigned To com.jdedwards.runtime.virtual.OWVirtual@3b9788e3] RUNTIME : AsyncBSFN thread had an exception caused by Commit statement
java.lang.NullPointerException
at com.jdedwards.jas.UserSession.getResourceBundle(Unknown Source)(Inlined Compiled Code)
at com.jdedwards.jas.ServletProxy.callServerComponent(Unknown Source)(Compiled Code)
at com.jdedwards.jas.ServletProxy.ServletProxy(Unknown Source)(Inlined Compiled Code)
at com.jdedwards.jas.ServletProxy.dispatch(Unknown Source)(Compiled Code)
at com.jdedwards.jas.net.NetManager.callJAS(Unknown Source)(Compiled Code)
at com.jdedwards.jas.net.NetManager.callJAS(Unknown Source)
at com.jdedwards.jas.net.NetManager.invokeTransaction(Unknown Source)
at com.jdedwards.jas.transaction.Transaction.issueRequest(Unknown Source)
at com.jdedwards.jas.transaction.Transaction.end(Unknown Source)
at com.jdedwards.runtime.base.CommitStatement.executeAsync(Unknown Source)
at com.jdedwards.runtime.virtual.OWVirtual.runAsynchBSFN(Unknown Source)
at com.jdedwards.runtime.virtual.OWVirtual$AsynchBSFNWorker.run(Unknown Source)
at com.jdedwards.base.util.ThreadPool$WorkerThread.run(Unknown Source)
 
Madmax,
For bsfn errors, take a look at your logs on teh enterprise server(since that is where they are running). Using SAW, you should be able to see which call object kernal the user is using and then you can find that log on the enterprise server to see what is causing the error.

The JAS log will just tell you that there was an error, but with the web, you need to look at the JDE logs on the entrprise server to "Really" see what the error is.

Can you do this same function on a fat client logged into the JPD810?
 
Don't look in the JAS logs, look in the corresponding Call Object kernel log, which runs the BSFN. You most likely have a zombie CO that corresponds to the event and you can find out what is happening (can't insert, duplicate record in database or whatever...)
 
i do checked the app logs and the only errors I get in the app logs are the primery key violation errors here is an example

3080/2992 Wed Jan 11 10:55:10.109 Jdbodbc.c7353
ODB0000164 - STMT:00 [23000][2627] [Microsoft][ODBC SQL Server Driver][SQL Server]Violation of PRIMARY KEY constraint 'F42420_PK'. Cannot insert duplicate key in object 'F42420'.

3080/2992 Wed Jan 11 10:55:10.109 Jdbodbc.c7353
ODB0000164 - STMT:01 [01000][3621] [Microsoft][ODBC SQL Server Driver][SQL Server]The statement has been terminated.

3080/2992 Wed Jan 11 10:55:10.109 Jdb_drvm.c971
JDB9900401 - Failed to execute db request

3080/2992 Wed Jan 11 10:55:10.109 Jdb_exet.c5454
JDB3400009 - Failed to perform Insert for F42420

3080/2992 Wed Jan 11 10:55:10.109 Jdb_exet.c6732
JDB9901232 - Canceling transaction because: TC052 InsertTable: Insert failed

3080/2992 Wed Jan 11 10:55:10.375 Jdb_exet.c6343
JDB9900849 - Failed to commit user

3080/2992 Wed Jan 11 10:55:10.375 Jdeknobj.c653
KNT0000191 - CommitUser failed, userh=01A76570, client=10.2.0.103, pid=2954, mId=188073

but i am quite sure this error is caused due to the exception thrown by the bsfn. there is also a possibility of bad data, but i am not able to replicate the issue in any other lower environments.

thanks
 
In the application - check to see if there is an insert without a preceding fetch and i/o check.

Fetch.file (on the unique keys that will be inserted.
If Record Found
UPDATE.FILE
Else
INSERT.FILE
EndIf

Seems almost like an insert is being attempted, blind (without checking if a valid record already exists).

(db)
 
that was one of the errors i always get in the app logs, i have different tables that give me this error and intresting part is these are all standard applications not custom, so i feel is it really a key violation or the failing business function does that
 
It is a clearly key violation, at least from the CO kernel's standpoint. If you have failed inserts in other places, then all thes CO kernels also fail. If you don't see it immediately, you are writing corrupt data...
It could be the data itself, the PO on the application but it could be something wrong with the database driver, indexes... If you turn debug you can see what the fetch and insert statements are and check against the database?
This application happens to process the BSFN asynchrnonously and you only get a message after a period of time. Other failures to insert into DB should produce visible errors immediately.
 
Look into the call object kernel log as what others have suggested to find out where the exact probelm could be.

From the error it could be some function execution getting out of sequence.
 
Back
Top