|
IDS Forum
Re: oninit: Not enough room in ROOT DBspace.
Posted By: mrh@panix.com Date: Tuesday, 18 January 2005, at 11:12 a.m.
In Response To: Re: oninit: Not enough room in ROOT DBspace. (Martin Fuerderer )
I believe Anna said that the documentation says that you cannot adjust "LOGFILES" without a re-init.... which is also incorrect, but very different than just adding more logical logs.
Anna, the LOGFILES parameter can be adjusted without a re-init. It only needs an engine bounce to take effect. Same goes for the LOGSIZE parameter. However only new logs will be created with the new size... exisiting logs will not be adjusted.
If you wish to add new logs of a *different* size than LOGSIZE, you must use "onparams".
If you wish to change your existing logs to a new size, you can add new logs of the new size, bounce the engine (making the new logs available for use), "onmode -l" until one of the new logs is selected, "onmode -f" to force a checkpoint and move the current log to the one selected, and the "onparams" to drop the old logs.
(Caveat: This was the process under IDS 7*. It may have been streamlined under IDS 9*)
That said, and with Martin's notes below, a general practice is to set a low value for PHYSFILE and LOGSIZE, LOGFILES = 3, and a small ROOTSIZE (also, obviously, a small disk slice for RootDB... saving you a ton of space!). After the initialization (oninit -iv), you add your LOG and PHYS spaces, adjust the LOG and PHYS values, and you are on your way.
Remember: Bounce the engine = "onmode -ky" and "oninit". Reinitialize and wipe out everyting = "oninit -iv".
Hope this helps!
Michael Hoffman
> > Hi Anna, > > phew! Quite a couple of things going wrong here ... > > I'll try to clear up: > > - logical log files can be added while the server is running. > There's no need to even bring down the server, much less > to re-initialize it !! > Which documentation have you read that states such things ? > Sounds like something needs dire correction/clarification in the > documents ... > > - you use the onparams utility to add a logical log file, like > "onparams -a [ -d <dbspace> ] [ -s <size in kB> ]" > > - by reinitializing the server with "oninit -i[v]" you've lost all data > that was stored in the instance before. I hope you either have > a backup or you don't need whatever was in there ... > > The extra prompting about "... databases will NOT be accessible ..." > should have alerted you to the fact, that this can't be the only > and correct way to add logical logs. > > Anyway, as it has happened already, there's not much to do > now other than restoring a backup or "continuing from scratch". > As I don't know which option you'll have to choose, I'll just try > to explain further what has happened and why. > > - By reinitializing you have brought up the server in its very initial > state, where it doesn't know about any dbspaces except the > root dbspace, because that is defined in the onconfig. > So everything that the server needs must be created in this > root dbspace ("rootdbs" in your case) during the initialization. > Among other things these are the logical log files and the > physical log file. > > - As I can see from your onconfig you had the > physical log file in a different dbspace ("physdbs") before > you started with your re-configuration/reinitialization. > While this is still defined that way in the onconfig, it can't > work, because after reinitialization there is no longer a > dbspaces called "physdbs". (Actually it probably still exists, > but the server doesn't know about it anymore.) > > - Therefore the server has to create a physical log, but only > the "rootdbs" exists (is known to the server), so it will create > it there. (There might be a message to that effect in the > message log file "online.log".) > > - With that, you have to add up your configured PHYSFILE > and logical log file space (LOGFILES * LOGSIZE). With > your numbers that makes 8000000 + (50 * 4096) = 8204800 > which is more than 8000000 that you specified as ROOTSIZE. > > - And this is just these two types of log files needing space > in the root dbspace. There's other stuff too, so you get the > message about 8205838 kB required ... > > - While I'm at it, in case you're rebuilding the system from > scratch now, you'll eventually want to move the physical log > file from its initial location in the root dbspace to a different > dbspace (like "physdbs"). You do that with the same > onparams utility, with different options. As well as with logical > logs there's no need to reinitialize the server !! > > Hmm. If all this sounds too complicated and confusing, I > suggest you get some professional help (Tech Support or > probably even better some on-site consulting of a trusted > source) right away before doing further experiments. In such > a situation it is rather difficult to correctly restore the old > system via e-mail guidance/help alone ... > > Regards, > Martin > -- > Martin Fuerderer > IBM Informix Development Munich, Germany > Data Management Solutions > > forum.subscriber@iiug.org wrote on 17.01.2005 21:04:06: > > > I have [or, more appropriately, had] a version of IDS 9.4 UC2 running > under > > Solaris 9 on a Sun 280 server. Before bringing the system up in > production, > > I wanted to allow more logical logs (the system was initialized with > 11). > > The documentation said > > the only way to increase LOGFILES required a reinitialization. After > tuning > > the onconfig the way I wanted it, repeatedly bringing the server up and > down, > > and performing a level 0 archive, I did it. Unfortunately, it looks like > I > > have awakened a server > > with an insatiable appetite for disk space. > > > > Can anyone tell me what settings are causing the problem? > > > > In this posting I am including: > > - output from the oninit -iv command > > - a diff of the working and nonworking onconfig files > > - the complete nonworking onconfig file > > > > Appreciate the assistance! > > Anna > > > > > > This is what happens when I try to initialize the instance... > > [note - I have repeatedly increased the size of rootdbs and > > physdbs as the message suggests, to a ridiculously large file > > size, but it always hangs in the same place.] > > ################################################# > > bash-2.05$ oninit -iv > > > > This action will initialize IBM Informix Dynamic Server; > > any existing IBM Informix Dynamic Server databases will NOT be > accessible - > > Do you wish to continue (y/n)? y > > Checking group membership to determine server run modesucceeded > > Reading configuration file > '/usr/informix/etc/onconfig.US280R'...succeeded > > Creating /INFORMIXTMP/.infxdirs ... succeeded > > Creating infos file "/usr/informix/etc/.infos.US280R_on" ... > "/usr/informix/etc/.conf.US280R_on" ... succeeded > > Writing to infos file ... succeeded > > Checking config parameters...succeeded > > Allocating and attaching to shared memory...succeeded > > Creating resident pool 6100 kbytes...succeeded > > Creating buffer pool 60002 kbytes...succeeded > > Initializing rhead structure...succeeded > > Initializing ASF ...succeeded > > Initializing Dictionary Cache and SPL Routine Cache...succeeded > > Bringing up ADM VP...succeeded > > Creating VP classes...succeeded > > Onlining 0 additional cpu vps...succeeded > > Onlining 2 IO vps...succeeded > > Initialization of Encryption...succeeded > > Forking main_loop thread...succeeded > > Initializing DR structures...succeeded > > Forking 1 'ipcstr' listener threads...succeeded > > Forking 1 'tlitcp' listener threads...succeeded > > Starting tracing...succeeded > > Initializing 16 flushers...succeeded > > oninit: Not enough room in ROOT DBspace. > > Requested 8205838K, ONCONFIG value 'ROOTSIZE' 8000000K. > > FAILED > > bash-2.05$ > > ############################################################ > > > > > > Comparing the working and nonworking onconfig files..... > > bash-2.05$ diff ~anna/onconfig.US280R ~anna/onconfig.US280R.toobigroot > > 14c14,15 > > < ROOTSIZE 30000 # Size of root dbspace (Kbytes) > > --- > > > #ROOTSIZE 30000 # Size of root dbspace (Kbytes) > > > ROOTSIZE 8000000 # Size of root dbspace (Kbytes) > > 26,27c27,28 > > < #PHYSFILE 2000 # Physical log file size (Kbytes) > > < PHYSFILE 524288 # Physical log file size (Kbytes) > > --- > > > #PHYSFILE 524288 # Physical log file size (Kbytes) > > > PHYSFILE 8000000 # Physical log file size (Kbytes) > > 32,33c33,35 > > < LOGFILES 11 # Number of logical log files > > < LOGSIZE 10484 # Logical log size (Kbytes) > > --- > > > LOGFILES 50 # Number of logical log files > > > #LOGSIZE 10484 # Logical log size (Kbytes) > > > LOGSIZE 4096 # Logical log size (Kbytes) > > 88c90 > > < SHMVIRTSIZE 8000 # initial virtual shared memory > segment size > > --- > > > SHMVIRTSIZE 8192 # initial virtual shared memory > segment size > > 279c281,282 > > < ROOTPATH /usr/informix//US280R/server/online_root > > --- > > > #ROOTPATH /usr/informix/US280R/server/online_root > > > ROOTPATH /usr/informix/server/rootdbs/online_root > > bash-2.05$ > > > > ################################################################# > > > > > > bash-2.05$ cat onconfig.US280R > > > #************************************************************************** > > # > > # INFORMIX SOFTWARE, INC. > > # > > # Title: onconfig.std > > # Description: Informix Dynamic Server Configuration Parameters > > # > > > #************************************************************************** > > > > # Root Dbspace Configuration > > > > ROOTNAME rootdbs # Root dbspace name > > ROOTOFFSET 0 # Offset of root dbspace into device > (Kbytes) > > #ROOTSIZE 30000 # Size of root dbspace (Kbytes) > > ROOTSIZE 8000000 # Size of root dbspace (Kbytes) > > > > # Disk Mirroring Configuration Parameters > > > > MIRROR 0 # Mirroring flag (Yes = 1, No = 0) > > MIRRORPATH # Path for device containing mirrored > root > > MIRROROFFSET 0 # Offset into mirrored device (Kbytes) > > > > # Physical Log Configuration > > > > PHYSDBS physdbs # Location (dbspace) of physical log > > #PHYSDBS rootdbs # Location (dbspace) of physical log > > #PHYSFILE 524288 # Physical log file size (Kbytes) > > PHYSFILE 8000000 # Physical log file size (Kbytes) > > > > # Logical Log Configuration > > > > #LOGFILES 11 # Number of logical log files > > LOGFILES 50 # Number of logical log files > > #LOGSIZE 10484 # Logical log size (Kbytes) > > LOGSIZE 4096 # Logical log size (Kbytes) > > > > # Diagnostics > > > > CONSOLE /dev/console # System console message path > > > > # To automatically backup logical logs, edit alarmprogram.sh and set > > # BACKUPLOGS=Y > > ALARMPROGRAM /usr/informix/etc/alarmprogram.sh # Alarm program path > > TBLSPACE_STATS 1 # Maintain tblspace statistics > > > > # System Archive Tape Device > > > > TAPEBLK 1024 # Tape block size (Kbytes) > > TAPESIZE 12288000 # Maximum amount of data to put on tape > (Kbytes) > > > > # Log Archive Tape Device > > > > LTAPEBLK 32 # Log tape block size (Kbytes) > > LTAPESIZE 10240 # Max amount of data to put on log tape > (Kbytes) > > > > # Optical > > > > STAGEBLOB # Informix Dynamic Server staging area > > > > # System Configuration > > DBSERVERNAME US280R_on > > SERVERNUM 0 > > DBSERVERALIASES US280R_onnet # List of alternate dbservernames > > #NETTYPE tlitcp,1,50,NET # Configure poll thread(s) for nettype > > NETTYPE ontlitcp,1,50,NET # Configure poll thread(s) for nettype > > #NETTYPE ipcshm,1,50,CPU # Configure poll thread(s) for nettype > > NETTYPE onipcstr,1,50,CPU # Configure poll thread(s) for nettype > > > > > > DEADLOCK_TIMEOUT 60 # Max time to wait of lock in > distributed env. > > RESIDENT 0 # Forced residency flag (Yes = 1, No = > 0) > > > > MULTIPROCESSOR 0 # 0 for single-processor, 1 for > multi-processor > > NUMCPUVPS 1 # Number of user (cpu) vps > > SINGLE_CPU_VP 0 # If non-zero, limit number of cpu vps > to one > > > > NOAGE 0 # Process aging > > AFF_SPROC 0 # Affinity start processor > > AFF_NPROCS 0 # Affinity number of processors > > > > # Shared Memory Parameters > > > > LOCKS 20000 # Maximum number of locks > > BUFFERS 30000 # Maximum number of shared buffers > > NUMAIOVPS # Number of IO vps > > PHYSBUFF 32 # Physical log buffer size (Kbytes) > > LOGBUFF 32 # Logical log buffer size (Kbytes) > > CLEANERS 16 # Number of buffer cleaner processes > > SHMBASE 0xa000000 # Shared memory base address > > SHMVIRTSIZE 8192 # initial virtual shared memory segment > size > > SHMADD 8192 # Size of new shared memory segments > (Kbytes) > > SHMTOTAL 0 # Total shared memory (Kbytes). > 0=>unlimited > > CKPTINTVL 600 # Check point interval (in sec) > > LRUS 31 # Number of LRU queues > > LRU_MAX_DIRTY 60.000000 # LRU percent dirty begin cleaning limit > > LRU_MIN_DIRTY 50.000000 # LRU percent dirty end cleaning limit > > TXTIMEOUT 0x12c # Transaction timeout (in sec) > > STACKSIZE 32 # Stack size (Kbytes) > > > > # Dynamic Logging > > # DYNAMIC_LOGS: > > # 2 : server automatically add a new logical log when necessary. (ON) > > # 1 : notify DBA to add new logical logs when necessary. (ON) > > # 0 : cannot add logical log on the fly. (OFF) > > # > > # When dynamic logging is on, we can have higher values for > LTXHWM/LTXEHWM, > > # because the server can add new logical logs during long transaction > rollback. > > # However, to limit the number of new logical logs being added, > LTXHWM/LTXEHWM > > # can be set to smaller values. > > # > > # If dynamic logging is off, LTXHWM/LTXEHWM need to be set to smaller > values > > # to avoid long transaction rollback hanging the server due to lack of > logical > > # log space, i.e. 50/60 or lower. > > > > DYNAMIC_LOGS 2 > > LTXHWM 70 > > LTXEHWM 80 > > > > # System Page Size > > # BUFFSIZE - OnLine no longer supports this configuration parameter. > > # To determine the page size used by OnLine on your platform > > # see the last line of output from the command, 'onstat -b'. > > > > > > # Recovery Variables > > # OFF_RECVRY_THREADS: > > # Number of parallel worker threads during fast recovery or an offline > restore. > > # ON_RECVRY_THREADS: > > # Number of parallel worker threads during an online restore. > > > > OFF_RECVRY_THREADS 10 # Default number of offline worker > threads > > ON_RECVRY_THREADS 1 # Default number of online worker > threads > > > > # Data Replication Variables > > DRINTERVAL 30 # DR max time between DR buffer flushes > (in sec) > > DRTIMEOUT 30 # DR network timeout (in sec) > > DRLOSTFOUND /usr/informix/etc/dr.lostfound # DR lost+found file path > > > > # CDR Variables > > CDR_EVALTHREADS 1,2 # evaluator threads > (per-cpu-vp,additional) > > CDR_DSLOCKWAIT 5 # DS lockwait timeout (seconds) > > CDR_QUEUEMEM 4096 # Maximum amount of memory for any CDR > queue (Kbytes) > > CDR_NIFCOMPRESS 0 # Link level compression (-1 never, 0 > none, 9 max) > > CDR_SERIAL 0,0 # Serial Column Sequence > > CDR_DBSPACE # dbspace for syscdr database > > CDR_QHDR_DBSPACE # CDR queue dbspace (default same as > catalog) > > CDR_QDATA_SBSPACE # List of CDR queue smart blob spaces > > > > # CDR_MAX_DYNAMIC_LOGS > > # -1 => unlimited > > # 0 => disable dynamic log addition > > # >0 => limit the no. of dynamic log additions with the specified value. > > # Max dynamic log requests that CDR can make within one server session. > > > > CDR_MAX_DYNAMIC_LOGS 0 # Dynamic log addition disabled by > default > > > > # Backup/Restore variables > > BAR_ACT_LOG /usr/informix/bar_act.log # ON-Bar Log file - not in > /tmp please > > BAR_DEBUG_LOG /usr/informix/bar_dbug.log > > # ON-Bar Debug Log - not in /tmp please > > BAR_MAX_BACKUP 0 > > BAR_RETRY 1 > > BAR_NB_XPORT_COUNT 10 > > BAR_XFER_BUF_SIZE 31 > > RESTARTABLE_RESTORE on > > BAR_PROGRESS_FREQ 0 > > > > # Informix Storage Manager variables > > ISM_DATA_POOL ISMData > > ISM_LOG_POOL ISMLogs > > > > # Read Ahead Variables > > RA_PAGES # Number of pages to attempt to read > ahead > > RA_THRESHOLD # Number of pages left before next group > > > > # DBSPACETEMP: > > # OnLine equivalent of DBTEMP for SE. This is the list of dbspaces > > # that the OnLine SQL Engine will use to create temp tables etc. > > # If specified it must be a colon separated list of dbspaces that exist > > # when the OnLine system is brought online. If not specified, or if > > # all dbspaces specified are invalid, various ad hoc queries will create > > # temporary files in /tmp instead. > > > > DBSPACETEMP TEMPDBS # Default temp dbspaces > > #DBSPACETEMP # Default temp dbspaces > > > > # DUMP*: > > # The following parameters control the type of diagnostics information > which > > # is preserved when an unanticipated error condition (assertion failure) > occurs > > # during OnLine operations. > > # For DUMPSHMEM, DUMPGCORE and DUMPCORE 1 means Yes, 0 means No. > > > > DUMPDIR /tmp # Preserve diagnostics in this directory > > DUMPSHMEM 1 # Dump a copy of shared memory > > DUMPGCORE 0 # Dump a core image using 'gcore' > > DUMPCORE 0 # Dump a core image (Warning:this aborts > OnLine) > > DUMPCNT 1 # Number of shared memory or gcore dumps > for > > # a single user's session > > > > FILLFACTOR 90 # Fill factor for building indexes > > > > # method for OnLine to use when determining current time > > USEOSTIME 0 # 0: use internal time(fast), 1: get > time from OS(slow) > > > > # Parallel Database Queries (pdq) > > MAX_PDQPRIORITY 100 # Maximum allowed pdqpriority > > DS_MAX_QUERIES # Maximum number of decision support > queries > > DS_TOTAL_MEMORY # Decision support memory (Kbytes) > > DS_MAX_SCANS 1048576 # Maximum number of decision support > scans > > DATASKIP off > > # OPTCOMPIND > > # 0 => Nested loop joins will be preferred (where > > # possible) over sortmerge joins and hash joins. > > # 1 => If the transaction isolation mode is not > > # "repeatable read", optimizer behaves as in (2) > > # below. Otherwise it behaves as in (0) above. > > # 2 => Use costs regardless of the transaction isolation > > # mode. Nested loop joins are not necessarily > > # preferred. Optimizer bases its decision purely > > # on costs. > > OPTCOMPIND 2 # To hint the optimizer > > > > DIRECTIVES 1 # Optimizer DIRECTIVES ON (1/Default) or > OFF (0) > > > > ONDBSPACEDOWN 2 # Dbspace down option: 0 = CONTINUE, 1 = > ABORT, 2 = WAIT > > OPCACHEMAX 0 # Maximum optical cache size (Kbytes) > > > > # HETERO_COMMIT (Gateway participation in distributed transactions) > > # 1 => Heterogeneous Commit is enabled > > # 0 (or any other value) => Heterogeneous Commit is disabled > > HETERO_COMMIT 0 > > > > SBSPACENAME # Default smartblob space name - this is > where blobs > > # go if no sbspace is specified when the > smartblob is > > # created. It is also used by some datablades as > > # the location to put their smartblobs. > > SYSSBSPACENAME # Default smartblob space for use by the > Informix > > # Server. This is used primarily for Informix > Server > > # system statistics collection. > > > > BLOCKTIMEOUT 3600 # Default timeout for system block > > SYSALARMPROGRAM /usr/informix/etc/evidence.sh # System Alarm program > path > > > > # Optimization goal: -1 = ALL_ROWS(Default), 0 = FIRST_ROWS > > OPT_GOAL -1 > > > > ALLOW_NEWLINE 0 # embedded newlines(Yes = 1, No = 0 or > anything but 1) > > > > # > > # The following are default settings for enabling Java in the database. > > # Replace all occurrences of /usr/informix with the value of > $INFORMIXDIR. > > > > #VPCLASS jvp,num=1 # Number of JVPs to start with > > > > JVPJAVAHOME /usr/informix/extend/krakatoa/jre/ > > # JRE installation root directory > > JVPHOME /usr/informix/extend/krakatoa # Krakatoa installation > directory > > > > JVPPROPFILE /usr/informix/extend/krakatoa/.jvpprops # JVP property > file > > JVPLOGFILE /usr/informix/jvp.log # JVP log file. > > > > JDKVERSION 1.3 # JDK version supported by this server > > > > # The path to the JRE libraries relative to JVPJAVAHOME > > JVPJAVALIB /lib/sparc/ > > > > # The JRE libraries to use for the Java VM > > > > JVPJAVAVM hpi:server:verify:java:net:zip:jpeg > > > > # use JVPARGS to change Java VM configuration > > #To display jni call > > #JVPARGS -verbose:jni > > > > # Classpath to use upon Java VM start-up (use _g version for debugging) > > > > # JVPCLASSPATH > /usr/informix/extend/krakatoa/krakatoa_g.jar:/usr/informix/extend/krakatoa/jdbc_g.jar > > JVPCLASSPATH > /usr/informix/extend/krakatoa/krakatoa.jar:/usr/informix/extend/krakatoa/jdbc.jar > > > > #The following lines are to support the DEMO server > > #ROOTPATH /usr/informix/US280R/server/online_root > > ROOTPATH /usr/informix/server/rootdbs/online_root > > > > MSGPATH /usr/informix/online.log > > TAPEDEV /dev/rmt/0un > > #TAPEDEV /dev/null > > LTAPEDEV /dev/null > > > > > >
Messages In This Thread
- oninit: Not enough room in ROOT DBspace.
ANNA JOHNSON -- Monday, 17 January 2005, at 3:04 p.m.
- Vedr.: oninit: Not enough room in ROOT DBspace.
bjarne.wilken.jensen@almbrand.dk -- Tuesday, 18 January 2005, at 2:17 a.m.
- Re: oninit: Not enough room in ROOT DBspace.
Martin Fuerderer -- Tuesday, 18 January 2005, at 3:15 a.m.
- RE: oninit: Not enough room in ROOT DBspace.
Sebastian, Norma J. -- Tuesday, 18 January 2005, at 8:51 a.m.
- Re: oninit: Not enough room in ROOT DBspace.
mrh@panix.com -- Tuesday, 18 January 2005, at 11:12 a.m.
- RE: oninit: Not enough room in ROOT DBspace.
malcolm weallans -- Tuesday, 18 January 2005, at 2:55 p.m.
- Re: Fwd: RE: oninit: Not enough room in ROOT DBspace. [4035 [4036]
Clifton M. Bean -- Tuesday, 18 January 2005, at 4:19 p.m.
- RE: RE: oninit: Not enough room in ROOT DBspace. [4035 [4036]
Gentsch, Sam -- Tuesday, 18 January 2005, at 4:40 p.m.
- RE: RE: oninit: Not enough room in ROOT DBspace. [4035 [4036] [4039]
Gentsch, Sam -- Wednesday, 19 January 2005, at 8:34 a.m.
- RE: oninit: Not enough room in ROOT DBspace.
Jonathan Leffler -- Thursday, 20 January 2005, at 9:41 a.m.
- Re: oninit: Not enough room in ROOT DBspace.
ART KAGEL, BLOOMBERG/ 731 LEXIN -- Tuesday, 18 January 2005, at 9:25 a.m.
IDS Forum is maintained by Administrator with WebBBS 5.12.
|
|