Cannot make full backup restore to work

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Cannot make full backup restore to work

GLASS mailing list
Hi guys,

I am following the sysadmin guide, but still, cannot make it work. It seems my main issue is that I have changed the password of DataCurator in my extent.... but I am not sure.

I have already did the cp of the virgin extent, I have already started gemstone with -R etc. So then I run a topaz with:

set user DataCurator pass swordfish
login
run
SystemRepository restoreFromBackup: '$2'
%
exit


After that, I open another topaz with:

send SystemRepository restoreStatus
printit
SystemRepository restoreFromCurrentLogs
%
login
printit
SystemRepository commitRestore
%
logout
exit


The output I get is:


topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> Warning: clearing the previous GemStone password.
topaz> topaz> successful login
topaz 1> topaz 1> The restore from backup completed, with 6906628 objects restored.
 Ready for restore from transaction log(s). (error 4046)
topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> successful login
topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> [281474976692481 sz:125 cls: 74753 String] Restoring from transaction log files, restored to 06/07/15 04:23:05 EDT, file 315 record 4, nextFileId 315, oldest fileId 315
topaz 1> topaz 1> Restore from transaction log(s) succeeded,  (error 4048)
topaz> topaz> topazm: in login, found topaz session 1 stale
successful login
topaz 1> topaz 1> -----------------------------------------------------
GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,
Error Category: 231169 [GemStone] Number: 4049  Arg Count: 1 Context : 20 exception : 20
Arg 1: 20
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.
topaz> topaz> LOGOUT can't be used prior to logging in.
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.


As you can see, I get a 

GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,

And so I cannot make any login to it. So... how I am supposed to do this? I am trying to follow the sysadmin guide. I do not understand the error message. 

Thanks in advance, 


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: Cannot make full backup restore to work

GLASS mailing list
I'm finding out ... what the error "Unable to re-originate log in commitRestore" means.

Dale

On 07/06/2015 12:22 PM, Mariano Martinez Peck via Glass wrote:
Hi guys,

I am following the sysadmin guide, but still, cannot make it work. It seems my main issue is that I have changed the password of DataCurator in my extent.... but I am not sure.

I have already did the cp of the virgin extent, I have already started gemstone with -R etc. So then I run a topaz with:

set user DataCurator pass swordfish
login
run
SystemRepository restoreFromBackup: '$2'
%
exit


After that, I open another topaz with:

send SystemRepository restoreStatus
printit
SystemRepository restoreFromCurrentLogs
%
login
printit
SystemRepository commitRestore
%
logout
exit


The output I get is:


topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> Warning: clearing the previous GemStone password.
topaz> topaz> successful login
topaz 1> topaz 1> The restore from backup completed, with 6906628 objects restored.
 Ready for restore from transaction log(s). (error 4046)
topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> successful login
topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> [281474976692481 sz:125 cls: 74753 String] Restoring from transaction log files, restored to 06/07/15 04:23:05 EDT, file 315 record 4, nextFileId 315, oldest fileId 315
topaz 1> topaz 1> Restore from transaction log(s) succeeded,  (error 4048)
topaz> topaz> topazm: in login, found topaz session 1 stale
successful login
topaz 1> topaz 1> -----------------------------------------------------
GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,
Error Category: 231169 [GemStone] Number: 4049  Arg Count: 1 Context : 20 exception : 20
Arg 1: 20
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.
topaz> topaz> LOGOUT can't be used prior to logging in.
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.


As you can see, I get a 

GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,

And so I cannot make any login to it. So... how I am supposed to do this? I am trying to follow the sysadmin guide. I do not understand the error message. 

Thanks in advance, 



_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: Cannot make full backup restore to work

