diff options
author | Daniela Mariaschi <daniela@php.net> | 2003-06-14 16:38:10 +0000 |
---|---|---|
committer | Daniela Mariaschi <daniela@php.net> | 2003-06-14 16:38:10 +0000 |
commit | e8e4db8581f574daca647e3d286795ea07951e30 (patch) | |
tree | c29179f89ee883ad297db50a5df17e27dae1bffc | |
parent | 09eb38ec10d8393e583565ce7c193bf79b4491a8 (diff) | |
download | php-git-e8e4db8581f574daca647e3d286795ea07951e30.tar.gz |
Added IBASE_REC_VERSION/IBASE_REC_NO_VERSION transaction constants
required from bugs #8797 #23887
(added IBASE_WRITE, IBASE_WAIT, IBASE_CONCURRENCY just for clarity)
-rw-r--r-- | ext/interbase/interbase.c | 23 | ||||
-rw-r--r-- | ext/interbase/php_interbase.h | 26 |
2 files changed, 33 insertions, 16 deletions
diff --git a/ext/interbase/interbase.c b/ext/interbase/interbase.c index ccde756766..f723d6c2c6 100644 --- a/ext/interbase/interbase.c +++ b/ext/interbase/interbase.c @@ -546,13 +546,19 @@ PHP_MINIT_FUNCTION(ibase) REGISTER_LONG_CONSTANT("IBASE_DEFAULT", PHP_IBASE_DEFAULT, CONST_PERSISTENT); REGISTER_LONG_CONSTANT("IBASE_TEXT", PHP_IBASE_TEXT, CONST_PERSISTENT); REGISTER_LONG_CONSTANT("IBASE_UNIXTIME", PHP_IBASE_UNIXTIME, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IBASE_TIMESTAMP", PHP_IBASE_TIMESTAMP, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IBASE_DATE", PHP_IBASE_DATE, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IBASE_TIME", PHP_IBASE_TIME, CONST_PERSISTENT); + /* transactions */ + REGISTER_LONG_CONSTANT("IBASE_WRITE", PHP_IBASE_WRITE, CONST_PERSISTENT); REGISTER_LONG_CONSTANT("IBASE_READ", PHP_IBASE_READ, CONST_PERSISTENT); REGISTER_LONG_CONSTANT("IBASE_COMMITTED", PHP_IBASE_COMMITTED, CONST_PERSISTENT); REGISTER_LONG_CONSTANT("IBASE_CONSISTENCY", PHP_IBASE_CONSISTENCY, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IBASE_CONCURRENCY", PHP_IBASE_CONCURRENCY, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IBASE_REC_VERSION", PHP_IBASE_REC_VERSION, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IBASE_REC_NO_VERSION", PHP_IBASE_REC_NO_VERSION, CONST_PERSISTENT); REGISTER_LONG_CONSTANT("IBASE_NOWAIT", PHP_IBASE_NOWAIT, CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("IBASE_TIMESTAMP", PHP_IBASE_TIMESTAMP, CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("IBASE_DATE", PHP_IBASE_DATE, CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("IBASE_TIME", PHP_IBASE_TIME, CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IBASE_WAIT", PHP_IBASE_WAIT, CONST_PERSISTENT); return SUCCESS; } @@ -1547,22 +1553,27 @@ PHP_FUNCTION(ibase_trans) if (trans_argl & PHP_IBASE_READ) { /* READ ONLY TRANSACTION */ tpb[tpb_len++] = isc_tpb_read; } else { - tpb[tpb_len++] = isc_tpb_write; + tpb[tpb_len++] = isc_tpb_write; /* default access mode */ } /* isolation level */ if (trans_argl & PHP_IBASE_COMMITTED) { tpb[tpb_len++] = isc_tpb_read_committed; + if (trans_argl & PHP_IBASE_REC_VERSION) { + tpb[tpb_len++] = isc_tpb_rec_version; + }else{ + tpb[tpb_len++] = isc_tpb_no_rec_version; /* default in read_committed */ + } } else if (trans_argl & PHP_IBASE_CONSISTENCY) { tpb[tpb_len++] = isc_tpb_consistency; } else { - tpb[tpb_len++] = isc_tpb_concurrency; + tpb[tpb_len++] = isc_tpb_concurrency; /* default isolation level */ } /* lock resolution */ if (trans_argl & PHP_IBASE_NOWAIT) { tpb[tpb_len++] = isc_tpb_nowait; } else { - tpb[tpb_len++] = isc_tpb_wait; + tpb[tpb_len++] = isc_tpb_wait; /* default lock resolution */ } } diff --git a/ext/interbase/php_interbase.h b/ext/interbase/php_interbase.h index 06e7e78ca9..fb47daae59 100644 --- a/ext/interbase/php_interbase.h +++ b/ext/interbase/php_interbase.h @@ -159,16 +159,22 @@ typedef struct _php_ibase_varchar { /* extern ibase_module php_ibase_module; */ enum php_interbase_option { - PHP_IBASE_DEFAULT = 0, - PHP_IBASE_TEXT = 1, - PHP_IBASE_UNIXTIME = 2, - PHP_IBASE_READ = 4, - PHP_IBASE_COMMITTED = 8, - PHP_IBASE_CONSISTENCY = 16, - PHP_IBASE_NOWAIT = 32, - PHP_IBASE_TIMESTAMP = 64, - PHP_IBASE_DATE = 128, - PHP_IBASE_TIME = 256 + PHP_IBASE_DEFAULT = 0, + PHP_IBASE_TEXT = 1, + PHP_IBASE_UNIXTIME = 2, + PHP_IBASE_TIMESTAMP = 4, + PHP_IBASE_DATE = 8, + PHP_IBASE_TIME = 16, + /* transactions */ + PHP_IBASE_WRITE = 2, + PHP_IBASE_READ = 4, + PHP_IBASE_COMMITTED = 8, + PHP_IBASE_CONSISTENCY = 16, + PHP_IBASE_CONCURRENCY = 32, + PHP_IBASE_REC_VERSION = 64, + PHP_IBASE_REC_NO_VERSION = 128, + PHP_IBASE_NOWAIT = 256, + PHP_IBASE_WAIT = 512 }; #ifdef ZTS |