Difference between ONCONFIG parameters DYNAMIC_LOGS and AUTO_LLOG
Posted in 2023
Jacob Salomon asked how DYNAMIC_LOGS and AUTO_LLOG differ in 14.10. Art Kagel said they do not interact: DYNAMIC_LOGS adds logs in the root dbspace, AUTO_LLOG uses the named dbspace, and its third field caps total log size. Andreas Legner said AUTO_LLOG aids performance, DYNAMIC_LOGS only long-transaction rollbacks. Resolved.
Auto-generated by Claude from the posts below — may be imperfect; read the full thread.
Topics: Performance & Tuning, Storage & Space Management, Server Administration, Logging & Checkpoints
Hi Family. Use it or lose it! It's been a while since I configured an ONCONFIG file and there seem to be some new items in 14.10. But I would tackle them one by one as it comes back to me. So for starters: The default value for DYNAMIC_LOGS is 2 so that "The server adds a new logical log when necessary." I had this in release 12 as well, if I recall correctly. But a comment also describes parameter: #AUTO_LLOG - Add logical logs automatically to improve performance This does not have a setting in the ONCONFIG. So I have some questions: 1. For DYNAMIC_LOGS, when creating a new log, where does it create them? I would guess in the ROOTDBS, although I have every intention of moving all logs out of root and into llogdbs and plogdbs (yet to be created). With this in mind I would set DYNAMIC_LOGS to 1 (inform DBA) so that I control where new logs are created. 2. While AUTO_LLOG is not set in onconfig.std, I would set it to: AUTO_LLOG 1,llogdbs,15000 3. Now that I've suggested these settings, am I contradicting myself by setting both as described? Lucky to have grabbed some 14.10 manuals in PDF; the online doc is a gluteal pain to search. Thanks much for advice. I'm taking this slow, since this laptop needs to be booted to Windows most of the time. ------------------------------ Jacob Salomon --- Nobody goes there anymore, it's too crowded. --Attr: Yogi Berra ------------------------------
Jacob: The third field of the AUTO_LLOG parameter is not the max size of a single log but rather the maximum total size of all logical logs. It is a stopper to prevent the AUTO_LLOG from just going nuts and adding new logs forever, so the 15000 value is likely way too low. AUTO_LLOG and DYNAMIC_LOGS do not interact at all. DYNAMIC_LOGS always allocates new logs in the root dbspace. AUTO_LLOG uses the specified dbspace if there is room and uses chunk extension or the Storage pool if the specified dbspace fills up. Art ------------------------------ Art S. Kagel, President and Principal Consultant ASK Database Management Corp. www.askdbmgt.com ------------------------------
Thanks, Art. Fortunately I still have that manual open in Acrobat and now it makes more sense. Going back to change that now! +----------------------------------------------------------------------+ | The first lesson of economics is scarcity: there is never enough of | | anything to fully satisfy all those who want it. The first lesson of | | politics is to disregard the first lesson of economics. | +--------------- Thomas Sowell (Is Reality Optional?::Student Loans) --+
AUTO_LLOG would expand you log space if your load is so high, in relation to existing log space, that you're seeing more and maybe even blocking checkpoints. -> aim: performance, esp. in a auto-administered embedded environment DYNAMIC_LOGS is meant for long transaction rollbacks only, to (try and) make sure the rollback will fit into your logs. -> aim: avoid system down (not block) from too big transaction rollback ------------------------------ Andreas Legner ------------------------------
Thanks Andreas. That's a vital difference between the two parameters. My solution to prevent a logs-full during a long transaction rollback was always to set LTXHWM=40 and LTXEHWM=45. I think that was mathematically provable to prevent filling logs but I lack [the late] Brad Nohejl's skill in proving these things. (Anyone remember Brad?) ------------------------------ Jacob Salomon --- Nobody goes there anymore, it's too crowded. --Attr: Yogi Berra ------------------------------