GLASS mailing list
Thanks Dale. I tried a couple of permutations... trying to login before, after, split or put in same linked topaz, etc... but none worked :(
I also googled it and searched in the sysadmin guide but found nothing.

On Mon, Jul 6, 2015 at 8:31 PM, Dale Henrichs via Glass <[hidden email]> wrote:
I'm finding out ... what the error "Unable to re-originate log in commitRestore" means.

Dale


On 07/06/2015 12:22 PM, Mariano Martinez Peck via Glass wrote:
Hi guys,

I am following the sysadmin guide, but still, cannot make it work. It seems my main issue is that I have changed the password of DataCurator in my extent.... but I am not sure.

I have already did the cp of the virgin extent, I have already started gemstone with -R etc. So then I run a topaz with:

set user DataCurator pass swordfish
login
run
SystemRepository restoreFromBackup: '$2'
%
exit


After that, I open another topaz with:

send SystemRepository restoreStatus
printit
SystemRepository restoreFromCurrentLogs
%
login
printit
SystemRepository commitRestore
%
logout
exit


The output I get is:


topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> Warning: clearing the previous GemStone password.
topaz> topaz> successful login
topaz 1> topaz 1> The restore from backup completed, with 6906628 objects restored.
 Ready for restore from transaction log(s). (error 4046)
topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> successful login
topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> [281474976692481 sz:125 cls: 74753 String] Restoring from transaction log files, restored to 06/07/15 04:23:05 EDT, file 315 record 4, nextFileId 315, oldest fileId 315
topaz 1> topaz 1> Restore from transaction log(s) succeeded,  (error 4048)
topaz> topaz> topazm: in login, found topaz session 1 stale
successful login
topaz 1> topaz 1> -----------------------------------------------------
GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,
Error Category: 231169 [GemStone] Number: 4049  Arg Count: 1 Context : 20 exception : 20
Arg 1: 20
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.
topaz> topaz> LOGOUT can't be used prior to logging in.
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.


As you can see, I get a 

GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,

And so I cannot make any login to it. So... how I am supposed to do this? I am trying to follow the sysadmin guide. I do not understand the error message. 

Thanks in advance, 



_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass




--

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: Cannot make full backup restore to work

GLASS mailing list
In reply to this post by GLASS mailing list
Mariano,

There should be more information about the commitRestore error in the stone log .... Here are a few more comments from engineering:

  Does tranlog 315 agree with the last tranlog stone was writing to ?

  Recommend that all tranlogs be copied to an archive directory
  and then deleted from the directory stone is writing to before
  reattempting the restore.   Then you would restoreFromArchive...
  instead of restoreFromCurrent...   for  restoring the tranlogs.

  And tell him to use output push,  so we see both his input and his output
  in a single file.

Dale

On 07/06/2015 12:22 PM, Mariano Martinez Peck via Glass wrote:
Hi guys,

I am following the sysadmin guide, but still, cannot make it work. It seems my main issue is that I have changed the password of DataCurator in my extent.... but I am not sure.

I have already did the cp of the virgin extent, I have already started gemstone with -R etc. So then I run a topaz with:

set user DataCurator pass swordfish
login
run
SystemRepository restoreFromBackup: '$2'
%
exit


After that, I open another topaz with:

send SystemRepository restoreStatus
printit
SystemRepository restoreFromCurrentLogs
%
login
printit
SystemRepository commitRestore
%
logout
exit


The output I get is:


topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> Warning: clearing the previous GemStone password.
topaz> topaz> successful login
topaz 1> topaz 1> The restore from backup completed, with 6906628 objects restored.
 Ready for restore from transaction log(s). (error 4046)
topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> successful login
topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> [281474976692481 sz:125 cls: 74753 String] Restoring from transaction log files, restored to 06/07/15 04:23:05 EDT, file 315 record 4, nextFileId 315, oldest fileId 315
topaz 1> topaz 1> Restore from transaction log(s) succeeded,  (error 4048)
topaz> topaz> topazm: in login, found topaz session 1 stale
successful login
topaz 1> topaz 1> -----------------------------------------------------
GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,
Error Category: 231169 [GemStone] Number: 4049  Arg Count: 1 Context : 20 exception : 20
Arg 1: 20
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.
topaz> topaz> LOGOUT can't be used prior to logging in.
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.


As you can see, I get a 

GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,

And so I cannot make any login to it. So... how I am supposed to do this? I am trying to follow the sysadmin guide. I do not understand the error message. 

Thanks in advance, 



_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: Cannot make full backup restore to work

GLASS mailing list


On Mon, Jul 6, 2015 at 9:31 PM, Dale Henrichs via Glass <[hidden email]> wrote:
Mariano,

There should be more information about the commitRestore error in the stone log .... Here are a few more comments from engineering:

  Does tranlog 315 agree with the last tranlog stone was writing to ?



Puffff you nailed it!!!   No...315 was not the last one..there was one 316 which looked empty (512 bytes or so) and therefore stone log was saying:

    Creation of a new transaction log has failed,
....
DBF Op: Create; DBF Record: -1;
Error: The specified file already exists.; System Codes: No disk I/O error information is available.

I don;t know how the 316 was generated but I simply deleted that one and now the restore procedure worked like a charm.

Thank you very much. Cool, I now have a compactExtent.sh :)

Cool!

 
  Recommend that all tranlogs be copied to an archive directory
  and then deleted from the directory stone is writing to before
  reattempting the restore.   Then you would restoreFromArchive...
  instead of restoreFromCurrent...   for  restoring the tranlogs.

  And tell him to use output push,  so we see both his input and his output
  in a single file.



 
