IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 3016


Ignore:
Timestamp:
Jan 14, 2005, 6:02:12 PM (22 years ago)
Author:
jhoblitt
Message:

update database scheme for mysql 4.1 syntax

Location:
trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/Nebulous-Server/docs/database_setup.txt

    r3015 r3016  
    11# Copyright (C) 2004  Joshua Hoblitt
    22#
    3 # $Id: database_setup.txt,v 1.2 2005-01-15 03:29:58 jhoblitt Exp $
     3# $Id: database_setup.txt,v 1.3 2005-01-15 04:02:12 jhoblitt Exp $
    44
    55### Database Setup
     
    1818USE pixel;
    1919
    20 ### MySQL 4.0
     20### MySQL 4.1
    2121
    2222DROP TABLE IF EXISTS storage_object;
     
    2828    read_lock TINYINT DEFAULT 0 NOT NULL,
    2929    write_lock ENUM( 'write' ),
    30     epoch TIMESTAMP NOT NULL,
     30    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     31    mtime TIMESTAMP,
    3132    PRIMARY KEY(so_id),
    3233    KEY(ext_id(64)),
     
    3940    so_id BIGINT NOT NULL,
    4041    uri VARCHAR(255) BINARY NOT NULL,
    41     sha1sum CHAR(40),
     42    sha1sum CHAR(40) ASCII,
    4243    assigned_location BOOL,
    43     epoch TIMESTAMP NOT NULL,
    44     atime TIMESTAMP NOT NULL,
     44    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     45    mtime TIMESTAMP,
    4546    PRIMARY KEY(ins_id),
    4647    KEY(so_id),
     
    7273        key(class_id)
    7374    ) ENGINE=innodb;
    74 
    75 ### MySQL 4.1
    76 
    77 DROP TABLE IF EXISTS storage_object;
    78 CREATE TABLE storage_object (
    79         so_id BIGINT NOT NULL AUTO_INCREMENT,
    80         ext_id VARCHAR(255) UNIQUE BINARY NOT NULL,
    81         comment VARCHAR(255),
    82         epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    83         PRIMARY KEY(so_id),
    84         KEY(ext_id(20))
    85     ) ENGINE=innodb;
    86 
    87 
    88 DROP TABLE IF EXISTS instance;
    89 CREATE TABLE instance (
    90         ins_id BIGINT NOT NULL AUTO_INCREMENT,
    91         so_id BIGINT NOT NULL,
    92         uri VARCHAR(255) BINARY NOT NULL,
    93         sha1sum CHAR(40) ASCII,
    94         read_lock TINYINT NOT NULL,
    95         write_lock ENUM( 'write', 'wait' ),
    96         atime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    97         PRIMARY KEY(ins_id),
    98         KEY(so_id)
    99     ) ENGINE=innodb;
    100 
    101 DROP TABLE IF EXISTS lock_record;
    102 CREATE TABLE lock_record (
    103         ins_id BIGINT NOT NULL,
    104         type ENUM( 'read', 'write', 'wait' ) NOT NULL,
    105         epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    106     ) ENGINE=innodb;
    107 
    108         epoch TIMESTAMP,
    10975
    11076### Initialization
  • trunk/Nebulous-Server/lib/Nebulous/Server/SQL.pm

    r2902 r3016  
    11# Copyright (c) 2004  Joshua Hoblitt
    22#
    3 # $Id: SQL.pm,v 1.3 2005-01-05 03:19:12 jhoblitt Exp $
     3# $Id: SQL.pm,v 1.4 2005-01-15 04:02:12 jhoblitt Exp $
    44
    55package PS::IPP::IData::Server::SQL;
     
    2424    new_object          => qq{
    2525        INSERT INTO storage_object
    26         VALUES (NULL, ?, ?, ?, 0, NULL, NULL)
     26        (so_id, ext_id, class_id, comment, read_lock, write_lock)
     27        VALUES (NULL, ?, ?, ?, 0, NULL)
    2728    },
    2829    delete_object       => qq{
     
    3940    },
    4041    get_object          => qq{
    41         SELECT *
     42        SELECT so_id, ext_id, class_id, comment, read_lock, write_lock, epoch, mtime
    4243        FROM storage_object
    4344        WHERE ext_id = ?
  • trunk/Nebulous-Server/t/09_server_stat_object.t

    r2872 r3016  
    33# Copryight (C) 2004-2005  Joshua Hoblitt
    44#
    5 # $Id: 09_server_stat_object.t,v 1.3 2005-01-03 23:55:29 jhoblitt Exp $
     5# $Id: 09_server_stat_object.t,v 1.4 2005-01-15 04:02:12 jhoblitt Exp $
    66
    77use strict;
    88use warnings FATAL => qw( all );
    99
    10 use Test::More tests => 12;
     10use Test::More tests => 13;
    1111
    1212use lib qw( ./t ./lib );
     
    3131    my $info = $idata->stat_object( "foo" );
    3232
    33     is( scalar @$info, 7, "number of columns" );
     33    is( scalar @$info, 8, "number of columns" );
    3434}
    3535
     
    4141    my $info = $idata->stat_object( "foo" );
    4242
    43     is( scalar @$info, 7,                       "number of columns" );
     43    is( scalar @$info, 8,                       "number of columns" );
    4444    is( @$info[0], 1,                           "so_id" );
    4545    is( @$info[1], "foo",                       "ext_id" );
     
    4949    is( @$info[5], undef,                       "write lock" );
    5050    like( @$info[6], qr/....-..-.. ..:..:../,   "epoch" );
     51    like( @$info[6], qr/....-..-.. ..:..:../,   "mtime" );
    5152}
    5253
  • trunk/Nebulous-Server/t/23_client_stat.t

    r2893 r3016  
    33# Copryight (C) 2004-2005  Joshua Hoblitt
    44#
    5 # $Id: 23_client_stat.t,v 1.1 2005-01-04 22:02:43 jhoblitt Exp $
     5# $Id: 23_client_stat.t,v 1.2 2005-01-15 04:02:12 jhoblitt Exp $
    66
    77use strict;
     
    1010use Apache::Test qw( -withtestmore );
    1111
    12 plan tests => 12;
     12plan tests => 13;
    1313
    1414use lib qw( ./t ./lib );
     
    3030    my $info = $idata->stat( "foo" );
    3131
    32     is( scalar @$info, 7, "number of columns" );
     32    is( scalar @$info, 8, "number of columns" );
    3333}
    3434
     
    4343    my $info = $idata->stat( "foo" );
    4444
    45     is( scalar @$info, 7,                       "number of columns" );
     45    is( scalar @$info, 8,                       "number of columns" );
    4646    is( @$info[0], 1,                           "so_id" );
    4747    is( @$info[1], "foo",                       "ext_id" );
     
    5151    is( @$info[5], undef,                       "write lock" );
    5252    like( @$info[6], qr/....-..-.. ..:..:../,   "epoch" );
     53    like( @$info[6], qr/....-..-.. ..:..:../,   "mtime" );
    5354}
    5455
  • trunk/Nebulous/docs/database_setup.txt

    r3015 r3016  
    11# Copyright (C) 2004  Joshua Hoblitt
    22#
    3 # $Id: database_setup.txt,v 1.2 2005-01-15 03:29:58 jhoblitt Exp $
     3# $Id: database_setup.txt,v 1.3 2005-01-15 04:02:12 jhoblitt Exp $
    44
    55### Database Setup
     
    1818USE pixel;
    1919
    20 ### MySQL 4.0
     20### MySQL 4.1
    2121
    2222DROP TABLE IF EXISTS storage_object;
     
    2828    read_lock TINYINT DEFAULT 0 NOT NULL,
    2929    write_lock ENUM( 'write' ),
    30     epoch TIMESTAMP NOT NULL,
     30    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     31    mtime TIMESTAMP,
    3132    PRIMARY KEY(so_id),
    3233    KEY(ext_id(64)),
     
    3940    so_id BIGINT NOT NULL,
    4041    uri VARCHAR(255) BINARY NOT NULL,
    41     sha1sum CHAR(40),
     42    sha1sum CHAR(40) ASCII,
    4243    assigned_location BOOL,
    43     epoch TIMESTAMP NOT NULL,
    44     atime TIMESTAMP NOT NULL,
     44    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     45    mtime TIMESTAMP,
    4546    PRIMARY KEY(ins_id),
    4647    KEY(so_id),
     
    7273        key(class_id)
    7374    ) ENGINE=innodb;
    74 
    75 ### MySQL 4.1
    76 
    77 DROP TABLE IF EXISTS storage_object;
    78 CREATE TABLE storage_object (
    79         so_id BIGINT NOT NULL AUTO_INCREMENT,
    80         ext_id VARCHAR(255) UNIQUE BINARY NOT NULL,
    81         comment VARCHAR(255),
    82         epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    83         PRIMARY KEY(so_id),
    84         KEY(ext_id(20))
    85     ) ENGINE=innodb;
    86 
    87 
    88 DROP TABLE IF EXISTS instance;
    89 CREATE TABLE instance (
    90         ins_id BIGINT NOT NULL AUTO_INCREMENT,
    91         so_id BIGINT NOT NULL,
    92         uri VARCHAR(255) BINARY NOT NULL,
    93         sha1sum CHAR(40) ASCII,
    94         read_lock TINYINT NOT NULL,
    95         write_lock ENUM( 'write', 'wait' ),
    96         atime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    97         PRIMARY KEY(ins_id),
    98         KEY(so_id)
    99     ) ENGINE=innodb;
    100 
    101 DROP TABLE IF EXISTS lock_record;
    102 CREATE TABLE lock_record (
    103         ins_id BIGINT NOT NULL,
    104         type ENUM( 'read', 'write', 'wait' ) NOT NULL,
    105         epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    106     ) ENGINE=innodb;
    107 
    108         epoch TIMESTAMP,
    10975
    11076### Initialization
  • trunk/Nebulous/lib/Nebulous/Server/SQL.pm

    r2902 r3016  
    11# Copyright (c) 2004  Joshua Hoblitt
    22#
    3 # $Id: SQL.pm,v 1.3 2005-01-05 03:19:12 jhoblitt Exp $
     3# $Id: SQL.pm,v 1.4 2005-01-15 04:02:12 jhoblitt Exp $
    44
    55package PS::IPP::IData::Server::SQL;
     
    2424    new_object          => qq{
    2525        INSERT INTO storage_object
    26         VALUES (NULL, ?, ?, ?, 0, NULL, NULL)
     26        (so_id, ext_id, class_id, comment, read_lock, write_lock)
     27        VALUES (NULL, ?, ?, ?, 0, NULL)
    2728    },
    2829    delete_object       => qq{
     
    3940    },
    4041    get_object          => qq{
    41         SELECT *
     42        SELECT so_id, ext_id, class_id, comment, read_lock, write_lock, epoch, mtime
    4243        FROM storage_object
    4344        WHERE ext_id = ?
  • trunk/Nebulous/t/09_server_stat_object.t

    r2872 r3016  
    33# Copryight (C) 2004-2005  Joshua Hoblitt
    44#
    5 # $Id: 09_server_stat_object.t,v 1.3 2005-01-03 23:55:29 jhoblitt Exp $
     5# $Id: 09_server_stat_object.t,v 1.4 2005-01-15 04:02:12 jhoblitt Exp $
    66
    77use strict;
    88use warnings FATAL => qw( all );
    99
    10 use Test::More tests => 12;
     10use Test::More tests => 13;
    1111
    1212use lib qw( ./t ./lib );
     
    3131    my $info = $idata->stat_object( "foo" );
    3232
    33     is( scalar @$info, 7, "number of columns" );
     33    is( scalar @$info, 8, "number of columns" );
    3434}
    3535
     
    4141    my $info = $idata->stat_object( "foo" );
    4242
    43     is( scalar @$info, 7,                       "number of columns" );
     43    is( scalar @$info, 8,                       "number of columns" );
    4444    is( @$info[0], 1,                           "so_id" );
    4545    is( @$info[1], "foo",                       "ext_id" );
     
    4949    is( @$info[5], undef,                       "write lock" );
    5050    like( @$info[6], qr/....-..-.. ..:..:../,   "epoch" );
     51    like( @$info[6], qr/....-..-.. ..:..:../,   "mtime" );
    5152}
    5253
  • trunk/Nebulous/t/23_client_stat.t

    r2893 r3016  
    33# Copryight (C) 2004-2005  Joshua Hoblitt
    44#
    5 # $Id: 23_client_stat.t,v 1.1 2005-01-04 22:02:43 jhoblitt Exp $
     5# $Id: 23_client_stat.t,v 1.2 2005-01-15 04:02:12 jhoblitt Exp $
    66
    77use strict;
     
    1010use Apache::Test qw( -withtestmore );
    1111
    12 plan tests => 12;
     12plan tests => 13;
    1313
    1414use lib qw( ./t ./lib );
     
    3030    my $info = $idata->stat( "foo" );
    3131
    32     is( scalar @$info, 7, "number of columns" );
     32    is( scalar @$info, 8, "number of columns" );
    3333}
    3434
     
    4343    my $info = $idata->stat( "foo" );
    4444
    45     is( scalar @$info, 7,                       "number of columns" );
     45    is( scalar @$info, 8,                       "number of columns" );
    4646    is( @$info[0], 1,                           "so_id" );
    4747    is( @$info[1], "foo",                       "ext_id" );
     
    5151    is( @$info[5], undef,                       "write lock" );
    5252    like( @$info[6], qr/....-..-.. ..:..:../,   "epoch" );
     53    like( @$info[6], qr/....-..-.. ..:..:../,   "mtime" );
    5354}
    5455
  • trunk/Nebulous/t/Test/Nebulous.pm

    r2785 r3016  
    11# Copyright (C) 2004  Joshua Hoblitt
    22#
    3 # $Id: Nebulous.pm,v 1.1.1.1 2004-12-22 02:16:23 jhoblitt Exp $
     3# $Id: Nebulous.pm,v 1.2 2005-01-15 04:02:12 jhoblitt Exp $
    44
    55package Test::IData;
     
    6868    read_lock TINYINT DEFAULT 0 NOT NULL,
    6969    write_lock ENUM( 'write' ),
    70     epoch TIMESTAMP NOT NULL,
     70    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     71    mtime TIMESTAMP,
    7172    PRIMARY KEY(so_id),
    7273    KEY(ext_id(64)),
     
    7879    ins_id BIGINT NOT NULL AUTO_INCREMENT,
    7980    so_id BIGINT NOT NULL,
    80     uri VARCHAR(255) BINARY NOT NULL UNIQUE,
    81     sha1sum CHAR(40),
     81    uri VARCHAR(255) BINARY NOT NULL,
     82    sha1sum CHAR(40) ASCII,
    8283    assigned_location BOOL,
    83     epoch TIMESTAMP NOT NULL,
    84     atime TIMESTAMP NOT NULL,
     84    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     85    mtime TIMESTAMP,
    8586    PRIMARY KEY(ins_id),
    8687    KEY(so_id),
Note: See TracChangeset for help on using the changeset viewer.