LINGER

La proposition SET LINGER vous permet de définir un délai de fermeture de la base de données. Ce mécanisme permet à Firebird, en mode SuperServer, de garder la base de données ouverte pendant un certain temps après la fermeture de la dernière connexion. disposent d'un mécanisme de fermeture différée de la base de données. Cela peut contribuer à améliorer les performances et à réduire les coûts dans les cas où la base de données est fréquemment ouverte et fermée, tout en gardant les ressources "réchauffées" jusqu'à la prochaine ouverture.

Tip

Ce mode peut être utile pour les applications Web où la connexion à la base de données ne dure généralement que très peu de temps.

La phrase DROP LINGER supprime le délai et ramène la base de données à son état normal (sans délai). Cette commande équivaut à mettre le délai à 0.

Tip

La suppression de "LINGER" n'est pas la meilleure solution pour répondre au besoin temporaire de le désactiver pour une action ponctuelle qui nécessite de forcer un arrêt du serveur. L'utilitaire gfix'' dispose maintenant d'un commutateur [option]NoLinger'' qui fermera immédiatement la base de données spécifiée après la disparition de la dernière connexion, indépendamment des paramètres LINGER de la base de données. Le réglage "LINGER" sera sauvegardé et fonctionnera normalement la prochaine fois.

En outre, le remplacement ponctuel est également disponible via les services API, en utilisant le tag isc_spb_prp_nolinger, par exemple (dans une ligne comme celle-ci) :

fbsvcmgr host:service_mgr user sysdba password xxx
action_properties dbname employee prp_nolinger
Example 1. Réglage d'un délai de 30 secondes
ALTER DATABASE SET LINGER 30;
Example 2. Suppression du délai
ALTER DATABASE DROP LINGER;

ou

ALTER DATABASE SET LINGER 0;