Absent Member.
Absent Member.
543 views

JDBC driver merge event deleting values

Hi,

We have an Oracle JDBC driver which rightly or wrongly strips the association for each user object processed.
As a result every modify to an existing record processes as a merge event.

The issue is that the driver doesn't query the database for empty values, it just strips them on the publisher event. As one or more of these are mandatory the event fails with:

modifyEntry -609 ERR_MISSING_MANDATORY

Full modify & merge event is below:

https://pastebin.com/K9d5CTpB

Thanks in advance for any help

John
Labels (1)
Tags (2)
0 Likes
1 Reply
Knowledge Partner Knowledge Partner
Knowledge Partner

You're not asking about this, but clearly your source format is not what
is coming back, thus the error:


[08/30/18 16:03:38.685]:sits PT: Action:
do-set-local-variable("lvDelDateCtime",token-convert-time(dest-format="!CTIME",dest-tz="GMT",src-format="dd-MMM-yy",src-tz="GMT",token-local-variable("lvDelDatelcase"))).
[08/30/18 16:03:38.685]:sits PT:
arg-string(token-convert-time(dest-format="!CTIME",dest-tz="GMT",src-format="dd-MMM-yy",src-tz="GMT",token-local-variable("lvDelDatelcase")))
[08/30/18 16:03:38.685]:sits PT:
token-convert-time(dest-format="!CTIME",dest-tz="GMT",src-format="dd-MMM-yy",src-tz="GMT",token-local-variable("lvDelDatelcase"))
[08/30/18 16:03:38.685]:sits PT:
token-convert-time(dest-format="!CTIME",dest-tz="GMT",src-format="dd-MMM-yy",src-tz="GMT",token-local-variable("lvDelDatelcase"))
[08/30/18 16:03:38.685]:sits PT:
token-local-variable("lvDelDatelcase")
[08/30/18 16:03:38.685]:sits PT: Token Value: "4102358400".
[08/30/18 16:03:38.685]:sits PT: Arg Value: "4102358400".
[08/30/18 16:03:38.685]:sits PT:
DirXML Log Event -------------------
Driver: \VAULT_IV\resources\IDMDriverSet\QL SITS
Channel: Publisher
Object: PK_INSTITUTION_ID=01010101,table=IDM_VIEW
(\VAULT_IV\Vault\Users\Active\Students\01010101)
Status: Warning
Message: Code(-8033) Error in
vnd.nds.stream://VAULT_IV/resources/IDMDriverSet/QL+SITS/Publisher


Compare src-format="dd-MMM-yy" with 4102358400 which looks like
unixtime/CTIME.


Regarding your questions, I'll bet your merge authority is not set
correctly, but it would be nice to see the driver config startup in trace
to verify. Right now removing Surname (as your merge is doing) is going
to cause the -606 since Surname (sn via LDAP) is mandatory, so stop trying
to remove that.

It also seems odd that your final operation includes the attribute
directly from the database; perhaps you have not configured your Schema
Mapping Policy (SMP) to map eDirectory attributes and database, which
could have all kinds of negative impact on your system. If you want to
post your driver config export that may help.

--
Good luck.

If you find this post helpful and are logged into the web interface,
show your appreciation and click on the star below.

If you want to send me a private message, please let me know in the
forum as I do not use the web interface often.
0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.