[
https://issues.jboss.org/browse/TEIID-5799?page=com.atlassian.jira.plugin...
]
Christoph John commented on TEIID-5799:
---------------------------------------
Hello Steven,
I did assamble a compose file for you with teiid and a mysql database holding test data,
to show the issue. I also added 3 curl scripts with POST requests which show the bugs in
the three relevant code paths in the "CREATE TRIGGER ON Diary INSTEAD OF INSERT
AS" code.
By building the compose file, I observed a quite weird behaviour. Therefore I am currently
assuming, that the observed bug might be runtime related.
My full installation at home includes a keycloak server for oauth and permission handling
in addition to what I packaged into the compose file. For my home install, the provided
scripts 1 and 2 are working fine. Hence, I do not have issues with the first 2 code paths
of the INSERT trigger.
The only difference in the vdb, compared to the one provided in this example is, that here
user odata has simply all permissions. Hence, the vdb is identical except for the grants
part of the vdb.
What I do not understand is, that scripts 1 and 2 in this provided example are not
working. Here I also get
"TEIID16016 Insert into Diary success, but failed to retrieve auto generated keys
from source, thus failed to show result entity; Supply the key values."
I furthermore observed, that in my full installation, if I copy the IF part of the code
into ELSE IF (new.fkDatabaseKey = 3), (which should be working code if the correct
product ID is provided to the insert (attention foreign key constraints)) than I also
observe the mentioned error.
To some up, due to these facts I assume something runtime related to be wrong here. You
find the compose file alongside with a detail howto README at:
https://c.gmx.net/@328076122686231878/d2XSupdWRYmtR_WOFjhHQQ
GENERATED_KEY cannot resolve primary key, if created via insert
trigger on view
-------------------------------------------------------------------------------
Key: TEIID-5799
URL:
https://issues.jboss.org/browse/TEIID-5799
Project: Teiid
Issue Type: Bug
Affects Versions: 13.0
Reporter: Christoph John
Assignee: Steven Hawkins
Priority: Blocker
Attachments: svc-vdb-example.ddl
Hello Steven,
I just ran into the next issue with the generated key functionality. Attached you find an
example. The relevant section is given in
CREATE TRIGGER ON Diary INSTEAD OF INSERT AS
with the block following:
ELSE IF (new.fkDatabaseKey = 3)
In the insert trigger I am trying to duplicate a record from table
"UserDefinedProducts" and reference it in the row to be created from the
trigger.
I again the the error message:
POST on 'Diary' failed; will be repeated automatically - Error: TEIID16016 Insert
into Diary success, but failed to retrieve auto generated keys from source, thus failed to
show result entity; Supply the key values.
I am using the most recent sources checked out about an hour ago.
Do you see a bug in my code, or is it again an issue I have hit? Thanks for your help!
Let me know if I shall assemble a docker-compose file for you to debug the issue.
Update: As I seem to be not able to delete attachments here. One further note. My example
hat a permission error in one line where I have red from the wrong table. It should
instead be:
SELECT * INTO #tmpItem FROM UserDefinedProductsOfAllUsers WHERE fkProduct = new.fkProduct
LIMIT 1;
However, the previously described error stays the same.
Best regards,
Christoph
--
This message was sent by Atlassian Jira
(v7.12.1#712002)