[Glass] GLASS performance & cleanup scripts

leodm leo at smalltalking.net
Tue Dec 10 09:53:37 PST 2013


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? 

>> 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?

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.


More information about the Glass mailing list