Thread: Crash-me of PostgreSQL

Crash-me of PostgreSQL

From
Uro Gruber
Date:
Hi!

Does anybody have chrach-me (mysql) results for PostgreSQL 7.1beta, because
in dont have module DBI for perl so i can't run it. I wan't to
comprebe to version 7.0 to see the difference.



--
lp,
 Uroš                          mailto:uros@sir-mag.com



Re: Crash-me of PostgreSQL

From
"Poul L. Christiansen"
Date:
Hi

crash-me is made specificially for MySQL and running it on PostgreSQL
(or any other DB) wouldn't be useful.

PostgreSQL beats MySQL on performance, when you use features that exist
on PostgreSQL that MySQL lacks (e.g. sub-selects).

Someone is working on an open database-independent benchmarking tool.
Does anyone know the status of that project?

Here is some benchmarking:
http://www.greatbridge.com/about/press.php?content_id=4

Poul L. Christiansen

Uro Gruber wrote:
>
> Hi!
>
> Does anybody have chrach-me (mysql) results for PostgreSQL 7.1beta, because
> in dont have module DBI for perl so i can't run it. I wan't to
> comprebe to version 7.0 to see the difference.
>
> --
> lp,
>  Uroš                          mailto:uros@sir-mag.com

RE: Crash-me of PostgreSQL

From
"Riebs, Andy"
Date:
> Someone is working on an open database-independent benchmarking tool.
> Does anyone know the status of that project?

See <http://osdb.sourceforge.net> for the home page of the "Open Source
Database Benchmark." We have early "working code" for the callable versions
of both PostgreSQL and MySQL, but it has NOT been rigorously reviewed yet,
nor does it support recent MySQL functionality. It would be interesting, but
not necessarily useful, to use osdb to compare PostgreSQL and MySQL at this
time.

(Comments, code contributions, and code review for osdb will all be
gleefully accepted!)

/andy

---
Andy Riebs, andy.riebs@compaq.com
978-506-6628, fax 978-506-6524         Compaq Computer Corporation
(h) ariebs@earthlink.net               <http://www.linuxalpha.compaq.com>
<http://osdb.sourceforge.net/>

Re: Crash-me of PostgreSQL

From
Ned Lilly
Date:
Poul L. Christiansen wrote:

> Someone is working on an open database-independent benchmarking tool.
> Does anyone know the status of that project?
>
> Here is some benchmarking:
> http://www.greatbridge.com/about/press.php?content_id=4


Keith Bruce and Andy Riebs in the Alpha group at Compaq have started
such a project at http://osdb.sourceforge.net/

They hatched the idea at the Open Source Database Summit hosted by OSDN
last fall, and I think it's fair to say there was broad consensus among
the participants (including Bruce, Tom and myself from Great Bridge,
Monty Widenius from MySQL and Ann Harrison from Interbase) that this was
A Good Thing.

Andy, can you give us an update?  I'm sure people would like to get
involved.

Best,
Ned


--
----------------------------------------------------
Ned Lilly                     e: ned@greatbridge.com
Vice President                w: www.greatbridge.com
Evangelism / Hacker Relations        v: 757.233.5523
Great Bridge, LLC                    f: 757.233.5555


RE: Crash-me of PostgreSQL

From
Karel Zak
Date:
On Wed, 14 Feb 2001, Riebs, Andy wrote:

> > Someone is working on an open database-independent benchmarking tool.
> > Does anyone know the status of that project?
>
> See <http://osdb.sourceforge.net> for the home page of the "Open Source
> Database Benchmark." We have early "working code" for the callable versions
> of both PostgreSQL and MySQL, but it has NOT been rigorously reviewed yet,
> nor does it support recent MySQL functionality. It would be interesting, but
> not necessarily useful, to use osdb to compare PostgreSQL and MySQL at this
> time.

 I still not understand what all compare, ... compare full dymamic/modular
PostgreSQL with static features (types, functions ..) in MySQL?

 The MySQL must be always faster - if not - MySQL developers are greenhorns -
but it isn't feasible.

 May be compare availability for some specific usage -- an example web
application, multi-user assecc vs. locks  ..etc., but some common tests
say nothing.

        Karel


Re: Crash-me of PostgreSQL

From
Tom Lane
Date:
Uro Gruber <uros@sir-mag.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