Skip to main content
Question

FME Tool Workbench: SQLCreator does not update when records are inserted into Database

  • October 5, 2020
  • 9 replies
  • 37 views

I initialize my workflow with a SQLCreator that queries an Oracle Table, transforms the data and update the table back in Oracle.

 

When I insert a new record thru a sqlplus/Toad into the Oracle Table, after that I re-run the Workspace in FME Workbench, the records from the SQLCreator does not update, it keeps the same records as when I first ran it.

 

What am I doing wrong here? Any help is appreciated, I've been trying to run this for the last 2 days with no luck.

This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

9 replies

nielsgerrits
VIP
Forum|alt.badge.img+60
  • 2938 replies
  • October 5, 2020

Just to be sure. Is Feature Caching turned on?

You can check this under Run, Enable Feature Caching.


david_r
Celebrity
  • 8392 replies
  • October 5, 2020

I agree with @nielsgerrits​ that Feature Caching would be potential culprit no. 1.

If that still doesn't make a difference, verify that the table insert has been properly commited (i.e. no open transaction) before restarting the workspace.


  • Author
  • 2 replies
  • October 5, 2020

Yes, Feature Caching is turned on.

Then I turned it off, re-run.

Turned it on again, and re-run.

And still no refresh.

I checked the Oracle DB with sqlplus, and did a SELECT COUNT(*) FROM Table1

And the record is counted.

 


david_r
Celebrity
  • 8392 replies
  • October 5, 2020

Yes, Feature Caching is turned on.

Then I turned it off, re-run.

Turned it on again, and re-run.

And still no refresh.

I checked the Oracle DB with sqlplus, and did a SELECT COUNT(*) FROM Table1

And the record is counted.

 

I suggest that you leave feature caching OFF entirely as long as you debug this issue.

Next step would be to check that the newly inserted record is visible in both TOAD and SQLPlus, simultaneously.


ebygomm
Influencer
Forum|alt.badge.img+44
  • Influencer
  • 3427 replies
  • October 5, 2020

Yes, Feature Caching is turned on.

Then I turned it off, re-run.

Turned it on again, and re-run.

And still no refresh.

I checked the Oracle DB with sqlplus, and did a SELECT COUNT(*) FROM Table1

And the record is counted.

 

Select count(*) will still count uncommited rows, but FME won't see them until they are committed


  • Author
  • 2 replies
  • October 5, 2020

@nielsgerrits @david_r​ , thx for the help!

I checked the commit to the database as David suggested, the record was not committed, so the new record was not showing on the FME Tool when refreshed... duh ;)

 

Thank you, Markus.


david_r
Celebrity
  • 8392 replies
  • October 5, 2020

@nielsgerrits @david_r​ , thx for the help!

I checked the commit to the database as David suggested, the record was not committed, so the new record was not showing on the FME Tool when refreshed... duh ;)

 

Thank you, Markus.

Great that you found the issue and thanks for sharing the solution!


david_r
Celebrity
  • 8392 replies
  • October 5, 2020

Select count(*) will still count uncommited rows, but FME won't see them until they are committed

I'm assuming this is only the case if you're doing the select count(*) from the same session as the insert, right? I would assume that doing select count(*) from a different session would not include uncommitted rows.


ebygomm
Influencer
Forum|alt.badge.img+44
  • Influencer
  • 3427 replies
  • October 5, 2020

Select count(*) will still count uncommited rows, but FME won't see them until they are committed

Yes, if from the same session.