Files
crash-processor/htdocs/lib/db_init.sql

100 lines
2.3 KiB
SQL

drop table if exists reports;
drop table if exists raw_reports;
drop table if exists users;
drop table if exists options;
drop table if exists session;
create table session(
sid varchar(128) not null primary key,
user_id integer,
authenticated tinyint,
expires datetime,
persist text
);
create table options(
name varchar(128),
value text
);
create table users(
user_id integer not null auto_increment primary key,
name varchar(255),
email varchar(255),
login varchar(255),
password varchar(255),
is_admin tinyint,
is_allowed tinyint
);
create table raw_reports(
report_id integer not null auto_increment primary key,
reported timestamp not null default current_timestamp,
processed integer not null default 0,
raw_data longtext
);
create table reports(
id integer not null primary key,
reported timestamp,
client_version varchar(32),
client_version_s varchar(32),
client_channel varchar(32),
os varchar(128),
os_type varchar(32),
os_version varchar(128),
cpu varchar(128),
gpu varchar(128),
opengl_version varchar(128),
gpu_driver varchar(128),
ram integer,
grid varchar(128),
region varchar(128),
crash_reason varchar(128),
crash_address varchar(16),
crash_thread integer,
raw_stacktrace longtext,
signature_id integer
);
create table signature(
id integer not null auto_increment primary key,
hash varchar(32) not null unique,
signature text,
has_comments integer
);
create table comment(
id integer not null auto_increment primary key,
signature_id integer,
user_id integer,
commented timestamp not null default current_timestamp,
comment text
);
create table builds(
build_nr integer,
chan varchar(64),
version varchar(64),
hash varchar(64),
modified timestamp,
primary key(chan, build_nr)
);
drop function ver_expand;
delimiter $$
create function ver_expand(ver varchar(32))
returns varchar(32) deterministic
begin
declare ret varchar(32);
declare i int;
set i = 1;
set ret = '';
while (i < 5) do
set ret = concat(ret, SUBSTRING_INDEX(SUBSTRING_INDEX(ver , '.', i ),'.',-1));
set i = i + 1;
end while;
return ret;
end$$
delimiter ;