Re: Crash-me of PostgreSQL

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Uro Gruber <uros(dot)gruber(at)sir-mag(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Crash-me of PostgreSQL
Date: 2001-02-14 15:57:26
Message-ID: 13855.982166246@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Uro Gruber <uros(at)sir-mag(dot)com> writes:
> Does anybody have chrach-me (mysql) results for PostgreSQL 7.1beta,

I ran it a couple months ago (roughly 7.1beta1 timeframe) and got the
attached. I had to reduce the $max_buffer_size setting to "+1000000"
to prevent the perl process (not Postgres!) from running out of memory,
so some of the query-length limits shown are artifacts of that setting.

I don't regard crash-me as an unbiased or reliable indicator, but if
you want it here it is...

regards, tom lane

Running ./crash-me 1.54 on 'PostgreSQL version ???'

I hope you didn't have anything important running on this server....
Using --force. I assume you know what you are doing...

Tables without primary key: yes
SELECT without FROM: yes
Select constants: yes
Select table_name.*: yes
Allows ' and " as string markers: no
Double '' as ' in strings: yes
Multiple line strings: yes
" as identifier quote (ANSI SQL): no
` as identifier quote: no
[] as identifier quote: no
Column alias: yes
Table alias: yes
Functions: yes
Group functions: yes
Group functions with distinct: yes
Group by: yes
Group by position: yes
Group by alias: yes
Group on unused column: yes
Order by: yes
Order by position: yes
Order by function: yes
Order by on unused column: yes
Order by DESC is remembered: no
Compute: no
INSERT with Value lists: no
INSERT with set syntax: no
allows end ';': yes
LIMIT number of rows: with LIMIT
SELECT with LIMIT #,#: yes
Alter table add column: yes
Alter table add many columns: no
Alter table change column: no
Alter table modify column: no
Alter table alter column default: yes
Alter table drop column: no
Alter table rename table: yes
rename table: no
truncate: yes
Alter table add constraint: yes
Alter table drop constraint: no
Alter table add unique: no
Alter table drop unique: no
Alter table add primary key: no
Alter table add foreign key: no
Alter table drop foreign key: no
Alter table drop primary key: no
Case insensitive compare: no
Ignore end space in compare: yes
Group on column with null values: yes
Having: yes
Having with group function: yes
Order by alias: yes
Having on alias: no
binary numbers (0b1001): no
hex numbers (0x41): no
binary strings (b'0110'): yes
hex strings (x'1ace'): yes
Value of logical operation (1=1): 1
Simultaneous connections (installation default): 32
query size: 1048576

Supported sql types
Type character(1 arg): yes
Type char(1 arg): yes
Type char varying(1 arg): yes
Type character varying(1 arg): yes
Type boolean: yes
Type varchar(1 arg): yes
Type integer: yes
Type int: yes
Type smallint: yes
Type numeric(2 arg): yes
Type decimal(2 arg): yes
Type dec(2 arg): yes
Type bit: yes
Type bit(1 arg): yes
Type bit varying(1 arg): yes
Type float: yes
Type float(1 arg): yes
Type real: yes
Type double precision: yes
Type date: yes
Type time: yes
Type timestamp: yes
Type interval year: yes
Type interval year to month: yes
Type interval month: yes
Type interval day: yes
Type interval day to hour: yes
Type interval day to minute: yes
Type interval day to second: yes
Type interval hour: yes
Type interval hour to minute: yes
Type interval hour to second: yes
Type interval minute: yes
Type interval minute to second: yes
Type interval second: yes
Type national character varying(1 arg): yes
Type national character(1 arg): yes
Type nchar(1 arg): yes
Type national char varying(1 arg): yes
Type nchar varying(1 arg): yes
Type national character varying(1 arg): yes
Type timestamp with time zone: yes

Supported odbc types
Type binary(1 arg): no
Type varbinary(1 arg): no
Type tinyint: no
Type bigint: yes
Type datetime: yes

Supported extra types
Type blob: no
Type byte: no
Type long varbinary: no
Type image: no
Type text: yes
Type text(1 arg): no
Type mediumtext: no
Type long varchar(1 arg): no
Type varchar2(1 arg): no
Type mediumint: no
Type middleint: no
Type int unsigned: no
Type int1: no
Type int2: yes
Type int3: no
Type int4: yes
Type int8: yes
Type uint: no
Type money: yes
Type smallmoney: no
Type float4: yes
Type float8: yes
Type smallfloat: no
Type float(2 arg): no
Type double: no
Type enum(1 arg): no
Type set(1 arg): no
Type int(1 arg) zerofill: no
Type serial: yes
Type char(1 arg) binary: no
Type int not null auto_increment: no
Type abstime: yes
Type year: no
Type datetime: yes
Type smalldatetime: no
Type timespan: yes
Type reltime: yes
Type int not null identity: no
Type box: yes
Type bool: yes
Type circle: yes
Type polygon: yes
Type point: yes
Type line: yes
Type lseg: yes
Type path: yes
Type interval: yes
Type serial: yes
Type inet: yes
Type cidr: yes
Type macaddr: yes
Type varchar2(1 arg): no
Type nvarchar2(1 arg): no
Type number(2 arg): no
Type number(1 arg): no
Type number: no
Type long: no
Type raw(1 arg): no
Type long raw: no
Type rowid: no
Type mlslabel: no
Type clob: no
Type nclob: no
Type bfile: no
Remembers end space in char(): no
Remembers end space in varchar(): yes
Supports 0000-00-00 dates: no
Supports 0001-01-01 dates: yes
Supports 9999-12-31 dates: yes
Supports 'infinity dates: no
Supports YY-MM-DD dates: yes
Supports YY-MM-DD 2000 compilant dates: yes
Storage of float values: round
Type for row id: oid
Automatic row id: no

Supported sql functions
Function +, -, * and /: yes
Function ANSI SQL SUBSTRING: yes
Function BIT_LENGTH: no
Function searched CASE: yes
Function simple CASE: yes
Function CAST: yes
Function CHARACTER_LENGTH: yes
Function CHAR_LENGTH: yes
Function CHAR_LENGTH(constant): yes
Function COALESCE: yes
Function CURRENT_DATE: yes
Function CURRENT_TIME: yes
Function CURRENT_TIMESTAMP: yes
Function CURRENT_USER: yes
Function EXTRACT: yes
Function LOCALTIME: no
Function LOCALTIMESTAMP: no
Function LOWER: yes
Function NULLIF with strings: yes
Function NULLIF with numbers: yes
Function OCTET_LENGTH: yes
Function POSITION: yes
Function SESSION_USER: yes
Function SYSTEM_USER: no
Function TRIM: yes
Function UPPER: yes
Function USER: yes
Function concatenation with ||: yes

Supported odbc functions
Function ASCII: yes
Function CHAR: no
Function CHAR: no
Function CONCAT(2 arg): no
Function CONCAT(2 arg): no
Function DIFFERENCE(): no
Function DIFFERENCE(): no
Function INSERT: no
Function INSERT: no
Function LEFT: no
Function LEFT: no
Function LTRIM: yes
Function REAL LENGTH: yes
Function ODBC LENGTH: error
Function ODBC LENGTH: no
Function LOCATE(2 arg): no
Function LOCATE(2 arg): no
Function LOCATE(3 arg): no
Function LOCATE(3 arg): no
Function LCASE: no
Function LCASE: no
Function REPEAT: yes
Function REPLACE: no
Function REPLACE: no
Function RIGHT: no
Function RIGHT: no
Function RTRIM: yes
Function SPACE: no
Function SPACE: no
Function SOUNDEX: no
Function SOUNDEX: no
Function ODBC SUBSTRING: yes
Function UCASE: no
Function UCASE: no
Function ABS: yes
Function ACOS: yes
Function ASIN: yes
Function ATAN: yes
Function ATAN2: yes
Function CEILING: no
Function CEILING: no
Function COS: yes
Function COT: yes
Function DEGREES: yes
Function EXP: yes
Function FLOOR: yes
Function LOG: no
Function LOG: no
Function LOG10: no
Function LOG10: no
Function MOD: yes
Function PI: yes
Function POWER: no
Function POWER: no
Function RAND: no
Function RAND: no
Function RADIANS: yes
Function ROUND(2 arg): yes
Function SIGN: yes
Function SIN: yes
Function SQRT: no
Function SQRT: no
Function TAN: yes
Function TRUNCATE: no
Function TRUNCATE: no
Function NOW: yes
Function CURDATE: no
Function CURDATE: no
Function DAYNAME: no
Function DAYNAME: no
Function DAYNAME: no
Function MONTH: no
Function MONTH: no
Function MONTH: no
Function MONTHNAME: no
Function MONTHNAME: no
Function MONTHNAME: no
Function DAYOFMONTH: no
Function DAYOFMONTH: no
Function DAYOFMONTH: no
Function DAYOFWEEK: no
Function DAYOFWEEK: no
Function DAYOFWEEK: no
Function DAYOFYEAR: no
Function DAYOFYEAR: no
Function DAYOFYEAR: no
Function QUARTER: no
Function QUARTER: no
Function QUARTER: no
Function WEEK: no
Function WEEK: no
Function WEEK: no
Function YEAR: no
Function YEAR: no
Function YEAR: no
Function CURTIME: no
Function CURTIME: no
Function HOUR: no
Function HOUR: no
Function ANSI HOUR: no
Function ANSI HOUR: no
Function MINUTE: no
Function MINUTE: no
Function SECOND: no
Function SECOND: no
Function TIMESTAMPADD: no
Function TIMESTAMPADD: no
Function TIMESTAMPDIFF: no
Function TIMESTAMPDIFF: no
Function USER(): no
Function USER(): no
Function DATABASE: no
Function DATABASE: no
Function IFNULL: no
Function IFNULL: no
Function ODBC syntax LEFT & RIGHT: no
Function ODBC syntax LEFT & RIGHT: no

Supported extra functions
Function & (bitwise and): yes
Function | (bitwise or): yes
Function << and >> (bitwise shifts): yes
Function <> in SELECT: yes
Function =: yes
Function ~* (case insensitive compare): yes
Function ADD_MONTHS: no
Function AND and OR in SELECT: yes
Function AND as '&&': no
Function ASCII_CHAR: no
Function ASCII_CODE: no
Function ATN2: no
Function BETWEEN in SELECT: yes
Function BIT_COUNT: no
Function CEIL: yes
Function CHARINDEX: no
Function CHR: yes
Function CONCAT(list): no
Function CONVERT: no
Function COSH: no
Function DATEADD: no
Function DATEDIFF: no
Function DATENAME: no
Function DATEPART: no
Function DATE_FORMAT: no
Function ELT: no
Function ENCRYPT: no
Function FIELD: no
Function FORMAT: no
Function FROM_DAYS: no
Function FROM_UNIXTIME: no
Function GETDATE: no
Function GREATEST: no
Function IF: no
Function IN on numbers in SELECT: yes
Function IN on strings in SELECT: yes
Function INITCAP: yes
Function INSTR (Oracle syntax): no
Function INSTRB: no
Function INTERVAL: no
Function LAST_DAY: no
Function LAST_INSERT_ID: no
Function LEAST: no
Function LENGTHB: no
Function LIKE ESCAPE in SELECT: yes
Function LIKE in SELECT: yes
Function LN: no
Function LOCATE as INSTR: no
Function LOG(m,n): yes
Function LOGN: no
Function LPAD: yes
Function MDY: no
Function MOD as %: yes
Function MONTHS_BETWEEN: no
Function NOT BETWEEN in SELECT: yes
Function NOT LIKE in SELECT: yes
Function NOT as '!' in SELECT: no
Function NOT in SELECT: yes
Function ODBC CONVERT: no
Function OR as '||': no
Function PASSWORD: no
Function PASTE: no
Function PATINDEX: no
Function PERIOD_ADD: no
Function PERIOD_DIFF: no
Function POW: no
Function RANGE: no
Function REGEXP in SELECT: no
Function REPLICATE: no
Function REVERSE: no
Function ROOT: no
Function ROUND(1 arg): yes
Function RPAD: yes
Function SEC_TO_TIME: no
Function SINH: no
Function STR: no
Function STRCMP: no
Function STUFF: no
Function SUBSTRB: no
Function SUBSTRING as MID: no
Function SUBSTRING_INDEX: no
Function SYSDATE: no
Function TAIL: no
Function TANH: no
Function TIME_TO_SEC: no
Function TO_DAYS: no
Function TO_DAYS: no
Function TRANSLATE: yes
Function TRIM; Many char extension: yes
Function TRIM; Substring extension: error
Function TRUNC: yes
Function UID: no
Function UNIX_TIMESTAMP: no
Function USERENV: no
Function VERSION: yes
Function WEEKDAY: no
Function WEEKDAY: no
Function automatic num->string convert: no
Function automatic string->num convert: yes
Function concatenation with +: error

Supported where functions
Function = ALL: yes
Function = ANY: yes
Function = SOME: yes
Function BETWEEN: yes
Function EXISTS: yes
Function IN on numbers: yes
Function LIKE ESCAPE: yes
Function LIKE: yes
Function MATCH UNIQUE: no
Function MATCH: no
Function MATCHES: no
Function NOT BETWEEN: yes
Function NOT EXISTS: yes
Function NOT LIKE: yes
Function NOT UNIQUE: no
Function UNIQUE: no

Supported sql group functions
Group function AVG: yes
Group function COUNT (*): yes
Group function COUNT column name: yes
Group function COUNT(DISTINCT expr): yes
Group function MAX on numbers: yes
Group function MAX on strings: yes
Group function MIN on numbers: yes
Group function MIN on strings: yes
Group function SUM: yes
Group function ANY: no
Group function EVERY: no
Group function SOME: no

Supported extra group functions
Group function BIT_AND: no
Group function BIT_OR: no
Group function COUNT(DISTINCT expr,expr,...): no
Group function STD: no
Group function STDDEV: yes
Group function VARIANCE: yes

mixing of integer and float in expression: yes
No need to cast from integer to float: no
Is 1+NULL = NULL: yes
Is 'a' || NULL = NULL: yes
LIKE on numbers: yes
column LIKE column: yes
update of column= -column: yes
String functions on date columns: yes
char are space filled: yes
Update with many tables: no
DELETE FROM table1,table2...: no
Update with sub select: yes
Calculate 1--1: no
ANSI SQL simple joins: yes
max text or blob size: 1048545
constant string size in where: 1048541
constant string size in SELECT: 1048567
return string size from function: +8000000
simple expressions: 9999
big expressions: 10
stacked expressions: +2000
OR and AND in WHERE: 9997
tables in join: +64
primary key in create table: yes
unique in create table: yes
unique null in create: yes
default value for column: yes
default value function for column: no
temporary tables: yes
create table from select: with AS
index in create table: no
create index: yes
drop index: yes
null in index: yes
null in unique index: yes
null combination in unique index: yes
null in unique index: yes
index on column part (extension): no
different namespace for index: no
case independent table names: yes
drop table if exists: no
create table if not exists: no
inner join: yes
left outer join: yes
natural left outer join: yes
left outer join using: yes
left outer join odbc style: no
right outer join: yes
full outer join: yes
cross join (same as from a,b): yes
natural join: yes
union: yes
union all: yes
intersect: yes
intersect all: yes
except: yes
except all: yes
except: yes
except all: yes
minus: no
natural join (incompatible lists): yes
union (incompatible lists): yes
union all (incompatible lists): yes
intersect (incompatible lists): no
intersect all (incompatible lists): no
except (incompatible lists): no
except all (incompatible lists): no
except (incompatible lists): no
except all (incompatible lists): no
minus (incompatible lists): no
subqueries: yes
recursive subqueries: +64
insert INTO ... SELECT ...: yes
transactions: yes
atomic updates: no
views: yes
foreign key syntax: yes
foreign keys: yes
Create SCHEMA: no
Column constraints: yes
Table constraints: yes
Named constraints: yes
NULL constraint (SyBase style): yes
Triggers (ANSI SQL): no
PSM procedures (ANSI SQL): no
PSM modules (ANSI SQL): no
PSM functions (ANSI SQL): no
Domains (ANSI SQL): no
lock table: no
lock table: yes
many tables to drop table: yes
drop table with cascade/restrict: no
-- as comment (ANSI): yes
// as comment (ANSI): no
# as comment: no
/* */ as comment: yes
insert empty string: yes
Having with alias: no
table name length: +512
column name length: +512
select alias name length: +512
table alias name length: +512
index name length: +512
max char() size: 1048545
max varchar() size: 1048545
max text or blob size: 1048545 (cache)
Columns in table: 1600
unique indexes: +64
index parts: 16
max index part length: 235328
index varchar part length: 235328
indexes: +64
index length: +8192
max table row length (without blobs): 64519
table row length with nulls (without blobs): 64519
number of columns in order by: +64
number of columns in group by: +64
crash-me safe: yes
reconnected 0 times

In response to

Browse pgsql-general by date

  From Date Subject
Next Message mike 2001-02-14 16:01:54 Re: Bad book review
Previous Message Len Morgan 2001-02-14 15:55:12 Re: Re: ALTER DROP COLUMN