Subject Re: [firebird-support] Re: use of -USE_ALL_SPACE
Author W O
Thank you very much Fabiano, that's a very good idea.

Greetings.

Walter.




On Fri, May 3, 2013 at 1:52 PM, Fabiano Kureck <fabianoaspro@...>wrote:

> **
>
>
> You can take a look in the Firebird-Internals.pdf file. It can be found in
> Firebird site.
> It is very interesting! Read, create a demo database and use a hexadecimal
> editor ;)
>
>
> -----Mensagem original-----
> De: firebird-support@yahoogroups.com
> [mailto:firebird-support@yahoogroups.com] Em nome de W O
> Enviada em: sexta-feira, 3 de maio de 2013 14:20
>
> Para: firebird-support@yahoogroups.com
> Assunto: Re: [firebird-support] Re: use of -USE_ALL_SPACE
>
> That's very interesting Fabiano, thank you very much for your answer.
>
> Greetings.
>
> Walter.
>
> On Fri, May 3, 2013 at 1:12 PM, Fabiano Kureck
> <fabianoaspro@...>wrote:
>
> > **
>
> >
> >
> > Yes, you are wright.
> > And in a particular Page it is only allowed a single type of:
> > Table Data or index or generator and so on
> >
> > -----Mensagem original-----
> > De: firebird-support@yahoogroups.com
> > [mailto:firebird-support@yahoogroups.com] Em nome de W O
> > Enviada em: sexta-feira, 3 de maio de 2013 12:42
> > Para: firebird-support@yahoogroups.com
> > Assunto: Re: [firebird-support] Re: use of -USE_ALL_SPACE
> >
> >
> > Thank you very much Ann, your explanation was (as usual) very good.
> >
> > Just one more question:
> >
> > As I understand it, in a page just can be the rows (records) of a single
> > table. No two or more tables can share a page.
> >
> > Am I right?
> >
> > Greetings.
> >
> > Walter.
> >
> > On Fri, May 3, 2013 at 10:59 AM, Ann Harrison
> > <aharrison@...>wrote:
> >
> > > **
> >
> > >
> > >
> > > Walter,
> > >
> > >
> > > > As I understand it when a record is deleted a new primary version
> with
> > a
> > > > mark (a flag) is put on it indicating that fact and the previous
> > version
> > > of
> > > > the record is copied on another location (same page if there is room
> or
> > > > another page if there is not)
> > > >
> > > > Is that true?
> > > >
> > >
> > > More or less. A new "deleted stub" record - a header with no data - is
> > > created and stored on the record's home page. If there's not room on
> > > the home page for the deleted stub, then the oldest version of the
> record
> > > on the page will be moved elsewhere.
> > >
> > > It's probably worth noting, for those who are thinking about
> implementing
> > > relational database managers, that records can be relocated on page
> > > freely.
> > >
> > > The record number (RDB$DB_KEY and all its aliases) is the value
> > > used in indexes to identify a specific record. That number consists of
> > > a pointer page identifier - the ordinal number of a row in RDB$PAGES
> for
> > > pointer pages for that table - plus the offset on the pointer page that
> > > contains the page number of the record's home page, plus the offset
> > > of an index on that page that contains the offset and length of the
> data
> > > on page. So...
> > >
> > > 1) Reorganizing data on a page just requires swapping values in the
> index
> > > for that page to maintain stable record numbers.
> > >
> > > 2) All versions of a record use the same record number.
> > >
> > > 3) Updating a record does not require changing all the indexes on the
> > > table. If the key doesn't change, neither does the index.
> > >
> > > However, once a record has been deleted and garbage collected, its
> > > record number is released and will be reused, so record numbers are
> > > not stable outside of a single transaction - unless you use a switch
> > > to make record numbers stable for your connection. Record numbers
> > > will change after a gbak restore.
> > >
> > >
> > > Good luck,
> > >
> > > Ann
> > >
> > > [Non-text portions of this message have been removed]
> > >
> > >
> > >
> >
> > [Non-text portions of this message have been removed]
> >
> > ------------------------------------
> >
> >
> > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> >
> > Visit http://www.firebirdsql.org and click the Resources item
> > on the main (top) menu. Try Knowledgebase and FAQ links !
> >
> > Also search the knowledgebases at http://www.ibphoenix.com
> >
> > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> > Yahoo! Groups Links
> >
> >
> >
>
> [Non-text portions of this message have been removed]
>
> ------------------------------------
>
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
> Visit http://www.firebirdsql.org and click the Resources item
> on the main (top) menu. Try Knowledgebase and FAQ links !
>
> Also search the knowledgebases at http://www.ibphoenix.com
>
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> Yahoo! Groups Links
>
>
>


[Non-text portions of this message have been removed]