doc/evfuse_db.txt
author Tero Marttila <terom@fixme.fi>
Sun, 08 Mar 2009 01:33:45 +0200
changeset 58 02e539965ef4
parent 38 1fd4da071575
permissions -rw-r--r--
merge new-evsql into new structure

Just a simple pure-data filesystem stored in a SQL database. Implementation using PostgreSQL.
No weird dynamic magic.


file_tree:
    offset              serial4                     ephemeral counter used to tell one file entry from another
    ino                 int4 -> inodes.ino          the file inode
    ino_dir             int4 -> inodes.ino          the file's inode if it's a dir, NULL otherwise
    name                varchar(256)                the filename
    parent              int4 -> file_tree.ino_dir   file entry's parent dir
    
    unique(ino_dir)
    unique(name, parent)

inodes:
    ino                 serial4                 inode number
    type                char(3)
            REG                         normal file
            DIR                         directory
            LNK                         symlink
    mode                int2                    file access modes 
    data                oid                     type=REG -> file data, else NULL
    link_path           varchar(512)            type=LNK -> symlink target, else NULL