Dale

On 07/06/2015 12:22 PM, Mariano Martinez Peck via Glass wrote:
Hi guys,

I am following the sysadmin guide, but still, cannot make it work. It seems my main issue is that I have changed the password of DataCurator in my extent.... but I am not sure.

I have already did the cp of the virgin extent, I have already started gemstone with -R etc. So then I run a topaz with:

set user DataCurator pass swordfish
login
run
SystemRepository restoreFromBackup: '$2'
%
exit


After that, I open another topaz with:

send SystemRepository restoreStatus
printit
SystemRepository restoreFromCurrentLogs
%
login
printit
SystemRepository commitRestore
%
logout
exit


The output I get is:


topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> Warning: clearing the previous GemStone password.
topaz> topaz> successful login
topaz 1> topaz 1> The restore from backup completed, with 6906628 objects restored.
 Ready for restore from transaction log(s). (error 4046)
topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> successful login
topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> [281474976692481 sz:125 cls: 74753 String] Restoring from transaction log files, restored to 06/07/15 04:23:05 EDT, file 315 record 4, nextFileId 315, oldest fileId 315
topaz 1> topaz 1> Restore from transaction log(s) succeeded,  (error 4048)
topaz> topaz> topazm: in login, found topaz session 1 stale
successful login
topaz 1> topaz 1> -----------------------------------------------------
GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,
Error Category: 231169 [GemStone] Number: 4049  Arg Count: 1 Context : 20 exception : 20
Arg 1: 20
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.
topaz> topaz> LOGOUT can't be used prior to logging in.
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.


As you can see, I get a 

GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,

And so I cannot make any login to it. So... how I am supposed to do this? I am trying to follow the sysadmin guide. I do not understand the error message. 

Thanks in advance, 



_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass




--

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: Cannot make full backup restore to work

GLASS mailing list
As a return, I paste the compactExtent.sh script in case you want to add it to the gsDevKit. Of course, you will likely need to adjust it a bit (change some variables), but easy to do. 
Note the scripts keeps the original extent as backup... I do not want to remove it automatically by the script..I do not trust bash return values etc... hahahha. So I prefer to try the system myself and remove the old extent when I am sure it works. 




#!/bin/bash

# Requires a Sites subfolder password as a parameter
if [ "a$1" = "a" ]; then
        echo 'Missing argument <Sites subfolder>'
        exit 1
fi


# Requires a backup filename as a parameter
if [ "a$2" = "a" ]; then
        echo 'Missing argument <backup filename>'
        exit 1
fi



source $STONES_DIRECTORY/$1/gemstone/env

date=`date +%Y%m%d_%H%M%S`
su -m $GEMSTONE_USER -c "touch $GEMSTONE_LOGDIR/${GEMSTONE_NAME}_extentCompact.log"

echo "`date` ------------------------ Starting extent compactation of ${GEMSTONE_NAME} ------------------------" >> $GEMSTONE_LOGDIR/${GEMSTONE_NAME}_extentCompact.log


echo "`date` Stopping stone " >> $GEMSTONE_LOGDIR/${GEMSTONE_NAME}_extentCompact.log
/bin/bash $STONES_DIRECTORY/${1}/gemstone/$GEMSTONE_NAME stop


echo "`date` Copying fresh extent " >> $GEMSTONE_LOGDIR/${GEMSTONE_NAME}_extentCompact.log
sudo mv $GEMSTONE_DATADIR/extent0.dbf $GEMSTONE_DATADIR/extent0-original.dbf
sudo cp /opt/gemstone/product/bin/extent0.dbf $GEMSTONE_DATADIR/extent0.dbf
sudo chown $GEMSTONE_USER:$GEMSTONE_USER $GEMSTONE_DATADIR/extent0.dbf
sudo chmod 600 $GEMSTONE_DATADIR/extent0.dbf

echo "`date` Start stone with restore mode -R and start netldi " >> $GEMSTONE_LOGDIR/${GEMSTONE_NAME}_extentCompact.log
su -m $GEMSTONE_USER -c 'cd $APPLICATION_DIR; $GEMSTONE/bin/startstone -R -z $GEMSTONE_SYS_CONF -l $APPLICATION_LOG_DIR/log.txt $APPLICATION_NAME > $GEMSTONE_LOGDIR/startup.log 2>&1'
su -m $GEMSTONE_USER -c 'cd $APPLICATION_DIR; $GEMSTONE/bin/startnetldi -g -a $GEMSTONE_USER -n -P $NETLDI_PORT -l $APPLICATION_LOG_DIR/netldi$APPLICATION_NAME.log netldi$APPLICATION_NAME > $GEMSTONE_LOGDIR/netldiStartup.log 2>&1'


