[Glass] GLASS performance & cleanup scripts

James Foster james.foster at gemtalksystems.com
Tue Dec 10 10:04:26 PST 2013


See below...

On Dec 10, 2013, at 9:53 AM, leodm <leo at smalltalking.net> wrote:

> Hi! me again :)
> 
>>> First, as to configuring the Shared Page Cache (SCP), the rule is simple:
>>> get the most that you can afford (up to slightly more than the repository
>>> size). With the free license the maximum size is 2 GB, but that should be
>>> pretty good for your database.
>> OK, so I change (in testing) the /etc/sysctl.conf file like this according
>> to 2GB free license limit
>> kernel.shmmax = 1610612736
>> kernel.shmall = 393216
> 
>> These appear to total ~1.5GB, so you could push it a bit more if you
> wanted.
> 
> Yes, I finally changed to 
> kernel.shmmax=2147483648
> kernel.shmall=524288
> 
> and SHR_PAGE_CACHE_SIZE_KB to 1280000
> 
> and reboot ok, but I get this error when I run the garbage collection
> manually. My gc script is like this:
> 
> 
> ObjectLogEntry emptyLog.
> MCRepositoryGroup default repositoriesDo: [:rep | rep flushCache ].
> MCDefinition clearInstances.
> MCMethodDefinition cachedDefinitions  removeKeys:
>    (MCMethodDefinition cachedDefinitions keys).
> MCMethodDefinition shutDown.
> MethodVersionHistory uniqueInstance cleanUp.
> %
> commit
> begin
> printit
> SystemRepository markForCollection
> %
> 
> and I get this error:
> 
> 
> topaz 1> topaz 1> start MFC mark/sweep phase: 12/10/2013 02:28:32 PM ART
> WARNING, unable to resolve either garMarkSweepPageBufSize or
> mfcGcPageBufSize, using default 320
> MarkSweepArgsSType::(): buffer size= 320 pages
> 
> I think that my recently changes affect this process, for the error message
> I asume I have to change other gemstone config variables that are related to
> the changes I made, its ok? 

This is not an Error, but a Warning and may be safely ignored. If you want to avoid the warning you can set a value in UserGlobals for GcUser.


>>> The #'fullBackupCompressedTo' method does an object-by-object backup that
>>> is not identical to the extent0.dbf file in layout (it has all the
>>> objects,
>>> but is typically more compact since the extents can have free space). The
>>> alternative is to suspend checkpoints, copy the extent(s), and resume
>>> checkpoints. That will give you an extent backup that can be used
>>> directly
>>> as a repository. Unless you have reason to prefer the extent-file-copy
>>> approach, I suggest you stick with the existing backup (and practice a
>>> restore occasionally).
>> Ok, I prefer the object-by-object backup approach. 
>> One question: When I make a #fullBackupCompressedTo, I can restore with
>> the
>> Gemstools "restore w/o tranlog" option?
> 
>> I think so, but I don’t use GemTools much. Are you using Linux exclusively,
> or Linux in a VM on Windows, or >Mac, or …?
> 
> Im using a Linux VM (is a classic GLASS Apliance VM with some changes)
> running on a VMware ESXi
> 
>> Or how can I make a restore from a
>> compress database (I prefer the command line, but any help is ok)
> 
>> To use the command line you would use Topaz. There is an entire chapter in
> the System Administration >Guide on backup/restore. I haven’t tested the
> following code, but from memory it would be something like >the following
> (in Topaz comments begin with the ‘!’ character):
> 
>> $ topaz -l << EOF
>> set user DataCurator pass swordfish gemstone gs64stone
>> login
>> run
>> SystemRepository restoreFromBackup: ‘/path/to/my/backup.bak.gz’
>> %
> <! this should give an “error” (logging you out) reporting the successful
> restore 
>> login
>> send SystemRepository restoreStatus
>> ! this should report that it is waiting for transaction logs
>> ! if you don’t want to restore any logs, then commits as follows
>> send SystemRepository commitRestore
>> ! this should give an “error” (logging you out) and report success
>> logout
>> exit
> 
> I try this out and I read all the chepter 9 of the Admin Guide, but I cant
> restore any backup yet. Always reports me probems with other sessions. The
> only way is to delete the repository, replace with the original one and then
> make the restore? is the only way? I cant just restore a backup on top of
> the current repository?

You can’t restore a backup when other users are logged in. Try adding ‘send System stopUserSessions’ to your Topaz scripts.

> Thnks!
> Leo
> 
> 
> 
> --
> View this message in context: http://forum.world.st/Glass-GLASS-performance-cleanup-scripts-tp4726189p4729023.html
> Sent from the GLASS mailing list archive at Nabble.com.
> _______________________________________________
> Glass mailing list
> Glass at lists.gemtalksystems.com
> http://lists.gemtalksystems.com/mailman/listinfo/glass



More information about the Glass mailing list