on 12-23-2015 2:59 PM
Hi all,
I have this error since the upgrade of our server.
Run time SQL error -- *** ERROR *** Assertion failed: 106901
(16.0.0.2213)[SPW1ASA16]
Expression value unexpectedly NULL in write
SQLCODE=-300, Etat ODBC 3="HY000"
Ligne 6, colonne 1
UPDATE "ULIS"."U2WRK"
SET "ULIS"."U2WRK"."WRKVC1" = (
SELECT (IF LIST(SUBSTRING("CADNUM"."LIDVAC",4)) = '' THEN NULL ELSE LIST(SUBSTRING("CADNUM"."LIDVAC",4)) ENDIF FROM
"ULIS"."CADAFF" "CADAFF"
JOIN "ULIS"."CADEMP" "CADEMP"
ON "CADEMP"."LIDNAT" = 'CADEMP'
AND "CADEMP"."LIDEXN" = 'CA'
AND "CADEMP"."LIDNUM" = "CADAFF"."LIDEXT"
JOIN "ULIS"."CADNUM" "CADNUM"
ON "CADNUM"."LIDNAT" = 'CADNUM'
AND "CADNUM"."LIDEXN" = 'CA'
AND "CADNUM"."LIDNUM" = "CADEMP"."LIDEXT"
JOIN "ULIS"."U2LIF" "CANATU"
ON "CANATU"."LIDNAT" = 'CANATU'
AND "CANATU"."LIDEXN" = 'CA'
AND "CANATU"."LIDEXT" = "CADNUM"."LIDNUM"
AND today() BETWEEN "CANATU"."LIDDEB" AND "CANATU"."LIDFIN"
AND "CANATU"."LIDVAC" = 'T'
JOIN "ULIS"."U2LIF" "CAAETP"
ON "CAAETP"."LIDNAT" = 'CAAETP'
AND "CAAETP"."LIDEXN" = 'CA'
AND "CAAETP"."LIDEXT" = "CADAFF"."LIDNUM"
AND "CAAETP"."LIDVAN" > 0
AND today() BETWEEN "CAAETP"."LIDDEB" AND "CAAETP"."LIDFIN"
WHERE 1=1
AND "CADAFF"."LIDNAT" = 'CADAFF'
AND "CADAFF"."LIDEXN" = 'CA'
AND today() BETWEEN "CADAFF"."LIDDEB" AND "CADAFF"."LIDFIN"
AND "CADAFF"."PERMAT" = 1356
)
WHERE WRKKYC = '$WRK$151223010453475' AND WRKKYN = 1356
If I execute the select alone, it returns NULL. (it's normal behaviour)
I test also with SELECT nullif(LIST(SUBSTRING("CADNUM"."LIDVAC",4)), '')
If I execute this:
UPDATE "ULIS"."U2WRK"
SET "ULIS"."U2WRK"."WRKVC1" = NULL;
It works.
On the version 16.0.0.2076, this query works fine.
Do you have any idea ?
Laurent.
Hi Laurent,
This is most likely the new issue addressed by CR##793674 and fixed in build 2222.
KBA 2258841 - Assertion failure 106901 for subquery with LIST or COUNT
http://service.sap.com/sap/support/notes/2258841
Regards,
Tayeb.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Laurent,
You should validate a target database.
Validation utility (dbvalid)
http://dcx.sap.com/index.html#sa160/en/dbadmin/dbvalid.html
When you receive the same error(Assertion failed: 106901), it's necessary fort to rebuild the database.
BTW
Can you confirm the following SAP note?
2216888 - A subselect with LIST or COUNT and GROUP BY of only constants fail
This problem should be fixed with version 16.0.0.2174.
However, your version(16.0.0.2213) is fixed.
When this problem is not resolved even if you rebuild the database, I doubt new problem.
Thanks,
Atsushi
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Atsushi,
I have used dbvalid on the table U2WRK, on the index U2WRK_VC1 (which concern column WRKVC1) and after this, I have validated all the database, and the end message of the validation is no errors reported. But when I try my update, it fails again.
I unload-reload the table U2WRK, after this, it fails again also.
I drop the table U2WRK and re-create it, fail again.
Thanks for your quick answer,
Laurent
User | Count |
---|---|
93 | |
11 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.