echo "`date` Restorying from backup: $2 " >> $GEMSTONE_LOGDIR/${GEMSTONE_NAME}_extentCompact.log

# Here I must set the DataCurator user and password because the runTopazStringScript.sh will use the .topazini username and password and that is
# a custom user/pass generated for the repository that doesn't exist in the virgin extent. 
$GEMSTONE_ADDITIONS_SCRIPTS/runTopazStringScript.sh $1 "

set user DataCurator pass swordfish
login
run
SystemRepository restoreFromBackup: '$2'
%
exit
"

# Once restored, we can use the custom admin username/pass defined in the .topazini
$GEMSTONE_ADDITIONS_SCRIPTS/runTopazStringScript.sh $1 "

send SystemRepository restoreStatus
printit
SystemRepository restoreFromCurrentLogs
%
login
printit
SystemRepository commitRestore
%
logout
exit


"



echo "`date` Starting again seaside gems again " >> $GEMSTONE_LOGDIR/${GEMSTONE_NAME}_extentCompact.log

sudo sh $STONES_DIRECTORY/${1}/gemstone/scripts/startSeasideGems.sh


On Mon, Jul 6, 2015 at 10:17 PM, Mariano Martinez Peck <[hidden email]> wrote:


On Mon, Jul 6, 2015 at 9:31 PM, Dale Henrichs via Glass <[hidden email]> wrote:
Mariano,

There should be more information about the commitRestore error in the stone log .... Here are a few more comments from engineering:

  Does tranlog 315 agree with the last tranlog stone was writing to ?



Puffff you nailed it!!!   No...315 was not the last one..there was one 316 which looked empty (512 bytes or so) and therefore stone log was saying:

    Creation of a new transaction log has failed,
....
DBF Op: Create; DBF Record: -1;
Error: The specified file already exists.; System Codes: No disk I/O error information is available.

I don;t know how the 316 was generated but I simply deleted that one and now the restore procedure worked like a charm.

Thank you very much. Cool, I now have a compactExtent.sh :)

Cool!

 
  Recommend that all tranlogs be copied to an archive directory
  and then deleted from the directory stone is writing to before
  reattempting the restore.   Then you would restoreFromArchive...
  instead of restoreFromCurrent...   for  restoring the tranlogs.

  And tell him to use output push,  so we see both his input and his output
  in a single file.



 
Dale

On 07/06/2015 12:22 PM, Mariano Martinez Peck via Glass wrote:
Hi guys,

I am following the sysadmin guide, but still, cannot make it work. It seems my main issue is that I have changed the password of DataCurator in my extent.... but I am not sure.

I have already did the cp of the virgin extent, I have already started gemstone with -R etc. So then I run a topaz with:

set user DataCurator pass swordfish
login
run
SystemRepository restoreFromBackup: '$2'
%
exit


After that, I open another topaz with:

send SystemRepository restoreStatus
printit
SystemRepository restoreFromCurrentLogs
%
login
printit
SystemRepository commitRestore
%
logout
exit


The output I get is:


topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> Warning: clearing the previous GemStone password.
topaz> topaz> successful login
topaz 1> topaz 1> The restore from backup completed, with 6906628 objects restored.
 Ready for restore from transaction log(s). (error 4046)
topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> topaz> successful login
topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> topaz 1> [281474976692481 sz:125 cls: 74753 String] Restoring from transaction log files, restored to 06/07/15 04:23:05 EDT, file 315 record 4, nextFileId 315, oldest fileId 315
topaz 1> topaz 1> Restore from transaction log(s) succeeded,  (error 4048)
topaz> topaz> topazm: in login, found topaz session 1 stale
successful login
topaz 1> topaz 1> -----------------------------------------------------
GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,
Error Category: 231169 [GemStone] Number: 4049  Arg Count: 1 Context : 20 exception : 20
Arg 1: 20
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.
topaz> topaz> LOGOUT can't be used prior to logging in.
topaz > exec iferr 1 : where
WHERE can't be used prior to logging in.


As you can see, I get a 

GemStone: Error         Fatal
Restore from transaction log failed, Unable to re-originate log in
commitRestore,

And so I cannot make any login to it. So... how I am supposed to do this? I am trying to follow the sysadmin guide. I do not understand the error message. 

Thanks in advance, 



_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass




--



--

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass