|
An SQL access plan is a part of a program object with embedded SQL. SQL optimizer may change access plan, thus changing program object. There are several reasons why optimizer will update access plan - e.g. job CCSID change. You may run in debug mode - then you will see messages in a joblog, explaining why access plan was updated. I think, you can suppress this update by revoking *CHANGE authority from user. But then optimizer will be trying to rebuild access plan for every statement, which will be performance hit. Alexei Pytel speaking only for myself rob@dekko.com Sent by: To: rpg400-l@midrange.com rpg400-l-admin@mi cc: drange.com Subject: Turnover question 03/28/2002 03:29 PM Please respond to rpg400-l This is a multipart message in MIME format. -- [ Picked text/plain from multipart/alternative ] We have a SQLRPGLE program generated with Turnover. We keep getting the message that the program was changed outside of turnover. We do a DSPOBJD and the only thing we see different is the last used and the change date. Scenario: Two 5250 sessions. Session 1 generates program. Session 2 does dspobjd and notes change time. Session 1 starts program. Session 2 does dspobjd and notices that last used is different but change time is same Session 1 moves from first screen to second screen. Session 2 does dspobjd and notices that last used and change time have not changed since last checking. Session 1 moves from second screen to third screen. Session 2 does dspobjd and notices that last used has not changed since last checking, but changed has. We've not exited the program at any time between the many dspobjd's. Regen the program using Turnover and get message that program has been changed outside of Turnover. Scenario two: Gen the program using Turnover Gen it again but this time no message that the program has been changed outside of Turnover. Future runs of the program do not change the changed time. Just the first run. What the heck is going on here? Does it optimize an SQL statement and store that into the compiled object? All three screens have SQL in them. My biggest concern is that developers will become numb to the warning that the object has been changed outside of Turnover. Rob Berendt -- "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." Benjamin Franklin _______________________________________________ This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list To post a message email: RPG400-L@midrange.com To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l or email: RPG400-L-request@midrange.com Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.