LI-V2.5.2.26448 (SuperClassic) crashes when running script that delete 
attachments and move database to offline
---------------------------------------------------------------------------------------------------------------

                 Key: CORE-3944
                 URL: http://tracker.firebirdsql.org/browse/CORE-3944
             Project: Firebird Core
          Issue Type: Bug
            Reporter: Pavel Zotov
         Attachments: 
gdb_gfix_online_renamed_database_before_running_its_backup.zip, 
gdb_isql_and_gfix_when_shutdown_database.zip

The following script deletes all attachments from our production, takes some 
pause to be all cached data flushed on HDD and moves database to offline:
-------------------- begin .sh ----------------
DBNAME=/var/db/firebird/kuntsevomain.fdb
echo call isql to delete all connections in mon\$attachments:
/opt/firebird/bin/isql -i del_conns.sql -user sysdba -pas masterke $DBNAME
sec2sleep=5
sleep $sec2sleep
echo timestamp of $DBNAME before shutdown:
ls --full-time $DBNAME
/opt/firebird/bin/gfix -shut full  -force 0 -user sysdba -pas masterke $DBNAME
echo timestamp of $DBNAME after shutdown:
ls --full-time $DBNAME
sec2sleep=20
sleep $sec2sleep
echo timestamp of $DBNAME after pause for flushing OS buffers:
ls --full-time $DBNAME
/opt/firebird/bin/gstat -h -user sysdba -pas masterke $DBNAME
-------------------- finish .sh ----------------

Script `del_conns.sql` contains the following commands:

------------------- begin del_conns.sql  --------------
set list on;
select mon$database_name from mon$database;
shell echo "Before deletion from mon\$attachments:";
select
 max(current_connection) my_conn
 ,left(list(a.mon$attachment_id),75)||'...' alive_conns
 ,left(list(a.mon$remote_address),75)||'...' alive_ip
 ,left(list(a.mon$attachment_id),75)||'...' alive_pid
 ,count(*) alive_total
from mon$attachments a;
commit;

delete from mon$attachments
where mon$attachment_id<>current_connection;
commit;
shell echo;
shell echo "After deletion from mon\$attachments:";

select
 max(current_connection) my_conn
 ,left(list(a.mon$attachment_id),75)||'...' alive_conns
 ,left(list(a.mon$remote_address),75)||'...' alive_ip
 ,left(list(a.mon$attachment_id),75)||'...' alive_pid
 ,count(*) alive_total
from mon$attachments a;
commit;
------------------- finish del_conns.sql  --------------

Today I've decided to make b/r and call this .sh script.
Suddenly I noted in firebird.log that fb_smp_server was crached and restarted 
by fbguard.

backtrace files that corresponds to gfix and isql see attach.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to