title: Does Firebird need manual reindexing?
body: <p>I use both Firebird embedded and Firebird Server, and from time to time I need to reindex the tables using a procedure like the following:</p>
  
  <pre><code>CREATE PROCEDURE MAINTENANCE_SELECTIVITY 
  ASDECLARE VARIABLE S VARCHAR(200);
  BEGIN
  FOR select RDB$INDEX_NAME FROM RDB$INDICES INTO :S DO
  BEGIN
  S = 'SET statistics INDEX ' || s || ';';
  EXECUTE STATEMENT :s;
  END
  SUSPEND;
  END
  </code></pre>
  
  <p>I guess this is normal using embedded, but is it really needed using a server? Is there a way to configure the server to do it automatically when required or periodically?</p>