mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-22 17:23:03 +01:00
Changes to compile fb2 under autoconf includes some structural changes
This commit is contained in:
parent
562bc342e7
commit
365a7fe19c
@ -21,6 +21,8 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
|
||||
#pragma intrinsic GETPRIVMODE, GETUSERMODE
|
||||
#pragma intrinsic_file "aifintr.pub.sys"
|
||||
#pragma intrinsic AIFPORTCLOSE, AIFPORTOPEN, AIFPORTRECEIVE, AIFPORTSEND, AIFPORTINT
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/ods.h"
|
||||
@ -30,7 +31,7 @@
|
||||
#include "../jrd/pio.h"
|
||||
#include "../jrd/dsc.h"
|
||||
#include "../wal/wal.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/flags.h"
|
||||
#include "../jrd/sbm.h"
|
||||
#include "../jrd/sdw.h"
|
||||
@ -260,10 +261,10 @@ void AIL_disable(void)
|
||||
journal_dir[jd_len] = 0;
|
||||
|
||||
if (!jd_len)
|
||||
ERR_post(gds__no_jrn, 0);
|
||||
ERR_post(gds_no_jrn, 0);
|
||||
|
||||
if (!dbb->dbb_wal)
|
||||
ERR_post(gds__no_wal, 0);
|
||||
ERR_post(gds_no_wal, 0);
|
||||
|
||||
if ((ret_val = JRN_init(tdbb->tdbb_status_vector, &dbb->dbb_journal,
|
||||
dbb->dbb_page_size,
|
||||
@ -476,14 +477,14 @@ void AIL_enable(
|
||||
/* Can enable journal only if wal sub system is in use */
|
||||
|
||||
if (!dbb->dbb_wal)
|
||||
ERR_post(gds__no_wal_no_jrn, 0);
|
||||
ERR_post(gds_no_wal_no_jrn, 0);
|
||||
|
||||
/* check if journal is already enabled */
|
||||
|
||||
if (PAG_get_clump
|
||||
(HEADER_PAGE, HDR_journal_server, &jd_len,
|
||||
reinterpret_cast <
|
||||
UCHAR * >(journal_dir))) ERR_post(gds__jrn_present, 0);
|
||||
UCHAR * >(journal_dir))) ERR_post(gds_jrn_present, 0);
|
||||
|
||||
/*
|
||||
* check if we are trying to enable long term journaling without
|
||||
@ -497,7 +498,7 @@ void AIL_enable(
|
||||
if (!(log_files[i]->lg_flags & LOG_serial)) {
|
||||
for (i = 0; i < number; i++)
|
||||
ALL_release(reinterpret_cast < frb * >(log_files[i]));
|
||||
ERR_post(gds__no_archive, 0);
|
||||
ERR_post(gds_no_archive, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -17,9 +17,10 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: align.cpp,v 1.1.1.1 2001-05-23 13:26:05 tamlin Exp $
|
||||
$Id: align.cpp,v 1.2 2001-07-29 17:42:21 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include <signal.h>
|
||||
#include "../jrd/ib_stdio.h"
|
||||
|
@ -25,10 +25,11 @@
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/ib_stdio.h"
|
||||
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
|
||||
#ifndef GATEWAY
|
||||
#include "../jrd/everything.h"
|
||||
@ -41,7 +42,7 @@
|
||||
#include "../jrd/mov_proto.h"
|
||||
#include "../jrd/thd_proto.h"
|
||||
|
||||
#define BLKDEF(type, root, tail) sizeof (struct root), tail,
|
||||
#define BLKDEF(type, root, tail) { sizeof (struct root), tail },
|
||||
|
||||
extern "C" {
|
||||
|
||||
@ -50,13 +51,14 @@ static const struct {
|
||||
SSHORT typ_root_length;
|
||||
SSHORT typ_tail_length;
|
||||
} block_sizes[] = {
|
||||
0, 0,
|
||||
{0, 0},
|
||||
#ifndef GATEWAY
|
||||
#include "../jrd/blk.h"
|
||||
#else
|
||||
#include ".._gway/gway/blk.h"
|
||||
#endif
|
||||
0};
|
||||
{0, 0}
|
||||
};
|
||||
|
||||
#undef BLKDEF
|
||||
|
||||
@ -559,8 +561,8 @@ SCHAR *ALL_malloc(ULONG size, ERR_T err_ret)
|
||||
|
||||
/* NOMEM: post user level error */
|
||||
if (err_ret == ERR_jmp)
|
||||
ERR_post(gds__sys_request, gds_arg_string, "gds__alloc", gds_arg_gds,
|
||||
gds__virmemexh, 0);
|
||||
ERR_post(gds_sys_request, gds_arg_string, "gds__alloc", gds_arg_gds,
|
||||
gds_virmemexh, 0);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
@ -892,8 +894,8 @@ SCHAR *ALL_sys_alloc(ULONG size, ERR_T err_ret)
|
||||
|
||||
/* NOMEM: post user level error */
|
||||
if (err_ret == ERR_jmp)
|
||||
ERR_post(gds__sys_request, gds_arg_string, "gds__sys_alloc",
|
||||
gds_arg_gds, gds__virmemexh, 0);
|
||||
ERR_post(gds_sys_request, gds_arg_string, "gds__sys_alloc",
|
||||
gds_arg_gds, gds_virmemexh, 0);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
@ -21,9 +21,11 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/alt_use_sec.h"
|
||||
|
||||
#define IS_VALID_SERVER(server) if (!server || !*server) \
|
||||
{ \
|
||||
@ -36,7 +38,7 @@
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "../jrd/pwd.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/gds_proto.h"
|
||||
#include "../jrd/utl_proto.h"
|
||||
#include "../jrd/why_proto.h"
|
||||
@ -893,7 +895,7 @@ int API_ROUTINE isc_add_user(STATUS * status, USER_SEC_DATA * user_data)
|
||||
* Return > 0 if any error occurs.
|
||||
*
|
||||
**************************************/
|
||||
#ifdef PHASE_1
|
||||
#ifdef PHASE_1_BUILD_NO_SECURITY_DB
|
||||
return 1;
|
||||
#else
|
||||
USHORT retval = 0, l;
|
||||
@ -1078,7 +1080,7 @@ int API_ROUTINE isc_delete_user(STATUS * status, USER_SEC_DATA * user_data)
|
||||
* Return > 0 if any error occurs.
|
||||
*
|
||||
**************************************/
|
||||
#ifdef PHASE_1
|
||||
#ifdef PHASE_1_BUILD_NO_SECURITY_DB
|
||||
return 1;
|
||||
#else
|
||||
USHORT retval = 0, l;
|
||||
@ -1143,7 +1145,7 @@ int API_ROUTINE isc_modify_user(STATUS * status, USER_SEC_DATA * user_data)
|
||||
* Return > 0 if any error occurs.
|
||||
*
|
||||
**************************************/
|
||||
#ifdef PHASE_1
|
||||
#ifdef PHASE_1_BUILD_NO_SECURITY_DB
|
||||
return 1;
|
||||
#else
|
||||
USHORT retval = 0, l;
|
||||
@ -1300,7 +1302,7 @@ void *open_security_db(
|
||||
* Returns NULL otherwise
|
||||
*
|
||||
**************************************/
|
||||
#ifdef PHASE_1
|
||||
#ifdef PHASE_1_BUILD_NO_SECURITY_DB
|
||||
return 0;
|
||||
#else
|
||||
short dpb_length, l = 0;
|
||||
|
54
src/jrd/alt_use_sec.h.pre
Normal file
54
src/jrd/alt_use_sec.h.pre
Normal file
@ -0,0 +1,54 @@
|
||||
#ifndef INCLUDE_alt_use_sec
|
||||
#define INCLUDE_alt_use_sec
|
||||
/*
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.mozilla.org/MPL/
|
||||
* Alternatively, the contents of this file may be used under the
|
||||
* terms of the GNU General Public License Version 2 or later (the
|
||||
* "GPL"), in which case the provisions of the GPL are applicable
|
||||
* instead of those above. You may obtain a copy of the Licence at
|
||||
* http://www.gnu.org/copyleft/gpl.html
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* Relevant for more details.
|
||||
*
|
||||
* This file was created by members of the firebird development team.
|
||||
* All individual contributions remain the Copyright (C) of those
|
||||
* individuals. Contributors to this file are either listed here or
|
||||
* can be obtained from a CVS history command.
|
||||
*
|
||||
* All rights reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Mark O'Donohue <mark.odonohue@ludwig.edu.au>
|
||||
* John Bellardo <bellardo@cs.ucsd.edu>
|
||||
*
|
||||
*
|
||||
* $Id: alt_use_sec.h.pre,v 1.1 2001-07-29 17:42:21 skywalker Exp $
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
// During the build process in the initial stages the isc4.gdb database does
|
||||
// not exist, but to build the isc4.gdb database the tools need to be built.
|
||||
// So the following #define is set/unset in the makefile depending upon which
|
||||
// stage in the compile process we are up to.
|
||||
//
|
||||
// In the earlier stages it is set to "1" then after we have build a set of
|
||||
// tools mainly gpre_static and gbak_static it is changed to an "undef".
|
||||
//
|
||||
// The alt_use_sec.h file is built from alt_use_sec.h.pre using sed
|
||||
// See the Makefile.in.jrd for the two places where the .h file is built.
|
||||
//
|
||||
// The build is done this way to allow the makefile to have a simple set
|
||||
// of dependancies to determine the makeup and up to date check for
|
||||
// libgds.a/so.
|
||||
|
||||
#define PHASE_1_BUILD_NO_SECURITY_DB
|
||||
|
||||
#endif
|
@ -24,9 +24,10 @@
|
||||
* readonly databases.
|
||||
*/
|
||||
/*
|
||||
$Id: blb.cpp,v 1.3 2001-07-12 05:46:04 bellardo Exp $
|
||||
$Id: blb.cpp,v 1.4 2001-07-29 17:42:21 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include "../jrd/jrd.h"
|
||||
@ -37,7 +38,7 @@ $Id: blb.cpp,v 1.3 2001-07-12 05:46:04 bellardo Exp $
|
||||
#include "../jrd/blb.h"
|
||||
#include "../jrd/ods.h"
|
||||
#include "../jrd/lls.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/blob_filter.h"
|
||||
#include "../jrd/sdl.h"
|
||||
#include "../jrd/intl.h"
|
||||
@ -63,7 +64,7 @@ $Id: blb.cpp,v 1.3 2001-07-12 05:46:04 bellardo Exp $
|
||||
#include "../jrd/thd_proto.h"
|
||||
|
||||
|
||||
extern "C" {
|
||||
//extern "C" {
|
||||
|
||||
|
||||
#define STREAM (blob->blb_flags & BLB_stream)
|
||||
@ -463,9 +464,9 @@ USHORT BLB_get_segment(TDBB tdbb,
|
||||
if (status =
|
||||
BLF_get_segment(tdbb, &blob->blb_filter, &length, buffer_length,
|
||||
segment)) {
|
||||
if (status == gds__segstr_eof)
|
||||
if (status == gds_segstr_eof)
|
||||
blob->blb_flags |= BLB_eof;
|
||||
else if (status == gds__segment)
|
||||
else if (status == gds_segment)
|
||||
blob->blb_fragment_size = 1;
|
||||
else
|
||||
ERR_punt();
|
||||
@ -751,7 +752,7 @@ SLONG BLB_lseek(BLB blob, USHORT mode, SLONG offset)
|
||||
**************************************/
|
||||
|
||||
if (!(blob->blb_flags & BLB_stream))
|
||||
ERR_post(gds__bad_segstr_type, 0);
|
||||
ERR_post(gds_bad_segstr_type, 0);
|
||||
|
||||
if (mode == 1)
|
||||
offset += blob->blb_seek;
|
||||
@ -838,7 +839,7 @@ void BLB_move(TDBB tdbb, DSC * from_desc, DSC * to_desc, NOD field)
|
||||
BUGCHECK(199); /* msg 199 expected field node */
|
||||
|
||||
if (from_desc->dsc_dtype != dtype_quad
|
||||
&& from_desc->dsc_dtype != dtype_blob) ERR_post(gds__convert_error,
|
||||
&& from_desc->dsc_dtype != dtype_blob) ERR_post(gds_convert_error,
|
||||
gds_arg_string,
|
||||
"BLOB", 0);
|
||||
|
||||
@ -921,7 +922,7 @@ void BLB_move(TDBB tdbb, DSC * from_desc, DSC * to_desc, NOD field)
|
||||
blob->blb_attachment != tdbb->tdbb_attachment ||
|
||||
!(blob->blb_flags & BLB_closed) ||
|
||||
(blob->blb_request && blob->blb_request != request))
|
||||
ERR_post(gds__bad_segstr_id, 0);
|
||||
ERR_post(gds_bad_segstr_id, 0);
|
||||
|
||||
if (materialized_blob && !(blob->blb_flags & BLB_temporary)) {
|
||||
refetch_flag = TRUE;
|
||||
@ -1109,7 +1110,7 @@ BLB BLB_open2(TDBB tdbb,
|
||||
if (blob_id->bid_relation_id >= vector->vec_count ||
|
||||
!(blob->blb_relation =
|
||||
(REL) vector->vec_object[blob_id->bid_relation_id]))
|
||||
ERR_post(gds__bad_segstr_id, 0);
|
||||
ERR_post(gds_bad_segstr_id, 0);
|
||||
|
||||
DPM_get_blob(tdbb, blob, blob_id->bid_stuff.bid_number, FALSE, (SLONG) 0);
|
||||
|
||||
@ -1335,7 +1336,7 @@ SLONG * param, SLONG slice_length, UCHAR * slice)
|
||||
IBERROR(197); /* msg 197 field for array not known */
|
||||
|
||||
if (!(array_desc = field->fld_array))
|
||||
ERR_post(gds__invalid_dimension, gds_arg_number, (SLONG) 0,
|
||||
ERR_post(gds_invalid_dimension, gds_arg_number, (SLONG) 0,
|
||||
gds_arg_number, (SLONG) 1, 0);
|
||||
|
||||
/* Find and/or allocate array block. There are three distinct cases:
|
||||
@ -1645,9 +1646,9 @@ static STATUS blob_filter(
|
||||
BLB_get_segment(tdbb, blob, control->ctl_buffer,
|
||||
control->ctl_buffer_length);
|
||||
if (blob->blb_flags & BLB_eof)
|
||||
return gds__segstr_eof;
|
||||
return gds_segstr_eof;
|
||||
if (blob->blb_fragment_size)
|
||||
return gds__segment;
|
||||
return gds_segment;
|
||||
return SUCCESS;
|
||||
|
||||
case ACTION_create:
|
||||
@ -1682,7 +1683,7 @@ static STATUS blob_filter(
|
||||
return BLB_lseek((BLB) control->ctl_source_handle, mode, offset);
|
||||
|
||||
default:
|
||||
ERR_post(gds__uns_ext, 0);
|
||||
ERR_post(gds_uns_ext, 0);
|
||||
return SUCCESS;
|
||||
}
|
||||
}
|
||||
@ -1724,7 +1725,7 @@ static void check_BID_validity(BLB blob, TDBB tdbb)
|
||||
blob->blb_attachment != tdbb->tdbb_attachment ||
|
||||
blob->blb_level > 2 || !(blob->blb_flags & BLB_temporary))
|
||||
|
||||
ERR_post(gds__bad_segstr_id, 0);
|
||||
ERR_post(gds_bad_segstr_id, 0);
|
||||
}
|
||||
|
||||
|
||||
@ -2278,7 +2279,7 @@ static void slice_callback(SLICE arg, ULONG count, DSC * descriptors)
|
||||
next = (BLOB_PTR *) slice_desc->dsc_address + arg->slice_element_length;
|
||||
|
||||
if ((BLOB_PTR *) next > (BLOB_PTR *) arg->slice_end)
|
||||
ERR_post(gds__out_of_bounds, 0);
|
||||
ERR_post(gds_out_of_bounds, 0);
|
||||
|
||||
if ((BLOB_PTR *) array_desc->dsc_address < (BLOB_PTR *) arg->slice_base)
|
||||
ERR_error(198); /* msg 198 array subscript computation error */
|
||||
@ -2421,4 +2422,4 @@ static BLB store_array(TDBB tdbb, TRA transaction, BID blob_id)
|
||||
}
|
||||
|
||||
|
||||
} // extern "C"
|
||||
//} // extern "C"
|
||||
|
@ -31,7 +31,7 @@
|
||||
#include "../jrd/val.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
//extern "C" {
|
||||
#endif
|
||||
|
||||
extern void BLB_cancel(TDBB, struct blb *);
|
||||
@ -61,7 +61,7 @@ extern void BLB_scalar(TDBB, struct tra *, struct bid *, USHORT, SLONG *,
|
||||
struct vlu *);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
//} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* _JRD_BLB_PROTO_H_ */
|
||||
|
@ -30,11 +30,12 @@
|
||||
*
|
||||
* Marco Romanini (27-January-1999) */
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/blob_filter.h"
|
||||
#include "../jrd/tra.h"
|
||||
#include "../jrd/constants.h"
|
||||
@ -51,7 +52,7 @@
|
||||
#include "../jrd/thd_proto.h"
|
||||
#include "../jrd/isc_s_proto.h"
|
||||
#include "../jrd/all_proto.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
|
||||
/* System provided internal filters for filtering internal
|
||||
* subtypes to text.
|
||||
@ -195,7 +196,7 @@ STATUS DLL_EXPORT BLF_get_segment(TDBB tdbb,
|
||||
|
||||
status = (*control->ctl_source) (ACTION_get_segment, control);
|
||||
|
||||
if (!status || status == gds__segment)
|
||||
if (!status || status == gds_segment)
|
||||
*length = control->ctl_segment_length;
|
||||
else
|
||||
*length = 0;
|
||||
@ -350,13 +351,13 @@ USHORT bpb_length, UCHAR * bpb, PTR callback, USHORT action, BLF filter)
|
||||
|
||||
if ((!filter) || (!filter->blf_filter)) {
|
||||
*user_status++ = gds_arg_gds;
|
||||
*user_status++ = gds__nofilter;
|
||||
*user_status++ = gds_nofilter;
|
||||
*user_status++ = gds_arg_number;
|
||||
*user_status++ = (STATUS) from;
|
||||
*user_status++ = gds_arg_number;
|
||||
*user_status++ = (STATUS) to;
|
||||
*user_status = gds_arg_end;
|
||||
return gds__nofilter;
|
||||
return gds_nofilter;
|
||||
}
|
||||
|
||||
/* Allocate a filter control block and open blob */
|
||||
|
239
src/jrd/blp.h
239
src/jrd/blp.h
@ -16,124 +16,125 @@
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
NULL, NULL,
|
||||
"assignment", two,
|
||||
"begin", begin,
|
||||
"declare", declare,
|
||||
"message", message,
|
||||
"erase", byte,
|
||||
"fetch", two, "for", two, "if", three, "loop", one, "modify", byte_byte_verb, /* 10 */
|
||||
"handler", one,
|
||||
"receive", byte_verb,
|
||||
"select", begin,
|
||||
"send", byte_verb,
|
||||
"store", two,
|
||||
NULL, NULL, "label", byte_verb, "leave", byte, "store2", three, "post", one, /* 20 */
|
||||
"literal", literal,
|
||||
"dbkey", byte,
|
||||
"field", field,
|
||||
"fid", parm,
|
||||
"parameter", parm,
|
||||
"variable", variable,
|
||||
"average", two, "count", one, "maximum", two, "minimum", two, /* 30 */
|
||||
"total", two,
|
||||
"count2", two,
|
||||
NULL, NULL,
|
||||
"add", two,
|
||||
"subtract", two,
|
||||
"multiply", two,
|
||||
"divide", two, "negate", one, "concatenate", two, "substring", three, /* 40 */
|
||||
"parameter2", parm2,
|
||||
"from", two,
|
||||
"via", three,
|
||||
"user_name", zero,
|
||||
"null", zero, NULL, NULL, "eql", two, "neq", two, "gtr", two, "geq", two, /* 50 */
|
||||
"lss", two,
|
||||
"leq", two,
|
||||
"containing", two,
|
||||
"matching", two,
|
||||
"starting", two,
|
||||
"between", three, "or", two, "and", two, "not", one, "any", one, /* 60 */
|
||||
"missing", one,
|
||||
"unique", one,
|
||||
"like", two,
|
||||
NULL, NULL,
|
||||
"stream", begin,
|
||||
"set_index", byte_verb,
|
||||
"rse", rse, "first", one, "project", byte_args, "sort", byte_args, /* 70 */
|
||||
"boolean", one,
|
||||
"ascending", one,
|
||||
"descending", one,
|
||||
"relation", relation,
|
||||
"rid", rid,
|
||||
"union", union_ops,
|
||||
"map", map, "group_by", byte_args, "aggregate", aggregate, "join_type", join, /* 80 */
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
"agg_count", zero,
|
||||
"agg_max", one,
|
||||
"agg_min", one,
|
||||
"agg_total", one,
|
||||
"agg_average", one, "parameter3", parm3, NULL, NULL, NULL, NULL, /* 90 */
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
"agg_count2", one,
|
||||
"agg_count_distinct", one,
|
||||
"agg_total_distinct", one,
|
||||
"agg_average_distinct", one,
|
||||
NULL, NULL, NULL, NULL, NULL, NULL, "function", function, /* 100 */
|
||||
"gen_id", gen_id,
|
||||
"prot_mask", two,
|
||||
"upcase", one,
|
||||
"lock_state", one,
|
||||
"value_if", three,
|
||||
"matching2", three,
|
||||
"index", indx, "ansi_like", three, "bookmark", one, "crack", byte, /* 110 */
|
||||
"force_crack", byte,
|
||||
"seek", seek,
|
||||
"find", find,
|
||||
"lock_relation", lock_relation,
|
||||
"lock_record", byte_verb,
|
||||
"set_bookmark", byte_verb,
|
||||
"get_bookmark", byte, NULL, NULL, "rs_stream", rse, "exec_proc", exec_proc, /* 120 */
|
||||
"begin_range", one,
|
||||
"end_range", two,
|
||||
"delete_range", one,
|
||||
"procedure", procedure,
|
||||
"pid", pid,
|
||||
NULL, NULL,
|
||||
"singular", one, "abort", set_error, "block", begin, "error_handler", error_handler, /* 130 */
|
||||
"cast", cast,
|
||||
"release_lock", one,
|
||||
"release_locks", zero,
|
||||
"start_savepoint", zero,
|
||||
"end_savepoint", zero,
|
||||
"find_dbkey", byte_verb,
|
||||
"range_relation", range_relation,
|
||||
"delete_ranges", zero, "plan", one, "merge", byte_args, /* 140 */
|
||||
"join", byte_args,
|
||||
"sequential", zero,
|
||||
"navigational", byte_literal,
|
||||
"indices", indices,
|
||||
"retrieve", two,
|
||||
"relation2", relation2,
|
||||
"rid2", rid2,
|
||||
"reset_stream", byte_byte, "release_bookmark", one, "set_generator", gen_id, /* 150 */
|
||||
"ansi_any", one,
|
||||
"exists", one,
|
||||
"cardinality", byte,
|
||||
"record_version", byte,
|
||||
"stall", zero,
|
||||
"seek_no_warn", seek,
|
||||
"find_dbkey_version", byte_verb_verb, "ansi_all", one,
|
||||
{NULL, NULL},
|
||||
{"assignment", two},
|
||||
{"begin", begin},
|
||||
{"declare", declare},
|
||||
{"message", message},
|
||||
{"erase", byte},
|
||||
{"fetch", two}, {"for", two}, {"if", three}, {"loop", one}, {"modify", byte_byte_verb}, /* 10 */
|
||||
{"handler", one},
|
||||
{"receive", byte_verb},
|
||||
{"select", begin},
|
||||
{"send", byte_verb},
|
||||
{"store", two},
|
||||
{NULL, NULL}, {"label", byte_verb}, {"leave", byte}, {"store2", three}, {"post", one}, /* 20 */
|
||||
{"literal", literal},
|
||||
{"dbkey", byte},
|
||||
{"field", field},
|
||||
{"fid", parm},
|
||||
{"parameter", parm},
|
||||
{"variable", variable},
|
||||
{"average", two}, {"count", one}, {"maximum", two}, {"minimum", two}, /* 30 */
|
||||
{"total", two},
|
||||
{"count2", two},
|
||||
{NULL, NULL},
|
||||
{"add", two},
|
||||
{"subtract", two},
|
||||
{"multiply", two},
|
||||
{"divide", two}, {"negate", one}, {"concatenate", two}, {"substring", three}, /* 40 */
|
||||
{"parameter2", parm2},
|
||||
{"from", two},
|
||||
{"via", three},
|
||||
{"user_name", zero},
|
||||
{"null", zero}, {NULL, NULL}, {"eql", two}, {"neq", two}, {"gtr", two}, {"geq", two}, /* 50 */
|
||||
{"lss", two},
|
||||
{"leq", two},
|
||||
{"containing", two},
|
||||
{"matching", two},
|
||||
{"starting", two},
|
||||
{"between", three}, {"or", two}, {"and", two}, {"not", one}, {"any", one}, /* 60 */
|
||||
{"missing", one},
|
||||
{"unique", one},
|
||||
{"like", two},
|
||||
{NULL, NULL},
|
||||
{"stream", begin},
|
||||
{"set_index", byte_verb},
|
||||
{"rse", rse}, {"first", one}, {"project", byte_args}, {"sort", byte_args}, /* 70 */
|
||||
{"boolean", one},
|
||||
{"ascending", one},
|
||||
{"descending", one},
|
||||
{"relation", relation},
|
||||
{"rid", rid},
|
||||
{"union", union_ops},
|
||||
{"map", map}, {"group_by", byte_args}, {"aggregate", aggregate}, {"join_type", join}, /* 80 */
|
||||
{NULL, NULL},
|
||||
{NULL, NULL},
|
||||
{"agg_count", zero},
|
||||
{"agg_max", one},
|
||||
{"agg_min", one},
|
||||
{"agg_total", one},
|
||||
{"agg_average", one}, {"parameter3", parm3}, {NULL, NULL}, {NULL, NULL}, /* 90 */
|
||||
{NULL, NULL},
|
||||
{NULL, NULL},
|
||||
{"agg_count2", one},
|
||||
{"agg_count_distinct", one},
|
||||
{"agg_total_distinct", one},
|
||||
{"agg_average_distinct", one},
|
||||
{NULL, NULL}, {NULL, NULL}, {NULL, NULL}, {"function", function}, /* 100 */
|
||||
{"gen_id", gen_id},
|
||||
{"prot_mask", two},
|
||||
{"upcase", one},
|
||||
{"lock_state", one},
|
||||
{"value_if", three},
|
||||
{"matching2", three},
|
||||
{"index", indx}, {"ansi_like", three}, {"bookmark", one}, {"crack", byte}, /* 110 */
|
||||
{"force_crack", byte},
|
||||
{"seek", seek},
|
||||
{"find", find},
|
||||
{"lock_relation", lock_relation},
|
||||
{"lock_record", byte_verb},
|
||||
{"set_bookmark", byte_verb},
|
||||
{"get_bookmark", byte}, {NULL, NULL}, {"rs_stream", rse}, {"exec_proc", exec_proc}, /* 120 */
|
||||
{"begin_range", one},
|
||||
{"end_range", two},
|
||||
{"delete_range", one},
|
||||
{"procedure", procedure},
|
||||
{"pid", pid},
|
||||
{NULL, NULL},
|
||||
{"singular", one}, {"abort", set_error}, {"block", begin}, {"error_handler", error_handler}, /* 130 */
|
||||
{"cast", cast},
|
||||
{"release_lock", one},
|
||||
{"release_locks", zero},
|
||||
{"start_savepoint", zero},
|
||||
{"end_savepoint", zero},
|
||||
{"find_dbkey", byte_verb},
|
||||
{"range_relation", range_relation},
|
||||
{"delete_ranges", zero}, {"plan", one}, {"merge", byte_args}, /* 140 */
|
||||
{"join", byte_args},
|
||||
{"sequential", zero},
|
||||
{"navigational", byte_literal},
|
||||
{"indices", indices},
|
||||
{"retrieve", two},
|
||||
{"relation2", relation2},
|
||||
{"rid2", rid2},
|
||||
{"reset_stream", byte_byte}, {"release_bookmark", one}, {"set_generator", gen_id}, /* 150 */
|
||||
{"ansi_any", one},
|
||||
{"exists", one},
|
||||
{"cardinality", byte},
|
||||
{"record_version", byte},
|
||||
{"stall", zero},
|
||||
{"seek_no_warn", seek},
|
||||
{"find_dbkey_version", byte_verb_verb}, {"ansi_all", one},
|
||||
/* New BLR in 6.0 */
|
||||
"extract", extract, "current_date", zero, /* 160 */
|
||||
"current_timestamp", zero, "current_time", zero,
|
||||
{"extract", extract}, {"current_date", zero}, /* 160 */
|
||||
{"current_timestamp", zero}, {"current_time", zero},
|
||||
/* These verbs were added in 6.0, primarily to support 64-bit integers */
|
||||
"add2", two,
|
||||
"subtract2", two,
|
||||
"multiply2", two,
|
||||
"divide2", two,
|
||||
"agg_total2", one,
|
||||
"agg_total_distinct2", one, "agg_average2", one, "agg_average_distinct2", one, /* 170 */
|
||||
"average2", two, "gen_id2", gen_id, "set_generator2", gen_id,
|
||||
{"add2", two},
|
||||
{"subtract2", two},
|
||||
{"multiply2", two},
|
||||
{"divide2", two},
|
||||
{"agg_total2", one},
|
||||
{"agg_total_distinct2", one}, {"agg_average2", one}, {"agg_average_distinct2", one}, /* 170 */
|
||||
{"average2", two}, {"gen_id2", gen_id},
|
||||
{"set_generator2", gen_id},
|
||||
|
@ -21,8 +21,9 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/common.h"
|
||||
|
||||
#define NODE(type, name, keyword) type,
|
||||
@ -41,31 +42,18 @@ enum {
|
||||
sub_type == Expected type of parameter Nodes
|
||||
*/
|
||||
|
||||
#if defined(__STDC__)
|
||||
|
||||
#define STRINGIZER(s) #s
|
||||
|
||||
#define PAIR(internal, blr, length, count, type, sub_type) \
|
||||
{ blr, #internal, 0, #length, #count, \
|
||||
#type, #sub_type },
|
||||
#type, #sub_type }
|
||||
|
||||
#define PAIR2(internal, blr, length, count, type, sub_type) \
|
||||
{ blr, #internal, STRINGIZER(internal##2), #length, #count, \
|
||||
#type, #sub_type },
|
||||
#else
|
||||
#define PAIR(internal, blr, length, count, type, sub_type) \
|
||||
{ blr, "internal", 0, "length", "count",\
|
||||
"type", "sub_type" },
|
||||
#type, #sub_type }
|
||||
|
||||
#define PAIR2(internal, blr, length, count, type, sub_type) \
|
||||
{ blr, "internal", "internal2", "length", "count",\
|
||||
"type", "sub_type" },
|
||||
#endif
|
||||
|
||||
#ifdef __STDC__
|
||||
static void print(CONST SCHAR **, int, CONST SCHAR *);
|
||||
#else
|
||||
static void print();
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
UCHAR blr;
|
||||
@ -78,253 +66,163 @@ typedef struct {
|
||||
} VERB;
|
||||
|
||||
static CONST VERB verbs[] = {
|
||||
PAIR(nod_assignment, blr_assignment, e_asgn_length, 2, STATEMENT, VALUE)
|
||||
PAIR(nod_erase, blr_erase, e_erase_length, 0, STATEMENT, OTHER)
|
||||
PAIR(nod_dcl_variable, blr_dcl_variable, e_dcl_length, 0, STATEMENT,
|
||||
OTHER) PAIR(nod_for, blr_fetch, e_for_length, 3, STATEMENT,
|
||||
STATEMENT) PAIR(nod_for, blr_for, e_for_length, 3,
|
||||
STATEMENT,
|
||||
STATEMENT) PAIR(nod_handler,
|
||||
blr_handler, 1, 1,
|
||||
STATEMENT,
|
||||
OTHER) PAIR(nod_if,
|
||||
blr_if,
|
||||
e_if_length,
|
||||
3,
|
||||
STATEMENT,
|
||||
STATEMENT)
|
||||
PAIR(nod_label, blr_label, e_lbl_length, 1, STATEMENT,
|
||||
STATEMENT) PAIR(nod_leave, blr_leave, 1, 0, STATEMENT,
|
||||
OTHER) PAIR(nod_list, blr_begin, 0, 0, STATEMENT,
|
||||
STATEMENT) PAIR(nod_loop, blr_loop,
|
||||
1, 1, STATEMENT,
|
||||
STATEMENT)
|
||||
PAIR(nod_message, blr_message, 0, 0, STATEMENT,
|
||||
OTHER) PAIR(nod_modify, blr_modify, 0, 0, STATEMENT,
|
||||
STATEMENT) PAIR(nod_receive, blr_receive,
|
||||
e_send_length, 1, STATEMENT,
|
||||
STATEMENT) PAIR(nod_select,
|
||||
blr_select, 0, 0,
|
||||
STATEMENT,
|
||||
STATEMENT)
|
||||
PAIR(nod_send, blr_send, e_send_length, 1, STATEMENT,
|
||||
STATEMENT) PAIR(nod_store, blr_store, e_sto_length,
|
||||
e_sto_length - 1, STATEMENT,
|
||||
STATEMENT) PAIR(nod_store, blr_store2,
|
||||
e_sto_length, e_sto_length - 1,
|
||||
STATEMENT,
|
||||
STATEMENT) PAIR(nod_post,
|
||||
blr_post, 1, 1,
|
||||
STATEMENT,
|
||||
VALUE)
|
||||
PAIR2(nod_add, blr_add, 2, 2, VALUE, VALUE) PAIR(nod_agg_count,
|
||||
blr_agg_count, 1, 0,
|
||||
VALUE,
|
||||
VALUE)
|
||||
PAIR(nod_agg_count2, blr_agg_count2, 1, 1, VALUE,
|
||||
VALUE) PAIR(nod_agg_count_distinct, blr_agg_count_distinct, 2, 1,
|
||||
VALUE, VALUE) PAIR(nod_agg_max, blr_agg_max, 1, 1,
|
||||
VALUE, VALUE) PAIR(nod_agg_min,
|
||||
blr_agg_min, 1,
|
||||
1, VALUE,
|
||||
VALUE)
|
||||
PAIR2(nod_agg_total, blr_agg_total, 1, 1, VALUE,
|
||||
VALUE) PAIR2(nod_agg_total_distinct, blr_agg_total_distinct, 2,
|
||||
1, VALUE, VALUE) PAIR2(nod_agg_average,
|
||||
blr_agg_average, 1, 1,
|
||||
VALUE,
|
||||
VALUE)
|
||||
PAIR(nod_assignment, blr_assignment, e_asgn_length, 2, STATEMENT, VALUE),
|
||||
PAIR(nod_erase, blr_erase, e_erase_length, 0, STATEMENT, OTHER),
|
||||
PAIR(nod_dcl_variable, blr_dcl_variable, e_dcl_length, 0, STATEMENT, OTHER),
|
||||
PAIR(nod_for, blr_fetch, e_for_length, 3, STATEMENT, STATEMENT),
|
||||
PAIR(nod_for, blr_for, e_for_length, 3, STATEMENT, STATEMENT),
|
||||
PAIR(nod_handler, blr_handler, 1, 1, STATEMENT, OTHER),
|
||||
PAIR(nod_if, blr_if, e_if_length, 3, STATEMENT, STATEMENT),
|
||||
PAIR(nod_label, blr_label, e_lbl_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_leave, blr_leave, 1, 0, STATEMENT, OTHER),
|
||||
PAIR(nod_list, blr_begin, 0, 0, STATEMENT, STATEMENT),
|
||||
PAIR(nod_loop, blr_loop, 1, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_message, blr_message, 0, 0, STATEMENT, OTHER),
|
||||
PAIR(nod_modify, blr_modify, 0, 0, STATEMENT, STATEMENT),
|
||||
PAIR(nod_receive, blr_receive, e_send_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_select, blr_select, 0, 0, STATEMENT, STATEMENT),
|
||||
PAIR(nod_send, blr_send, e_send_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_store, blr_store, e_sto_length, e_sto_length - 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_store, blr_store2, e_sto_length, e_sto_length - 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_post, blr_post, 1, 1, STATEMENT, VALUE),
|
||||
PAIR2(nod_add, blr_add, 2, 2, VALUE, VALUE),
|
||||
PAIR(nod_agg_count, blr_agg_count, 1, 0, VALUE, VALUE),
|
||||
PAIR(nod_agg_count2, blr_agg_count2, 1, 1, VALUE, VALUE),
|
||||
PAIR(nod_agg_count_distinct, blr_agg_count_distinct, 2, 1, VALUE, VALUE),
|
||||
PAIR(nod_agg_max, blr_agg_max, 1, 1, VALUE, VALUE),
|
||||
PAIR(nod_agg_min, blr_agg_min, 1, 1, VALUE, VALUE),
|
||||
PAIR2(nod_agg_total, blr_agg_total, 1, 1, VALUE, VALUE),
|
||||
PAIR2(nod_agg_total_distinct, blr_agg_total_distinct, 2, 1, VALUE, VALUE),
|
||||
PAIR2(nod_agg_average, blr_agg_average, 1, 1, VALUE, VALUE),
|
||||
PAIR2(nod_agg_average_distinct, blr_agg_average_distinct, 2, 1, VALUE,
|
||||
VALUE) PAIR(nod_argument, blr_parameter, e_arg_length, 0, VALUE,
|
||||
VALUE) PAIR(nod_argument, blr_parameter2,
|
||||
e_arg_length, 0, VALUE,
|
||||
VALUE) PAIR(nod_argument,
|
||||
blr_parameter3,
|
||||
e_arg_length, 0, VALUE,
|
||||
VALUE) PAIR(nod_variable,
|
||||
blr_variable,
|
||||
e_var_length, 0,
|
||||
VALUE,
|
||||
VALUE)
|
||||
PAIR(nod_user_name, blr_user_name, 1, 0, VALUE, VALUE)
|
||||
PAIR2(nod_average, blr_average, e_stat_length, 2, VALUE,
|
||||
VALUE) PAIR(nod_concatenate, blr_concatenate, 2, 2, VALUE,
|
||||
VALUE) PAIR(nod_count, blr_count, e_stat_length, 1,
|
||||
VALUE, VALUE)
|
||||
VALUE),
|
||||
PAIR(nod_argument, blr_parameter, e_arg_length, 0, VALUE, VALUE),
|
||||
PAIR(nod_argument, blr_parameter2, e_arg_length, 0, VALUE, VALUE),
|
||||
PAIR(nod_argument, blr_parameter3, e_arg_length, 0, VALUE, VALUE),
|
||||
PAIR(nod_variable, blr_variable, e_var_length, 0, VALUE, VALUE),
|
||||
PAIR(nod_user_name, blr_user_name, 1, 0, VALUE, VALUE),
|
||||
PAIR2(nod_average, blr_average, e_stat_length, 2, VALUE, VALUE),
|
||||
PAIR(nod_concatenate, blr_concatenate, 2, 2, VALUE, VALUE),
|
||||
PAIR(nod_count, blr_count, e_stat_length, 1, VALUE, VALUE),
|
||||
/* count2
|
||||
PAIR (nod_count2, blr_count2, e_stat_length, 2, VALUE, VALUE)
|
||||
, PAIR (nod_count2, blr_count2, e_stat_length, 2, VALUE, VALUE)
|
||||
*/
|
||||
PAIR(nod_dbkey, blr_dbkey, 1, 0, VALUE, VALUE)
|
||||
PAIR2(nod_divide, blr_divide, 2, 2, VALUE, VALUE)
|
||||
PAIR(nod_field, blr_fid, 0, 0, VALUE, VALUE)
|
||||
PAIR(nod_field, blr_field, 0, 0, VALUE, VALUE)
|
||||
PAIR(nod_from, blr_via, e_stat_length, 3, VALUE, OTHER)
|
||||
PAIR(nod_from, blr_from, e_stat_length, 2, VALUE, OTHER)
|
||||
PAIR(nod_function, blr_function, 0, 0, VALUE, VALUE)
|
||||
PAIR(nod_literal, blr_literal, 0, 0, VALUE, OTHER)
|
||||
PAIR(nod_scalar, blr_index, 2, 2, VALUE, VALUE)
|
||||
PAIR(nod_max, blr_maximum, e_stat_length, 2, VALUE, VALUE)
|
||||
PAIR(nod_min, blr_minimum, e_stat_length, 2, VALUE, VALUE)
|
||||
PAIR(nod_null, blr_null, 1, 0, VALUE, VALUE)
|
||||
PAIR2(nod_multiply, blr_multiply, 2, 2, VALUE, VALUE)
|
||||
PAIR(nod_negate, blr_negate, 1, 1, VALUE, VALUE)
|
||||
PAIR2(nod_gen_id, blr_gen_id, e_gen_length, 1, VALUE, VALUE)
|
||||
PAIR(nod_prot_mask, blr_prot_mask, e_pro_length, 2, VALUE, VALUE)
|
||||
PAIR(nod_upcase, blr_upcase, 1, 1, VALUE, VALUE)
|
||||
PAIR(nod_lock_state, blr_lock_state, 1, 1, VALUE, VALUE)
|
||||
PAIR(nod_substr, blr_substring, 3, 3, VALUE, VALUE)
|
||||
PAIR2(nod_subtract, blr_subtract, 2, 2, VALUE, VALUE)
|
||||
PAIR2(nod_total, blr_total, e_stat_length, 2, VALUE, VALUE)
|
||||
PAIR(nod_value_if, blr_value_if, 3, 3, VALUE, OTHER)
|
||||
PAIR(nod_eql, blr_eql, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_neq, blr_neq, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_geq, blr_geq, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_gtr, blr_gtr, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_lss, blr_lss, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_leq, blr_leq, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_matches, blr_matching, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_sleuth, blr_matching2, 3, 3, BOOL, VALUE)
|
||||
PAIR(nod_like, blr_like, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_like, blr_ansi_like, 3, 3, BOOL, VALUE)
|
||||
PAIR(nod_contains, blr_containing, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_missing, blr_missing, 1, 1, BOOL, VALUE)
|
||||
PAIR(nod_between, blr_between, 3, 3, BOOL, VALUE)
|
||||
PAIR(nod_starts, blr_starting, 2, 2, BOOL, VALUE)
|
||||
PAIR(nod_unique, blr_unique, e_any_length, 1, BOOL, OTHER)
|
||||
PAIR(nod_any, blr_any, e_any_length, 1, BOOL, TYPE_RSE)
|
||||
PAIR(nod_and, blr_and, 2, 2, BOOL, BOOL)
|
||||
PAIR(nod_or, blr_or, 2, 2, BOOL, BOOL)
|
||||
PAIR(nod_not, blr_not, 1, 1, BOOL, BOOL)
|
||||
PAIR(nod_rse, blr_rse, 0, 0, TYPE_RSE, OTHER)
|
||||
|
||||
PAIR(nod_dbkey, blr_dbkey, 1, 0, VALUE, VALUE),
|
||||
PAIR2(nod_divide, blr_divide, 2, 2, VALUE, VALUE),
|
||||
PAIR(nod_field, blr_fid, 0, 0, VALUE, VALUE),
|
||||
PAIR(nod_field, blr_field, 0, 0, VALUE, VALUE),
|
||||
PAIR(nod_from, blr_via, e_stat_length, 3, VALUE, OTHER),
|
||||
PAIR(nod_from, blr_from, e_stat_length, 2, VALUE, OTHER),
|
||||
PAIR(nod_function, blr_function, 0, 0, VALUE, VALUE),
|
||||
PAIR(nod_literal, blr_literal, 0, 0, VALUE, OTHER),
|
||||
PAIR(nod_scalar, blr_index, 2, 2, VALUE, VALUE),
|
||||
PAIR(nod_max, blr_maximum, e_stat_length, 2, VALUE, VALUE),
|
||||
PAIR(nod_min, blr_minimum, e_stat_length, 2, VALUE, VALUE),
|
||||
PAIR(nod_null, blr_null, 1, 0, VALUE, VALUE),
|
||||
PAIR2(nod_multiply, blr_multiply, 2, 2, VALUE, VALUE),
|
||||
PAIR(nod_negate, blr_negate, 1, 1, VALUE, VALUE),
|
||||
PAIR2(nod_gen_id, blr_gen_id, e_gen_length, 1, VALUE, VALUE),
|
||||
PAIR(nod_prot_mask, blr_prot_mask, e_pro_length, 2, VALUE, VALUE),
|
||||
PAIR(nod_upcase, blr_upcase, 1, 1, VALUE, VALUE),
|
||||
PAIR(nod_lock_state, blr_lock_state, 1, 1, VALUE, VALUE),
|
||||
PAIR(nod_substr, blr_substring, 3, 3, VALUE, VALUE),
|
||||
PAIR2(nod_subtract, blr_subtract, 2, 2, VALUE, VALUE),
|
||||
PAIR2(nod_total, blr_total, e_stat_length, 2, VALUE, VALUE),
|
||||
PAIR(nod_value_if, blr_value_if, 3, 3, VALUE, OTHER),
|
||||
PAIR(nod_eql, blr_eql, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_neq, blr_neq, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_geq, blr_geq, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_gtr, blr_gtr, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_lss, blr_lss, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_leq, blr_leq, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_matches, blr_matching, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_sleuth, blr_matching2, 3, 3, BOOL, VALUE),
|
||||
PAIR(nod_like, blr_like, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_like, blr_ansi_like, 3, 3, BOOL, VALUE),
|
||||
PAIR(nod_contains, blr_containing, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_missing, blr_missing, 1, 1, BOOL, VALUE),
|
||||
PAIR(nod_between, blr_between, 3, 3, BOOL, VALUE),
|
||||
PAIR(nod_starts, blr_starting, 2, 2, BOOL, VALUE),
|
||||
PAIR(nod_unique, blr_unique, e_any_length, 1, BOOL, OTHER),
|
||||
PAIR(nod_any, blr_any, e_any_length, 1, BOOL, TYPE_RSE),
|
||||
PAIR(nod_and, blr_and, 2, 2, BOOL, BOOL),
|
||||
PAIR(nod_or, blr_or, 2, 2, BOOL, BOOL),
|
||||
PAIR(nod_not, blr_not, 1, 1, BOOL, BOOL),
|
||||
PAIR(nod_rse, blr_rse, 0, 0, TYPE_RSE, OTHER),
|
||||
/* nodes for ODAPI support */
|
||||
PAIR(nod_stream, blr_stream, 0, 0, STATEMENT, STATEMENT)
|
||||
PAIR(nod_set_index, blr_set_index, e_index_length, 1, STATEMENT,
|
||||
STATEMENT) PAIR(nod_seek, blr_seek, e_seek_length, 2, STATEMENT,
|
||||
VALUE) PAIR(nod_seek_no_warn, blr_seek_no_warn,
|
||||
e_seek_length, 2, STATEMENT,
|
||||
VALUE) PAIR(nod_find, blr_find,
|
||||
e_find_length, 3,
|
||||
STATEMENT,
|
||||
STATEMENT)
|
||||
PAIR(nod_get_bookmark, blr_get_bookmark, e_getmark_length, 0, VALUE,
|
||||
VALUE) PAIR(nod_set_bookmark, blr_set_bookmark, e_setmark_length,
|
||||
1, STATEMENT, STATEMENT) PAIR(nod_bookmark,
|
||||
blr_bookmark,
|
||||
e_bookmark_length, 1,
|
||||
VALUE,
|
||||
VALUE)
|
||||
PAIR(nod_lock_relation, blr_lock_relation, e_lockrel_length, 2, VALUE,
|
||||
VALUE) PAIR(nod_lock_record, blr_lock_record, e_lockrec_length,
|
||||
1, VALUE, VALUE) PAIR(nod_release_lock,
|
||||
blr_release_lock,
|
||||
e_rellock_length, 1, STATEMENT,
|
||||
STATEMENT)
|
||||
PAIR(nod_release_locks, blr_release_locks, 0, 0, STATEMENT,
|
||||
STATEMENT) PAIR(nod_begin_range, blr_begin_range,
|
||||
e_brange_length, 1, VALUE,
|
||||
OTHER) PAIR(nod_end_range, blr_end_range,
|
||||
e_erange_length, 1, STATEMENT,
|
||||
STATEMENT) PAIR(nod_delete_range,
|
||||
blr_delete_range,
|
||||
e_drange_length, 1,
|
||||
STATEMENT, STATEMENT)
|
||||
PAIR(nod_map, blr_map, 0, 0, OTHER, OTHER) PAIR(nod_union, blr_union,
|
||||
0, 0, RELATION,
|
||||
OTHER)
|
||||
PAIR(nod_aggregate, blr_aggregate, e_agg_length, 0, RELATION,
|
||||
OTHER) PAIR(nod_relation, blr_relation, 0, 0, RELATION,
|
||||
OTHER) PAIR(nod_relation, blr_rid, 0, 0, RELATION,
|
||||
OTHER) PAIR(nod_rse, blr_rs_stream, 0, 0,
|
||||
RELATION,
|
||||
OTHER) PAIR(nod_exec_proc,
|
||||
blr_exec_proc,
|
||||
e_esp_length, 4,
|
||||
STATEMENT,
|
||||
OTHER)
|
||||
PAIR(nod_procedure, blr_procedure, e_prc_length, 2, RELATION,
|
||||
OTHER) PAIR(nod_procedure, blr_pid, e_prc_length, 2, RELATION,
|
||||
OTHER) PAIR(nod_exec_proc, blr_exec_pid,
|
||||
e_esp_length, 4, STATEMENT,
|
||||
OTHER) PAIR(nod_block, blr_block,
|
||||
e_blk_length, e_blk_length,
|
||||
STATEMENT,
|
||||
STATEMENT)
|
||||
PAIR(nod_error_handler, blr_error_handler, e_err_length, 1, STATEMENT,
|
||||
OTHER) PAIR(nod_abort, blr_abort, 1, 0, STATEMENT,
|
||||
OTHER) PAIR(nod_cast, blr_cast, e_cast_length, 1,
|
||||
VALUE, VALUE) PAIR(nod_rse, blr_singular,
|
||||
0, 0, TYPE_RSE,
|
||||
OTHER)
|
||||
PAIR(nod_start_savepoint, blr_start_savepoint, 1, 0, STATEMENT,
|
||||
OTHER) PAIR(nod_end_savepoint, blr_end_savepoint, 1, 0,
|
||||
STATEMENT, OTHER)
|
||||
|
||||
PAIR(nod_stream, blr_stream, 0, 0, STATEMENT, STATEMENT),
|
||||
PAIR(nod_set_index, blr_set_index, e_index_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_seek, blr_seek, e_seek_length, 2, STATEMENT, VALUE),
|
||||
PAIR(nod_seek_no_warn, blr_seek_no_warn, e_seek_length, 2, STATEMENT, VALUE),
|
||||
PAIR(nod_find, blr_find, e_find_length, 3, STATEMENT, STATEMENT),
|
||||
PAIR(nod_get_bookmark, blr_get_bookmark, e_getmark_length, 0, VALUE, VALUE),
|
||||
PAIR(nod_set_bookmark, blr_set_bookmark, e_setmark_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_bookmark, blr_bookmark, e_bookmark_length, 1, VALUE, VALUE),
|
||||
PAIR(nod_lock_relation, blr_lock_relation, e_lockrel_length, 2, VALUE, VALUE),
|
||||
PAIR(nod_lock_record, blr_lock_record, e_lockrec_length, 1, VALUE, VALUE),
|
||||
PAIR(nod_release_lock, blr_release_lock, e_rellock_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_release_locks, blr_release_locks, 0, 0, STATEMENT, STATEMENT),
|
||||
PAIR(nod_begin_range, blr_begin_range, e_brange_length, 1, VALUE, OTHER),
|
||||
PAIR(nod_end_range, blr_end_range, e_erange_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_delete_range, blr_delete_range, e_drange_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_map, blr_map, 0, 0, OTHER, OTHER),
|
||||
PAIR(nod_union, blr_union, 0, 0, RELATION, OTHER),
|
||||
PAIR(nod_aggregate, blr_aggregate, e_agg_length, 0, RELATION, OTHER),
|
||||
PAIR(nod_relation, blr_relation, 0, 0, RELATION, OTHER),
|
||||
PAIR(nod_relation, blr_rid, 0, 0, RELATION, OTHER),
|
||||
PAIR(nod_rse, blr_rs_stream, 0, 0, RELATION, OTHER),
|
||||
PAIR(nod_exec_proc, blr_exec_proc, e_esp_length, 4, STATEMENT, OTHER),
|
||||
PAIR(nod_procedure, blr_procedure, e_prc_length, 2, RELATION, OTHER),
|
||||
PAIR(nod_procedure, blr_pid, e_prc_length, 2, RELATION, OTHER),
|
||||
PAIR(nod_exec_proc, blr_exec_pid, e_esp_length, 4, STATEMENT, OTHER),
|
||||
PAIR(nod_block, blr_block, e_blk_length, e_blk_length, STATEMENT, STATEMENT),
|
||||
PAIR(nod_error_handler, blr_error_handler, e_err_length, 1, STATEMENT, OTHER),
|
||||
PAIR(nod_abort, blr_abort, 1, 0, STATEMENT, OTHER),
|
||||
PAIR(nod_cast, blr_cast, e_cast_length, 1, VALUE, VALUE),
|
||||
PAIR(nod_rse, blr_singular, 0, 0, TYPE_RSE, OTHER),
|
||||
PAIR(nod_start_savepoint, blr_start_savepoint, 1, 0, STATEMENT, OTHER),
|
||||
PAIR(nod_end_savepoint, blr_end_savepoint, 1, 0, STATEMENT, OTHER),
|
||||
/* more nodes for ODAPI support */
|
||||
PAIR(nod_find_dbkey, blr_find_dbkey, e_find_dbkey_length, 1,
|
||||
STATEMENT, STATEMENT) PAIR(nod_find_dbkey_version,
|
||||
blr_find_dbkey_version,
|
||||
e_find_dbkey_length, 2, STATEMENT,
|
||||
STATEMENT) PAIR(nod_range_relation,
|
||||
blr_range_relation,
|
||||
e_range_relation_length,
|
||||
1, STATEMENT,
|
||||
STATEMENT)
|
||||
PAIR(nod_delete_ranges, blr_delete_ranges, 0, 0, STATEMENT, STATEMENT)
|
||||
|
||||
PAIR(nod_find_dbkey, blr_find_dbkey, e_find_dbkey_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_find_dbkey_version, blr_find_dbkey_version, e_find_dbkey_length, 2, STATEMENT, STATEMENT),
|
||||
PAIR(nod_range_relation, blr_range_relation, e_range_relation_length, 1, STATEMENT, STATEMENT),
|
||||
PAIR(nod_delete_ranges, blr_delete_ranges, 0, 0, STATEMENT, STATEMENT),
|
||||
/* nodes for set plan */
|
||||
PAIR(nod_plan, blr_plan, 1, 1, VALUE, VALUE)
|
||||
PAIR(nod_merge, blr_merge, 0, 0, VALUE, VALUE)
|
||||
PAIR(nod_join, blr_join, 0, 0, VALUE, VALUE)
|
||||
PAIR(nod_sequential, blr_sequential, 0, 0, ACCESS_TYPE, OTHER)
|
||||
PAIR(nod_navigational, blr_navigational, 1, 1, ACCESS_TYPE, VALUE)
|
||||
PAIR(nod_indices, blr_indices, 1, 0, ACCESS_TYPE, VALUE)
|
||||
PAIR(nod_retrieve, blr_retrieve, 2, 0, ACCESS_TYPE, VALUE)
|
||||
PAIR(nod_relation, blr_relation2, 0, 0, RELATION, OTHER)
|
||||
PAIR(nod_relation, blr_rid2, 0, 0, RELATION, OTHER)
|
||||
|
||||
PAIR(nod_plan, blr_plan, 1, 1, VALUE, VALUE),
|
||||
PAIR(nod_merge, blr_merge, 0, 0, VALUE, VALUE),
|
||||
PAIR(nod_join, blr_join, 0, 0, VALUE, VALUE),
|
||||
PAIR(nod_sequential, blr_sequential, 0, 0, ACCESS_TYPE, OTHER),
|
||||
PAIR(nod_navigational, blr_navigational, 1, 1, ACCESS_TYPE, VALUE),
|
||||
PAIR(nod_indices, blr_indices, 1, 0, ACCESS_TYPE, VALUE),
|
||||
PAIR(nod_retrieve, blr_retrieve, 2, 0, ACCESS_TYPE, VALUE),
|
||||
PAIR(nod_relation, blr_relation2, 0, 0, RELATION, OTHER),
|
||||
PAIR(nod_relation, blr_rid2, 0, 0, RELATION, OTHER),
|
||||
/* yet more nodes for ODAPI */
|
||||
PAIR(nod_crack, blr_crack, 2, 0, VALUE, OTHER)
|
||||
PAIR(nod_force_crack, blr_force_crack, 2, 0, STATEMENT, OTHER)
|
||||
PAIR(nod_reset_stream, blr_reset_stream, e_reset_length, 0, STATEMENT,
|
||||
OTHER) PAIR(nod_release_bookmark, blr_release_bookmark,
|
||||
e_relmark_length, 1, STATEMENT, OTHER)
|
||||
PAIR2(nod_set_generator, blr_set_generator, e_gen_length, 1,
|
||||
STATEMENT, VALUE) PAIR(nod_ansi_any, blr_ansi_any,
|
||||
e_any_length, 1, BOOL,
|
||||
TYPE_RSE) PAIR(nod_exists, blr_exists,
|
||||
e_any_length, 1, BOOL,
|
||||
TYPE_RSE)
|
||||
PAIR(nod_cardinality, blr_cardinality, e_card_length, 0, VALUE,
|
||||
OTHER) PAIR(nod_rec_version, blr_record_version, 1, 0, VALUE,
|
||||
VALUE) PAIR(nod_stall, blr_stall, 1, 0, STATEMENT,
|
||||
STATEMENT) PAIR(nod_ansi_all,
|
||||
blr_ansi_all,
|
||||
e_any_length, 1, BOOL,
|
||||
TYPE_RSE)
|
||||
|
||||
PAIR(nod_crack, blr_crack, 2, 0, VALUE, OTHER),
|
||||
PAIR(nod_force_crack, blr_force_crack, 2, 0, STATEMENT, OTHER),
|
||||
PAIR(nod_reset_stream, blr_reset_stream, e_reset_length, 0, STATEMENT, OTHER),
|
||||
PAIR(nod_release_bookmark, blr_release_bookmark, e_relmark_length, 1, STATEMENT, OTHER),
|
||||
PAIR2(nod_set_generator, blr_set_generator, e_gen_length, 1, STATEMENT, VALUE),
|
||||
PAIR(nod_ansi_any, blr_ansi_any, e_any_length, 1, BOOL, TYPE_RSE),
|
||||
PAIR(nod_exists, blr_exists, e_any_length, 1, BOOL, TYPE_RSE),
|
||||
PAIR(nod_cardinality, blr_cardinality, e_card_length, 0, VALUE, OTHER),
|
||||
PAIR(nod_rec_version, blr_record_version, 1, 0, VALUE, VALUE),
|
||||
PAIR(nod_stall, blr_stall, 1, 0, STATEMENT, STATEMENT),
|
||||
PAIR(nod_ansi_all, blr_ansi_all, e_any_length, 1, BOOL, TYPE_RSE),
|
||||
/* Improved Date Support */
|
||||
PAIR(nod_extract, blr_extract,
|
||||
e_extract_length, e_extract_count, VALUE, VALUE)
|
||||
PAIR(nod_current_date, blr_current_date,
|
||||
e_current_date_length, 0, VALUE, OTHER)
|
||||
PAIR(nod_current_time, blr_current_time,
|
||||
e_current_time_length, 0, VALUE, OTHER)
|
||||
PAIR(nod_current_timestamp, blr_current_timestamp,
|
||||
e_current_timestamp_length, 0, VALUE, OTHER) 0
|
||||
PAIR(nod_extract, blr_extract, e_extract_length, e_extract_count, VALUE, VALUE),
|
||||
PAIR(nod_current_date, blr_current_date, e_current_date_length, 0, VALUE, OTHER),
|
||||
PAIR(nod_current_time, blr_current_time, e_current_time_length, 0, VALUE, OTHER),
|
||||
PAIR(nod_current_timestamp, blr_current_timestamp, e_current_timestamp_length, 0, VALUE, OTHER),
|
||||
0
|
||||
};
|
||||
|
||||
CONST SCHAR *table[256], *table2[256], *lengths[256], *counts[256],
|
||||
*types[256], *sub_types[256];
|
||||
|
||||
|
||||
#ifdef __STDC__
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
#else
|
||||
int main(argc, argv)
|
||||
int argc;
|
||||
char *argv[];
|
||||
#endif
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
|
@ -22,10 +22,11 @@
|
||||
*/
|
||||
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/exe.h"
|
||||
#include "../jrd/rse.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/all_proto.h"
|
||||
#include "../jrd/bookmark.h"
|
||||
#include "../jrd/err_proto.h"
|
||||
|
@ -21,9 +21,10 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: btr.cpp,v 1.1.1.1 2001-05-23 13:26:08 tamlin Exp $
|
||||
$Id: btr.cpp,v 1.2 2001-07-29 17:42:21 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
@ -35,7 +36,7 @@ $Id: btr.cpp,v 1.1.1.1 2001-05-23 13:26:08 tamlin Exp $
|
||||
#include "../jrd/req.h"
|
||||
#include "../jrd/tra.h"
|
||||
#include "../jrd/intl.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/jrn.h"
|
||||
#include "../jrd/lck.h"
|
||||
@ -1616,7 +1617,7 @@ void BTR_reserve_slot(TDBB tdbb, REL relation, TRA transaction, IDX * idx)
|
||||
|
||||
if (root->irt_count > MAX_IDX) {
|
||||
CCH_RELEASE(tdbb, &window);
|
||||
ERR_post(gds__no_meta_update, gds_arg_gds, gds__max_idx,
|
||||
ERR_post(gds_no_meta_update, gds_arg_gds, gds_max_idx,
|
||||
gds_arg_number, (SLONG) MAX_IDX, 0);
|
||||
}
|
||||
/* Scan the index page looking for the high water mark of the descriptions and,
|
||||
@ -1643,8 +1644,8 @@ void BTR_reserve_slot(TDBB tdbb, REL relation, TRA transaction, IDX * idx)
|
||||
If this is the second try already, then there really is no more room. */
|
||||
if (maybe_no_room) {
|
||||
CCH_RELEASE(tdbb, &window);
|
||||
ERR_post(gds__no_meta_update, gds_arg_gds,
|
||||
gds__index_root_page_full, 0);
|
||||
ERR_post(gds_no_meta_update, gds_arg_gds,
|
||||
gds_index_root_page_full, 0);
|
||||
}
|
||||
compress_root(tdbb, root);
|
||||
maybe_no_room = TRUE;
|
||||
|
@ -20,9 +20,10 @@
|
||||
*
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
* $Id: builtin.cpp,v 1.1.1.1 2001-05-23 13:26:07 tamlin Exp $
|
||||
* $Id: builtin.cpp,v 1.2 2001-07-29 17:42:21 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/flu_proto.h"
|
||||
|
@ -23,6 +23,7 @@
|
||||
* conditionals, as the engine now fully supports
|
||||
* readonly databases.
|
||||
*/
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
@ -33,7 +34,7 @@
|
||||
#include "../jrd/ods.h"
|
||||
#include "../jrd/pio.h"
|
||||
#include "../jrd/cch.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/jrn.h"
|
||||
#include "../jrd/lls.h"
|
||||
#include "../jrd/req.h"
|
||||
@ -455,7 +456,7 @@ BOOLEAN CCH_exclusive(TDBB tdbb, USHORT level, SSHORT wait_flag)
|
||||
but can't get the lock, generate an error */
|
||||
|
||||
if (wait_flag == LCK_WAIT)
|
||||
ERR_post(gds__deadlock, 0);
|
||||
ERR_post(gds_deadlock, 0);
|
||||
|
||||
dbb->dbb_flags &= ~DBB_exclusive;
|
||||
|
||||
@ -537,7 +538,7 @@ BOOLEAN CCH_exclusive_attachment(TDBB tdbb, USHORT level, SSHORT wait_flag)
|
||||
tdbb->tdbb_attachment->att_flags &=
|
||||
~ATT_exclusive_pending;
|
||||
if (wait_flag == LCK_WAIT)
|
||||
ERR_post(gds__deadlock, 0);
|
||||
ERR_post(gds_deadlock, 0);
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
@ -948,10 +949,10 @@ void CCH_fetch_page(
|
||||
THREAD_ENTER;
|
||||
#endif
|
||||
IBERR_build_status(tdbb->tdbb_status_vector,
|
||||
gds__db_corrupt,
|
||||
gds_db_corrupt,
|
||||
gds_arg_string, "",
|
||||
gds_arg_gds, gds__bad_checksum,
|
||||
gds_arg_gds, gds__badpage,
|
||||
gds_arg_gds, gds_bad_checksum,
|
||||
gds_arg_gds, gds_badpage,
|
||||
gds_arg_number, (SLONG) bdb->bdb_page, 0);
|
||||
/* We should invalidate this bad buffer. */
|
||||
|
||||
@ -1443,7 +1444,7 @@ void CCH_init(TDBB tdbb, ULONG number)
|
||||
event = dbb->dbb_reader_event;
|
||||
ISC_event_init(event, 0, 0);
|
||||
count = ISC_event_clear(event);
|
||||
if (gds__thread_start((FPTR_INT) cache_reader, dbb, THREAD_high, 0, 0))
|
||||
if (gds_thread_start((FPTR_INT) cache_reader, dbb, THREAD_high, 0, 0))
|
||||
ERR_bugcheck_msg("cannot start thread");
|
||||
|
||||
THREAD_EXIT;
|
||||
@ -2527,7 +2528,7 @@ BOOLEAN CCH_write_all_shadows(TDBB tdbb,
|
||||
SDW_notify();
|
||||
CCH_unwind(tdbb, FALSE);
|
||||
SDW_dump_pages();
|
||||
ERR_post(gds__deadlock, 0);
|
||||
ERR_post(gds_deadlock, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2578,7 +2579,7 @@ static BDB alloc_bdb(TDBB tdbb, BCB bcb, UCHAR ** memory)
|
||||
ALL_release((FRB)bdb);
|
||||
return 0;
|
||||
}
|
||||
lock->lck_ast = blocking_ast_bdb;
|
||||
lock->lck_ast = reinterpret_cast<lck_ast_t>(blocking_ast_bdb);
|
||||
lock->lck_object = (BLK) bdb;
|
||||
#endif
|
||||
|
||||
@ -4339,7 +4340,7 @@ static SSHORT latch_bdb(
|
||||
if ((lwt->lwt_flags & LWT_pending) && timeout_occurred) {
|
||||
LATCH_MUTEX_RELEASE;
|
||||
if (latch_wait == 1) {
|
||||
IBERR_build_status(tdbb->tdbb_status_vector, gds__deadlock, 0);
|
||||
IBERR_build_status(tdbb->tdbb_status_vector, gds_deadlock, 0);
|
||||
CCH_unwind(tdbb, TRUE);
|
||||
}
|
||||
else
|
||||
@ -4481,7 +4482,7 @@ static SSHORT lock_buffer(
|
||||
to do so. */
|
||||
|
||||
if (page_type == pag_header || page_type == pag_transactions) {
|
||||
assert(lock->lck_ast == blocking_ast_bdb);
|
||||
assert(lock->lck_ast == reinterpret_cast<lck_ast_t>(blocking_ast_bdb));
|
||||
assert(lock->lck_object == (BLK) bdb);
|
||||
lock->lck_ast = 0;
|
||||
lock->lck_object = NULL;
|
||||
@ -4498,7 +4499,7 @@ static SSHORT lock_buffer(
|
||||
|
||||
assert(page_type == pag_header
|
||||
|| page_type == pag_transactions);
|
||||
lock->lck_ast = blocking_ast_bdb;
|
||||
lock->lck_ast = reinterpret_cast<lck_ast_t>(blocking_ast_bdb);
|
||||
lock->lck_object = (BLK) bdb;
|
||||
bdb->bdb_flags |= BDB_no_blocking_ast;
|
||||
}
|
||||
@ -4507,7 +4508,7 @@ static SSHORT lock_buffer(
|
||||
|
||||
if (!lock->lck_ast) {
|
||||
assert(page_type == pag_header || page_type == pag_transactions);
|
||||
lock->lck_ast = blocking_ast_bdb;
|
||||
lock->lck_ast = reinterpret_cast<lck_ast_t>(blocking_ast_bdb);
|
||||
lock->lck_object = (BLK) bdb;
|
||||
}
|
||||
|
||||
@ -4515,7 +4516,7 @@ static SSHORT lock_buffer(
|
||||
return the error. */
|
||||
|
||||
if ((wait == LCK_NO_WAIT)
|
||||
|| ((wait < 0) && (status[1] == gds__lock_timeout))) {
|
||||
|| ((wait < 0) && (status[1] == gds_lock_timeout))) {
|
||||
release_bdb(tdbb, bdb, FALSE, FALSE, FALSE);
|
||||
return -1;
|
||||
}
|
||||
@ -4526,7 +4527,7 @@ static SSHORT lock_buffer(
|
||||
|
||||
gds__msg_format(0, JRD_BUGCHK, 215, sizeof(errmsg), errmsg,
|
||||
(TEXT *) bdb->bdb_page, (TEXT *) page_type, 0, 0, 0);
|
||||
IBERR_append_status(status, gds__random, gds_arg_string,
|
||||
IBERR_append_status(status, gds_random, gds_arg_string,
|
||||
ERR_cstring(errmsg), 0);
|
||||
ERR_log(JRD_BUGCHK, 215, errmsg); /* msg 215 page %ld, page type %ld lock conversion denied */
|
||||
|
||||
@ -4559,7 +4560,7 @@ static SSHORT lock_buffer(
|
||||
/* Case: a timeout was specified, or the caller didn't want to wait,
|
||||
return the error. */
|
||||
|
||||
if ((wait < 0) && (status[1] == gds__lock_timeout)) {
|
||||
if ((wait < 0) && (status[1] == gds_lock_timeout)) {
|
||||
release_bdb(tdbb, bdb, FALSE, FALSE, FALSE);
|
||||
return -1;
|
||||
}
|
||||
@ -4570,7 +4571,7 @@ static SSHORT lock_buffer(
|
||||
|
||||
gds__msg_format(0, JRD_BUGCHK, 216, sizeof(errmsg), errmsg,
|
||||
(TEXT *) bdb->bdb_page, (TEXT *) page_type, 0, 0, 0);
|
||||
IBERR_append_status(status, gds__random, gds_arg_string,
|
||||
IBERR_append_status(status, gds_random, gds_arg_string,
|
||||
ERR_cstring(errmsg), 0);
|
||||
ERR_log(JRD_BUGCHK, 216, errmsg); /* msg 216 page %ld, page type %ld lock denied */
|
||||
|
||||
@ -4695,10 +4696,10 @@ static void page_validation_error(TDBB tdbb, WIN * window, SSHORT type)
|
||||
page = bdb->bdb_buffer;
|
||||
|
||||
IBERR_build_status(tdbb->tdbb_status_vector,
|
||||
gds__db_corrupt,
|
||||
gds_db_corrupt,
|
||||
gds_arg_string, "",
|
||||
gds_arg_gds, gds__page_type_err,
|
||||
gds_arg_gds, gds__badpagtyp,
|
||||
gds_arg_gds, gds_page_type_err,
|
||||
gds_arg_gds, gds_badpagtyp,
|
||||
gds_arg_number, (SLONG) bdb->bdb_page,
|
||||
gds_arg_number, (SLONG) type,
|
||||
gds_arg_number, (SLONG) page->pag_type, 0);
|
||||
@ -5391,7 +5392,7 @@ static BOOLEAN write_page(
|
||||
|
||||
if (bdb->bdb_flags & BDB_not_valid) {
|
||||
*status++ = gds_arg_gds;
|
||||
*status++ = gds__buf_invalid;
|
||||
*status++ = gds_buf_invalid;
|
||||
*status++ = gds_arg_number;
|
||||
*status++ = bdb->bdb_page;
|
||||
*status++ = gds_arg_end;
|
||||
|
@ -21,14 +21,15 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: cmp.cpp,v 1.2 2001-07-12 05:46:04 bellardo Exp $
|
||||
$Id: cmp.cpp,v 1.3 2001-07-29 17:42:21 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include <string.h>
|
||||
#include <stdlib.h> /* abort */
|
||||
#include "../jrd/common.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/req.h"
|
||||
#include "../jrd/val.h"
|
||||
|
@ -19,12 +19,15 @@
|
||||
*
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
* Mark O'Donohue skywalker@users.sourceforge.net
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include "../jrd/common.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/msg_encode.h"
|
||||
|
||||
/* The MSG.GDB database is found under the /msgs component subdirectory.
|
||||
@ -42,15 +45,16 @@ DATABASE DB = FILENAME "msg.gdb";
|
||||
#define SQL_CODES_H "sql_code.h"
|
||||
#define MSGFAC_H "msg_facs.h"
|
||||
|
||||
typedef UCHAR FILENAME;
|
||||
|
||||
static void build_codes_h(void);
|
||||
static void build_iberror_h(void);
|
||||
static void build_other_headers(void);
|
||||
static void build_msgfac_h(void);
|
||||
static void move_if_not_identical(FILENAME *, FILENAME *);
|
||||
static void move_if_not_identical(char *, char *);
|
||||
static void add_text(IB_FILE *, int, const char **);
|
||||
|
||||
static char* genDirectory = NULL;
|
||||
|
||||
#define CHECK_OPEN(f, name, tmp, mode) \
|
||||
if (((f) = ib_fopen ((tmp), (mode))) == NULL) \
|
||||
{ \
|
||||
@ -86,18 +90,14 @@ static const char *license[] = {
|
||||
"or implied. See the License for the specific language governing",
|
||||
"rights and limitations under the License.",
|
||||
"",
|
||||
"The Original Code was created by Inprise Corporation",
|
||||
"and its predecessors. Portions created by Inprise Corporation are",
|
||||
"Copyright (C) Inprise Corporation.",
|
||||
"",
|
||||
"All Rights Reserved.",
|
||||
"Contributor(s): ______________________________________.",
|
||||
"The content of this file was generated by the Firebird project",
|
||||
"using the program jrd/codes.e",
|
||||
0
|
||||
};
|
||||
|
||||
static const char *warn[] = {
|
||||
"",
|
||||
"File generated by codes.e - do not edit!",
|
||||
"*** WARNING *** - This file is automatically generated by codes.e - do not edit!",
|
||||
"",
|
||||
0
|
||||
};
|
||||
@ -131,6 +131,35 @@ static CONST SCHAR *c_boiler_plate[] = {
|
||||
"",
|
||||
};
|
||||
|
||||
static CONST SCHAR *cpp_boiler_plate[] = {
|
||||
"const GDS_LONG gds_arg_end = 0; /* end of argument list */",
|
||||
"const GDS_LONG gds_arg_gds = 1; /* generic DSRI status value */",
|
||||
"const GDS_LONG gds_arg_string = 2; /* string argument */",
|
||||
"const GDS_LONG gds_arg_cstring = 3; /* count & string argument */",
|
||||
"const GDS_LONG gds_arg_number = 4; /* numeric argument (long) */",
|
||||
"const GDS_LONG gds_arg_interpreted = 5; /* interpreted status code (string) */",
|
||||
"const GDS_LONG gds_arg_vms = 6; /* VAX/VMS status code (long) */",
|
||||
"const GDS_LONG gds_arg_unix = 7; /* UNIX error code */",
|
||||
"const GDS_LONG gds_arg_domain = 8; /* Apollo/Domain error code */",
|
||||
"const GDS_LONG gds_arg_dos = 9; /* MSDOS/OS2 error code */",
|
||||
"const GDS_LONG gds_arg_mpexl = 10; /* HP MPE/XL error code */",
|
||||
"const GDS_LONG gds_arg_mpexl_ipc = 11; /* HP MPE/XL IPC error code */",
|
||||
|
||||
#ifdef dontdothis
|
||||
|
||||
/* #'s 12-14 WERE USED BY TWIN SUN AND THUS MUST BE SKIPPED BY US! */
|
||||
|
||||
"const GDS_LONG gds_arg_string2 = 12; /* string argument */",
|
||||
"const GDS_LONG gds_arg_cstring2 = 13; /* count & string argument */",
|
||||
"const GDS_LONG gds_arg_interpreted2 = 14; /* interpreted status code (string) */"
|
||||
#endif
|
||||
"const GDS_LONG gds_arg_next_mach = 15; /* NeXT/Mach error code */",
|
||||
"const GDS_LONG gds_arg_netware = 16; /* NetWare error code */",
|
||||
"const GDS_LONG gds_arg_win32 = 17; /* Win32 error code */",
|
||||
"const GDS_LONG gds_arg_warning = 18; /* warning argument */",
|
||||
"",
|
||||
};
|
||||
|
||||
#define isc_facility 20
|
||||
#define isc_base (isc_facility << 24)
|
||||
#define isc_factor 1
|
||||
@ -213,7 +242,7 @@ static CONST SCHAR sql_code_boiler_plate[] =
|
||||
"static CONST SSHORT FAR_VARIABLE gds__sql_code [] = {";
|
||||
|
||||
|
||||
void CLIB_ROUTINE main( int argc, char *argv[])
|
||||
int CLIB_ROUTINE main( int argc, char *argv[])
|
||||
{
|
||||
/*************************************
|
||||
*
|
||||
@ -231,10 +260,15 @@ void CLIB_ROUTINE main( int argc, char *argv[])
|
||||
READY
|
||||
ON_ERROR
|
||||
ib_printf("Attach failed.\n");
|
||||
gds__print_status(gds__status);
|
||||
gds__print_status(gds_status);
|
||||
exit(FINI_ERROR);
|
||||
END_ERROR;
|
||||
|
||||
// See if the user has specified an optional output directory
|
||||
if (argc >=1 ) {
|
||||
genDirectory = argv[1];
|
||||
}
|
||||
|
||||
START_TRANSACTION;
|
||||
|
||||
build_iberror_h();
|
||||
@ -245,7 +279,8 @@ void CLIB_ROUTINE main( int argc, char *argv[])
|
||||
COMMIT;
|
||||
FINISH;
|
||||
|
||||
exit(FINI_OK);
|
||||
// exit(0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@ -281,17 +316,20 @@ static void build_msgfac_h(void)
|
||||
ib_fprintf(msgfac, "/******************************/\n");
|
||||
ib_fprintf(msgfac, "\n");
|
||||
|
||||
ib_fprintf(msgfac, "typedef struct _facilities {\n");
|
||||
ib_fprintf(msgfac, "#ifndef __cplusplus\n");
|
||||
ib_fprintf(msgfac, "typedef\n");
|
||||
ib_fprintf(msgfac, "#endif\n");
|
||||
ib_fprintf(msgfac, "struct _facilities {\n");
|
||||
ib_fprintf(msgfac, "\tint fac_code;\n");
|
||||
ib_fprintf(msgfac, "\tchar *facility;\n");
|
||||
ib_fprintf(msgfac, "\t};\n\n");
|
||||
|
||||
ib_fprintf(msgfac, "static CONST struct _facilities facilities[] = {\n");
|
||||
FOR F IN FACILITIES WITH ANY FAC_CODE IN SYSTEM_ERRORS OVER FAC_CODE
|
||||
ib_fprintf(msgfac, "\t%d, \"%-10.10s\",\n", F.FAC_CODE, F.FACILITY);
|
||||
ib_fprintf(msgfac, "\t{%d, \"%-10.10s\"},\n", F.FAC_CODE, F.FACILITY);
|
||||
END_FOR;
|
||||
|
||||
ib_fprintf(msgfac, "\t0, NULL};\n\n");
|
||||
ib_fprintf(msgfac, "\t{0, NULL}\n};\n\n");
|
||||
ib_fprintf(msgfac, "\n");
|
||||
CHECK_CLOSE(msgfac, MSGFAC_H, "tmpcode1", "w");
|
||||
}
|
||||
@ -317,6 +355,8 @@ static void build_iberror_h(void)
|
||||
/* Open iberror.h in the current directory. */
|
||||
CHECK_OPEN(iberror, IBERROR_H, "tmpcode2", "w");
|
||||
|
||||
ib_fprintf(iberror, "\n#ifndef _JRD_GEN_IBERROR_H\n");
|
||||
ib_fprintf(iberror, "#define _JRD_GEN_IBERROR_H\n");
|
||||
add_text(iberror, CSTYLE, license);
|
||||
add_text(iberror, CSTYLE, warn);
|
||||
ib_fprintf(iberror, "/*\n");
|
||||
@ -330,6 +370,14 @@ static void build_iberror_h(void)
|
||||
ib_fprintf(iberror, "/***********************/\n");
|
||||
ib_fprintf(iberror, "\n");
|
||||
|
||||
|
||||
/* Append the ISC boiler plate */
|
||||
|
||||
for (i = sizeof isc_c_boiler_plate / sizeof(SCHAR *), pp =
|
||||
isc_c_boiler_plate; i > 0; i--, pp++) {
|
||||
ib_fprintf(c_codes, "%s\n", *pp);
|
||||
}
|
||||
|
||||
/* Fetch error codes from SYSTEM_ERRORS relation.
|
||||
Write them out using the ISC prefix. */
|
||||
|
||||
@ -352,6 +400,7 @@ static void build_iberror_h(void)
|
||||
--code;
|
||||
ib_fprintf(iberror, "#define isc_%-32.32s %d\n", "err_max", code);
|
||||
ib_fprintf(iberror, "\n");
|
||||
ib_fprintf(iberror, "#endif /* JRD_GEN_IBERROR_H */\n");
|
||||
CHECK_CLOSE(iberror, IBERROR_H, "tmpcode2", "w");
|
||||
}
|
||||
|
||||
@ -380,12 +429,89 @@ static void build_codes_h(void)
|
||||
CHECK_OPEN(c_codes, CODES_H, "tmpcode3", "w");
|
||||
add_text(c_codes, CSTYLE, license);
|
||||
add_text(c_codes, CSTYLE, warn);
|
||||
|
||||
ib_fprintf(c_codes, "\n#ifndef _JRD_GEN_CODES_H\n");
|
||||
ib_fprintf(c_codes, "#define _JRD_GEN_CODES_H\n");
|
||||
|
||||
ib_fprintf(c_codes, "\n#ifdef __cplusplus /* c++ definitions */\n\n");
|
||||
|
||||
ib_fprintf(c_codes,
|
||||
"const GDS_LONG gds_facility = %d;\nconst GDS_LONG gds_err_base = %ldL;\nconst GDS_LONG gds_err_factor = %ld;\n",
|
||||
gds_facility, (SLONG) gds_base, (SLONG) gds_factor);
|
||||
|
||||
/* Append the C++ boiler plate */
|
||||
|
||||
for (i = sizeof cpp_boiler_plate / sizeof(SCHAR *), pp = cpp_boiler_plate;
|
||||
i > 0; i--, pp++) {
|
||||
ib_fprintf(c_codes, "%s\n", *pp);
|
||||
}
|
||||
|
||||
FOR S IN SYSTEM_ERRORS CROSS N IN MESSAGES OVER NUMBER WITH
|
||||
N.FAC_CODE = S.FAC_CODE SORTED BY N.FAC_CODE, S.NUMBER
|
||||
/* The only facility that is guaranteed to have all codes in system errors
|
||||
* is JRD */
|
||||
if (last_code + 1 != N.CODE && N.FAC_CODE == 0)
|
||||
ib_fprintf(ib_stderr,
|
||||
"Warning: missing codes between %d and %d (exclusive)\n",
|
||||
last_code, (int) N.CODE);
|
||||
|
||||
last_code = N.CODE;
|
||||
new_code = ENCODE_ISC_MSG(S.NUMBER, N.FAC_CODE);
|
||||
ib_fprintf(c_codes, "const GDS_LONG gds_%-32.32s = %dL;\n", S.GDS_SYMBOL,
|
||||
new_code);
|
||||
++code;
|
||||
|
||||
/* make sure that the SQL code is also present in the SQLERR facility */
|
||||
|
||||
/**** this part really should be done via a trigger on the database--
|
||||
commented out for now - deej
|
||||
got_it = 0;
|
||||
if (S.SQL_CODE < 0)
|
||||
{
|
||||
srchnum = 1000 + S.SQL_CODE;
|
||||
**FOR M IN MESSAGES WITH M.FAC_CODE = FAC_SQL_NEGATIVE
|
||||
AND M.NUMBER = srchnum
|
||||
got_it = 1;
|
||||
**END_FOR;
|
||||
}
|
||||
else
|
||||
{
|
||||
srchnum = S.SQL_CODE;
|
||||
**FOR M IN MESSAGES WITH M.FAC_CODE = FAC_SQL_POSITIVE
|
||||
AND M.NUMBER = srchnum
|
||||
got_it = 1;
|
||||
**END_FOR;
|
||||
}
|
||||
if (!got_it)
|
||||
{
|
||||
ib_printf ("codes: msg %d: sql-code %d, is not in the SQLERR facility\n",
|
||||
N.NUMBER, S.SQL_CODE);
|
||||
ROLLBACK;
|
||||
FINISH;
|
||||
exit (FINI_ERROR);
|
||||
} ****/
|
||||
|
||||
END_FOR;
|
||||
|
||||
--code;
|
||||
ib_fprintf(c_codes, "const GDS_LONG gds_%-32.32s = %dL;\n", "err_max", code);
|
||||
ib_fprintf(c_codes, "\n");
|
||||
|
||||
|
||||
ib_fprintf(c_codes, "#else /* c definitions */\n\n");
|
||||
|
||||
|
||||
ib_fprintf(c_codes,
|
||||
"#define gds_facility %d\n#define gds_err_base %ldL\n#define gds_err_factor %ld\n",
|
||||
gds_facility, (SLONG) gds_base, (SLONG) gds_factor);
|
||||
|
||||
/* Append the C boiler plate */
|
||||
|
||||
// Reset the variables for another trip round the loop.
|
||||
code = 1;
|
||||
last_code = code - 1;
|
||||
new_code = 0L;
|
||||
|
||||
for (i = sizeof c_boiler_plate / sizeof(SCHAR *), pp = c_boiler_plate;
|
||||
i > 0; i--, pp++) {
|
||||
ib_fprintf(c_codes, "%s\n", *pp);
|
||||
@ -442,49 +568,23 @@ static void build_codes_h(void)
|
||||
ib_fprintf(c_codes, "#define gds_%-32.32s %d\n", "err_max", code);
|
||||
ib_fprintf(c_codes, "\n");
|
||||
|
||||
|
||||
ib_fprintf(c_codes, "#endif\n\n");
|
||||
|
||||
|
||||
|
||||
/* Append the ISC error codes */
|
||||
|
||||
ib_fprintf(c_codes, "/***********************/\n");
|
||||
ib_fprintf(c_codes, "/* ISC Error Codes */\n");
|
||||
ib_fprintf(c_codes, "/***********************/\n");
|
||||
ib_fprintf(c_codes, "\n");
|
||||
ib_fprintf(c_codes,
|
||||
"#define isc_facility %d\n#define isc_err_base %ldL\n#define isc_err_factor %ld\n",
|
||||
isc_facility, (SLONG) isc_base, (SLONG) isc_factor);
|
||||
/* I have removed the isc errors from codes.h since they are all now placed
|
||||
into iberror.h - If it needs to be replaced then it can be copied back
|
||||
from gen iberror routine. I now do the include of that file.
|
||||
MOD 17-07-2001
|
||||
*/
|
||||
ib_fprintf(c_codes, "#include \"iberror.h\"\n\n");
|
||||
|
||||
/* Append the ISC boiler plate */
|
||||
|
||||
for (i = sizeof isc_c_boiler_plate / sizeof(SCHAR *), pp =
|
||||
isc_c_boiler_plate; i > 0; i--, pp++) {
|
||||
ib_fprintf(c_codes, "%s\n", *pp);
|
||||
}
|
||||
ib_fprintf(c_codes, "#endif /* JRD_GEN_CODES_H */\n");
|
||||
|
||||
/* Fetch error codes from SYSTEM_ERRORS relation.
|
||||
Write them out using the ISC prefix. */
|
||||
|
||||
code = 1;
|
||||
last_code = code - 1;
|
||||
|
||||
FOR S IN SYSTEM_ERRORS CROSS N IN MESSAGES OVER NUMBER WITH
|
||||
N.FAC_CODE = S.FAC_CODE SORTED BY N.FAC_CODE, S.NUMBER
|
||||
/* The only facility that is guaranteed to have all codes in system errors
|
||||
* is JRD */
|
||||
if (last_code + 1 != N.CODE && N.FAC_CODE == 0)
|
||||
ib_fprintf(ib_stderr,
|
||||
"Warning: missing codes between %d and %d (exclusive)\n",
|
||||
last_code, (int) N.CODE);
|
||||
|
||||
last_code = N.CODE;
|
||||
new_code = ENCODE_ISC_MSG(N.NUMBER, N.FAC_CODE);
|
||||
ib_fprintf(c_codes, "#define isc_%-32.32s %dL\n", S.GDS_SYMBOL,
|
||||
new_code);
|
||||
++code;
|
||||
|
||||
END_FOR;
|
||||
|
||||
--code;
|
||||
ib_fprintf(c_codes, "#define isc_%-32.32s %d\n", "err_max", code);
|
||||
ib_fprintf(c_codes, "\n");
|
||||
CHECK_CLOSE(c_codes, CODES_H, "tmpcode3", "w");
|
||||
}
|
||||
|
||||
@ -583,7 +683,7 @@ CONST\n\
|
||||
last_code = N.CODE;
|
||||
new_code = ENCODE_ISC_MSG(N.NUMBER, N.FAC_CODE);
|
||||
|
||||
ib_fprintf(pas_codes, "\tgds__%-32.32s = %d;\n", S.GDS_SYMBOL,
|
||||
ib_fprintf(pas_codes, "\tgds_%-32.32s = %d;\n", S.GDS_SYMBOL,
|
||||
new_code);
|
||||
ib_fprintf(ftn_codes,
|
||||
" INTEGER*4 GDS__%-32.32s\n PARAMETER (GDS__%-32.32s = %d)\n",
|
||||
@ -606,7 +706,7 @@ CONST\n\
|
||||
*p && *p != ' ' && p < S.GDS_SYMBOL + sizeof(S.GDS_SYMBOL) - 1;
|
||||
p++);
|
||||
*p = 0;
|
||||
ib_fprintf(code_text, "\"%s\", %d,\n", S.GDS_SYMBOL, new_code);
|
||||
ib_fprintf(code_text, "{\"%s\", %d},\n", S.GDS_SYMBOL, new_code);
|
||||
++code;
|
||||
|
||||
END_FOR;
|
||||
@ -653,27 +753,37 @@ CONST\n\
|
||||
}
|
||||
|
||||
|
||||
static void move_if_not_identical( FILENAME * original, FILENAME * new_file)
|
||||
static void move_if_not_identical( char* original, char* new_file)
|
||||
{
|
||||
UCHAR buffer[500];
|
||||
sprintf(buffer, "cmp -s %s %s", new_file, original);
|
||||
|
||||
|
||||
char origName[1000];
|
||||
if ( genDirectory != NULL) {
|
||||
sprintf(origName,"%s/%s", genDirectory, original);
|
||||
}
|
||||
else {
|
||||
sprintf(origName,"./%s", original);
|
||||
}
|
||||
|
||||
char buffer[1000];
|
||||
sprintf(buffer, "cmp -s %s %s", new_file, origName);
|
||||
|
||||
/* If the new file is identical to the original, then don't update
|
||||
the original */
|
||||
if (system(buffer) == 0) {
|
||||
ib_fprintf(ib_stderr, "No need to update %s\n", original);
|
||||
ib_fprintf(ib_stderr, "No need to update %s\n", origName);
|
||||
unlink(new_file);
|
||||
}
|
||||
else {
|
||||
/* Original file is missing or different */
|
||||
sprintf(buffer, "mv -f %s %s", new_file, original);
|
||||
sprintf(buffer, "mv -f %s %s", new_file, origName);
|
||||
if (system(buffer) != 0) {
|
||||
ib_fprintf(ib_stderr, "Error moving %s to %s!\n",
|
||||
new_file, original);
|
||||
new_file, origName);
|
||||
exit(FINI_ERROR);
|
||||
}
|
||||
else
|
||||
ib_fprintf(ib_stderr, "Updated %s\n", original);
|
||||
ib_fprintf(ib_stderr, "Updated %s\n", origName);
|
||||
}
|
||||
}
|
||||
|
||||
|
2143
src/jrd/codes.h
2143
src/jrd/codes.h
File diff suppressed because it is too large
Load Diff
@ -1,712 +0,0 @@
|
||||
/*
|
||||
* The contents of this file are subject to the Interbase Public
|
||||
* License Version 1.0 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy
|
||||
* of the License at http://www.Inprise.com/IPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an
|
||||
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
|
||||
* or implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code was created by Inprise Corporation
|
||||
* and its predecessors. Portions created by Inprise Corporation are
|
||||
* Copyright (C) Inprise Corporation.
|
||||
*
|
||||
* Copyright (C) 2000 Inprise Corporation
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
*
|
||||
* File generated by codes.e - do not edit!
|
||||
*
|
||||
*/
|
||||
"arith_except", 335544321,
|
||||
"bad_dbkey", 335544322,
|
||||
"bad_db_format", 335544323,
|
||||
"bad_db_handle", 335544324,
|
||||
"bad_dpb_content", 335544325,
|
||||
"bad_dpb_form", 335544326,
|
||||
"bad_req_handle", 335544327,
|
||||
"bad_segstr_handle", 335544328,
|
||||
"bad_segstr_id", 335544329,
|
||||
"bad_tpb_content", 335544330,
|
||||
"bad_tpb_form", 335544331,
|
||||
"bad_trans_handle", 335544332,
|
||||
"bug_check", 335544333,
|
||||
"convert_error", 335544334,
|
||||
"db_corrupt", 335544335,
|
||||
"deadlock", 335544336,
|
||||
"excess_trans", 335544337,
|
||||
"from_no_match", 335544338,
|
||||
"infinap", 335544339,
|
||||
"infona", 335544340,
|
||||
"infunk", 335544341,
|
||||
"integ_fail", 335544342,
|
||||
"invalid_blr", 335544343,
|
||||
"io_error", 335544344,
|
||||
"lock_conflict", 335544345,
|
||||
"metadata_corrupt", 335544346,
|
||||
"not_valid", 335544347,
|
||||
"no_cur_rec", 335544348,
|
||||
"no_dup", 335544349,
|
||||
"no_finish", 335544350,
|
||||
"no_meta_update", 335544351,
|
||||
"no_priv", 335544352,
|
||||
"no_recon", 335544353,
|
||||
"no_record", 335544354,
|
||||
"no_segstr_close", 335544355,
|
||||
"obsolete_metadata", 335544356,
|
||||
"open_trans", 335544357,
|
||||
"port_len", 335544358,
|
||||
"read_only_field", 335544359,
|
||||
"read_only_rel", 335544360,
|
||||
"read_only_trans", 335544361,
|
||||
"read_only_view", 335544362,
|
||||
"req_no_trans", 335544363,
|
||||
"req_sync", 335544364,
|
||||
"req_wrong_db", 335544365,
|
||||
"segment", 335544366,
|
||||
"segstr_eof", 335544367,
|
||||
"segstr_no_op", 335544368,
|
||||
"segstr_no_read", 335544369,
|
||||
"segstr_no_trans", 335544370,
|
||||
"segstr_no_write", 335544371,
|
||||
"segstr_wrong_db", 335544372,
|
||||
"sys_request", 335544373,
|
||||
"stream_eof", 335544374,
|
||||
"unavailable", 335544375,
|
||||
"unres_rel", 335544376,
|
||||
"uns_ext", 335544377,
|
||||
"wish_list", 335544378,
|
||||
"wrong_ods", 335544379,
|
||||
"wronumarg", 335544380,
|
||||
"imp_exc", 335544381,
|
||||
"random", 335544382,
|
||||
"fatal_conflict", 335544383,
|
||||
"badblk", 335544384,
|
||||
"invpoolcl", 335544385,
|
||||
"nopoolids", 335544386,
|
||||
"relbadblk", 335544387,
|
||||
"blktoobig", 335544388,
|
||||
"bufexh", 335544389,
|
||||
"syntaxerr", 335544390,
|
||||
"bufinuse", 335544391,
|
||||
"bdbincon", 335544392,
|
||||
"reqinuse", 335544393,
|
||||
"badodsver", 335544394,
|
||||
"relnotdef", 335544395,
|
||||
"fldnotdef", 335544396,
|
||||
"dirtypage", 335544397,
|
||||
"waifortra", 335544398,
|
||||
"doubleloc", 335544399,
|
||||
"nodnotfnd", 335544400,
|
||||
"dupnodfnd", 335544401,
|
||||
"locnotmar", 335544402,
|
||||
"badpagtyp", 335544403,
|
||||
"corrupt", 335544404,
|
||||
"badpage", 335544405,
|
||||
"badindex", 335544406,
|
||||
"dbbnotzer", 335544407,
|
||||
"tranotzer", 335544408,
|
||||
"trareqmis", 335544409,
|
||||
"badhndcnt", 335544410,
|
||||
"wrotpbver", 335544411,
|
||||
"wroblrver", 335544412,
|
||||
"wrodpbver", 335544413,
|
||||
"blobnotsup", 335544414,
|
||||
"badrelation", 335544415,
|
||||
"nodetach", 335544416,
|
||||
"notremote", 335544417,
|
||||
"trainlim", 335544418,
|
||||
"notinlim", 335544419,
|
||||
"traoutsta", 335544420,
|
||||
"connect_reject", 335544421,
|
||||
"dbfile", 335544422,
|
||||
"orphan", 335544423,
|
||||
"no_lock_mgr", 335544424,
|
||||
"ctxinuse", 335544425,
|
||||
"ctxnotdef", 335544426,
|
||||
"datnotsup", 335544427,
|
||||
"badmsgnum", 335544428,
|
||||
"badparnum", 335544429,
|
||||
"virmemexh", 335544430,
|
||||
"blocking_signal", 335544431,
|
||||
"lockmanerr", 335544432,
|
||||
"journerr", 335544433,
|
||||
"keytoobig", 335544434,
|
||||
"nullsegkey", 335544435,
|
||||
"sqlerr", 335544436,
|
||||
"wrodynver", 335544437,
|
||||
"funnotdef", 335544438,
|
||||
"funmismat", 335544439,
|
||||
"bad_msg_vec", 335544440,
|
||||
"bad_detach", 335544441,
|
||||
"noargacc_read", 335544442,
|
||||
"noargacc_write", 335544443,
|
||||
"read_only", 335544444,
|
||||
"ext_err", 335544445,
|
||||
"non_updatable", 335544446,
|
||||
"no_rollback", 335544447,
|
||||
"bad_sec_info", 335544448,
|
||||
"invalid_sec_info", 335544449,
|
||||
"misc_interpreted", 335544450,
|
||||
"update_conflict", 335544451,
|
||||
"unlicensed", 335544452,
|
||||
"obj_in_use", 335544453,
|
||||
"nofilter", 335544454,
|
||||
"shadow_accessed", 335544455,
|
||||
"invalid_sdl", 335544456,
|
||||
"out_of_bounds", 335544457,
|
||||
"invalid_dimension", 335544458,
|
||||
"rec_in_limbo", 335544459,
|
||||
"shadow_missing", 335544460,
|
||||
"cant_validate", 335544461,
|
||||
"cant_start_journal", 335544462,
|
||||
"gennotdef", 335544463,
|
||||
"cant_start_logging", 335544464,
|
||||
"bad_segstr_type", 335544465,
|
||||
"foreign_key", 335544466,
|
||||
"high_minor", 335544467,
|
||||
"tra_state", 335544468,
|
||||
"trans_invalid", 335544469,
|
||||
"buf_invalid", 335544470,
|
||||
"indexnotdefined", 335544471,
|
||||
"login", 335544472,
|
||||
"invalid_bookmark", 335544473,
|
||||
"bad_lock_level", 335544474,
|
||||
"relation_lock", 335544475,
|
||||
"record_lock", 335544476,
|
||||
"max_idx", 335544477,
|
||||
"jrn_enable", 335544478,
|
||||
"old_failure", 335544479,
|
||||
"old_in_progress", 335544480,
|
||||
"old_no_space", 335544481,
|
||||
"no_wal_no_jrn", 335544482,
|
||||
"num_old_files", 335544483,
|
||||
"wal_file_open", 335544484,
|
||||
"bad_stmt_handle", 335544485,
|
||||
"wal_failure", 335544486,
|
||||
"walw_err", 335544487,
|
||||
"logh_small", 335544488,
|
||||
"logh_inv_version", 335544489,
|
||||
"logh_open_flag", 335544490,
|
||||
"logh_open_flag2", 335544491,
|
||||
"logh_diff_dbname", 335544492,
|
||||
"logf_unexpected_eof", 335544493,
|
||||
"logr_incomplete", 335544494,
|
||||
"logr_header_small", 335544495,
|
||||
"logb_small", 335544496,
|
||||
"wal_illegal_attach", 335544497,
|
||||
"wal_invalid_wpb", 335544498,
|
||||
"wal_err_rollover", 335544499,
|
||||
"no_wal", 335544500,
|
||||
"drop_wal", 335544501,
|
||||
"stream_not_defined", 335544502,
|
||||
"wal_subsys_error", 335544503,
|
||||
"wal_subsys_corrupt", 335544504,
|
||||
"no_archive", 335544505,
|
||||
"shutinprog", 335544506,
|
||||
"range_in_use", 335544507,
|
||||
"range_not_found", 335544508,
|
||||
"charset_not_found", 335544509,
|
||||
"lock_timeout", 335544510,
|
||||
"prcnotdef", 335544511,
|
||||
"prcmismat", 335544512,
|
||||
"wal_bugcheck", 335544513,
|
||||
"wal_cant_expand", 335544514,
|
||||
"codnotdef", 335544515,
|
||||
"xcpnotdef", 335544516,
|
||||
"except", 335544517,
|
||||
"cache_restart", 335544518,
|
||||
"bad_lock_handle", 335544519,
|
||||
"jrn_present", 335544520,
|
||||
"wal_err_rollover2", 335544521,
|
||||
"wal_err_logwrite", 335544522,
|
||||
"wal_err_jrn_comm", 335544523,
|
||||
"wal_err_expansion", 335544524,
|
||||
"wal_err_setup", 335544525,
|
||||
"wal_err_ww_sync", 335544526,
|
||||
"wal_err_ww_start", 335544527,
|
||||
"shutdown", 335544528,
|
||||
"existing_priv_mod", 335544529,
|
||||
"primary_key_ref", 335544530,
|
||||
"primary_key_notnull", 335544531,
|
||||
"ref_cnstrnt_notfound", 335544532,
|
||||
"foreign_key_notfound", 335544533,
|
||||
"ref_cnstrnt_update", 335544534,
|
||||
"check_cnstrnt_update", 335544535,
|
||||
"check_cnstrnt_del", 335544536,
|
||||
"integ_index_seg_del", 335544537,
|
||||
"integ_index_seg_mod", 335544538,
|
||||
"integ_index_del", 335544539,
|
||||
"integ_index_mod", 335544540,
|
||||
"check_trig_del", 335544541,
|
||||
"check_trig_update", 335544542,
|
||||
"cnstrnt_fld_del", 335544543,
|
||||
"cnstrnt_fld_rename", 335544544,
|
||||
"rel_cnstrnt_update", 335544545,
|
||||
"constaint_on_view", 335544546,
|
||||
"invld_cnstrnt_type", 335544547,
|
||||
"primary_key_exists", 335544548,
|
||||
"systrig_update", 335544549,
|
||||
"not_rel_owner", 335544550,
|
||||
"grant_obj_notfound", 335544551,
|
||||
"grant_fld_notfound", 335544552,
|
||||
"grant_nopriv", 335544553,
|
||||
"nonsql_security_rel", 335544554,
|
||||
"nonsql_security_fld", 335544555,
|
||||
"wal_cache_err", 335544556,
|
||||
"shutfail", 335544557,
|
||||
"check_constraint", 335544558,
|
||||
"bad_svc_handle", 335544559,
|
||||
"shutwarn", 335544560,
|
||||
"wrospbver", 335544561,
|
||||
"bad_spb_form", 335544562,
|
||||
"svcnotdef", 335544563,
|
||||
"no_jrn", 335544564,
|
||||
"transliteration_failed", 335544565,
|
||||
"start_cm_for_wal", 335544566,
|
||||
"wal_ovflow_log_required", 335544567,
|
||||
"text_subtype", 335544568,
|
||||
"dsql_error", 335544569,
|
||||
"dsql_command_err", 335544570,
|
||||
"dsql_constant_err", 335544571,
|
||||
"dsql_cursor_err", 335544572,
|
||||
"dsql_datatype_err", 335544573,
|
||||
"dsql_decl_err", 335544574,
|
||||
"dsql_cursor_update_err", 335544575,
|
||||
"dsql_cursor_open_err", 335544576,
|
||||
"dsql_cursor_close_err", 335544577,
|
||||
"dsql_field_err", 335544578,
|
||||
"dsql_internal_err", 335544579,
|
||||
"dsql_relation_err", 335544580,
|
||||
"dsql_procedure_err", 335544581,
|
||||
"dsql_request_err", 335544582,
|
||||
"dsql_sqlda_err", 335544583,
|
||||
"dsql_var_count_err", 335544584,
|
||||
"dsql_stmt_handle", 335544585,
|
||||
"dsql_function_err", 335544586,
|
||||
"dsql_blob_err", 335544587,
|
||||
"collation_not_found", 335544588,
|
||||
"collation_not_for_charset", 335544589,
|
||||
"dsql_dup_option", 335544590,
|
||||
"dsql_tran_err", 335544591,
|
||||
"dsql_invalid_array", 335544592,
|
||||
"dsql_max_arr_dim_exceeded", 335544593,
|
||||
"dsql_arr_range_error", 335544594,
|
||||
"dsql_trigger_err", 335544595,
|
||||
"dsql_subselect_err", 335544596,
|
||||
"dsql_crdb_prepare_err", 335544597,
|
||||
"specify_field_err", 335544598,
|
||||
"num_field_err", 335544599,
|
||||
"col_name_err", 335544600,
|
||||
"where_err", 335544601,
|
||||
"table_view_err", 335544602,
|
||||
"distinct_err", 335544603,
|
||||
"key_field_count_err", 335544604,
|
||||
"subquery_err", 335544605,
|
||||
"expression_eval_err", 335544606,
|
||||
"node_err", 335544607,
|
||||
"command_end_err", 335544608,
|
||||
"index_name", 335544609,
|
||||
"exception_name", 335544610,
|
||||
"field_name", 335544611,
|
||||
"token_err", 335544612,
|
||||
"union_err", 335544613,
|
||||
"dsql_construct_err", 335544614,
|
||||
"field_aggregate_err", 335544615,
|
||||
"field_ref_err", 335544616,
|
||||
"order_by_err", 335544617,
|
||||
"return_mode_err", 335544618,
|
||||
"extern_func_err", 335544619,
|
||||
"alias_conflict_err", 335544620,
|
||||
"procedure_conflict_error", 335544621,
|
||||
"relation_conflict_err", 335544622,
|
||||
"dsql_domain_err", 335544623,
|
||||
"idx_seg_err", 335544624,
|
||||
"node_name_err", 335544625,
|
||||
"table_name", 335544626,
|
||||
"proc_name", 335544627,
|
||||
"idx_create_err", 335544628,
|
||||
"wal_shadow_err", 335544629,
|
||||
"dependency", 335544630,
|
||||
"idx_key_err", 335544631,
|
||||
"dsql_file_length_err", 335544632,
|
||||
"dsql_shadow_number_err", 335544633,
|
||||
"dsql_token_unk_err", 335544634,
|
||||
"dsql_no_relation_alias", 335544635,
|
||||
"indexname", 335544636,
|
||||
"no_stream_plan", 335544637,
|
||||
"stream_twice", 335544638,
|
||||
"stream_not_found", 335544639,
|
||||
"collation_requires_text", 335544640,
|
||||
"dsql_domain_not_found", 335544641,
|
||||
"index_unused", 335544642,
|
||||
"dsql_self_join", 335544643,
|
||||
"stream_bof", 335544644,
|
||||
"stream_crack", 335544645,
|
||||
"db_or_file_exists", 335544646,
|
||||
"invalid_operator", 335544647,
|
||||
"conn_lost", 335544648,
|
||||
"bad_checksum", 335544649,
|
||||
"page_type_err", 335544650,
|
||||
"ext_readonly_err", 335544651,
|
||||
"sing_select_err", 335544652,
|
||||
"psw_attach", 335544653,
|
||||
"psw_start_trans", 335544654,
|
||||
"invalid_direction", 335544655,
|
||||
"dsql_var_conflict", 335544656,
|
||||
"dsql_no_blob_array", 335544657,
|
||||
"dsql_base_table", 335544658,
|
||||
"duplicate_base_table", 335544659,
|
||||
"view_alias", 335544660,
|
||||
"index_root_page_full", 335544661,
|
||||
"dsql_blob_type_unknown", 335544662,
|
||||
"req_max_clones_exceeded", 335544663,
|
||||
"dsql_duplicate_spec", 335544664,
|
||||
"unique_key_violation", 335544665,
|
||||
"srvr_version_too_old", 335544666,
|
||||
"drdb_completed_with_errs", 335544667,
|
||||
"dsql_procedure_use_err", 335544668,
|
||||
"dsql_count_mismatch", 335544669,
|
||||
"blob_idx_err", 335544670,
|
||||
"array_idx_err", 335544671,
|
||||
"key_field_err", 335544672,
|
||||
"no_delete", 335544673,
|
||||
"del_last_field", 335544674,
|
||||
"sort_err", 335544675,
|
||||
"sort_mem_err", 335544676,
|
||||
"version_err", 335544677,
|
||||
"inval_key_posn", 335544678,
|
||||
"no_segments_err", 335544679,
|
||||
"crrp_data_err", 335544680,
|
||||
"rec_size_err", 335544681,
|
||||
"dsql_field_ref", 335544682,
|
||||
"req_depth_exceeded", 335544683,
|
||||
"no_field_access", 335544684,
|
||||
"no_dbkey", 335544685,
|
||||
"jrn_format_err", 335544686,
|
||||
"jrn_file_full", 335544687,
|
||||
"dsql_open_cursor_request", 335544688,
|
||||
"ib_error", 335544689,
|
||||
"cache_redef", 335544690,
|
||||
"cache_too_small", 335544691,
|
||||
"log_redef", 335544692,
|
||||
"log_too_small", 335544693,
|
||||
"partition_too_small", 335544694,
|
||||
"partition_not_supp", 335544695,
|
||||
"log_length_spec", 335544696,
|
||||
"precision_err", 335544697,
|
||||
"scale_nogt", 335544698,
|
||||
"expec_short", 335544699,
|
||||
"expec_long", 335544700,
|
||||
"expec_ushort", 335544701,
|
||||
"like_escape_invalid", 335544702,
|
||||
"svcnoexe", 335544703,
|
||||
"net_lookup_err", 335544704,
|
||||
"service_unknown", 335544705,
|
||||
"host_unknown", 335544706,
|
||||
"grant_nopriv_on_base", 335544707,
|
||||
"dyn_fld_ambiguous", 335544708,
|
||||
"dsql_agg_ref_err", 335544709,
|
||||
"complex_view", 335544710,
|
||||
"unprepared_stmt", 335544711,
|
||||
"expec_positive", 335544712,
|
||||
"dsql_sqlda_value_err", 335544713,
|
||||
"invalid_array_id", 335544714,
|
||||
"extfile_uns_op", 335544715,
|
||||
"svc_in_use", 335544716,
|
||||
"err_stack_limit", 335544717,
|
||||
"invalid_key", 335544718,
|
||||
"net_init_error", 335544719,
|
||||
"loadlib_failure", 335544720,
|
||||
"network_error", 335544721,
|
||||
"net_connect_err", 335544722,
|
||||
"net_connect_listen_err", 335544723,
|
||||
"net_event_connect_err", 335544724,
|
||||
"net_event_listen_err", 335544725,
|
||||
"net_read_err", 335544726,
|
||||
"net_write_err", 335544727,
|
||||
"integ_index_deactivate", 335544728,
|
||||
"integ_deactivate_primary", 335544729,
|
||||
"cse_not_supported", 335544730,
|
||||
"tra_must_sweep", 335544731,
|
||||
"unsupported_network_drive", 335544732,
|
||||
"io_create_err", 335544733,
|
||||
"io_open_err", 335544734,
|
||||
"io_close_err", 335544735,
|
||||
"io_read_err", 335544736,
|
||||
"io_write_err", 335544737,
|
||||
"io_delete_err", 335544738,
|
||||
"io_access_err", 335544739,
|
||||
"udf_exception", 335544740,
|
||||
"lost_db_connection", 335544741,
|
||||
"no_write_user_priv", 335544742,
|
||||
"token_too_long", 335544743,
|
||||
"max_att_exceeded", 335544744,
|
||||
"login_same_as_role_name", 335544745,
|
||||
"reftable_requires_pk", 335544746,
|
||||
"usrname_too_long", 335544747,
|
||||
"password_too_long", 335544748,
|
||||
"usrname_required", 335544749,
|
||||
"password_required", 335544750,
|
||||
"bad_protocol", 335544751,
|
||||
"dup_usrname_found", 335544752,
|
||||
"usrname_not_found", 335544753,
|
||||
"error_adding_sec_record", 335544754,
|
||||
"error_modifying_sec_record", 335544755,
|
||||
"error_deleting_sec_record", 335544756,
|
||||
"error_updating_sec_db", 335544757,
|
||||
"sort_rec_size_err", 335544758,
|
||||
"bad_default_value", 335544759,
|
||||
"invalid_clause", 335544760,
|
||||
"too_many_handles", 335544761,
|
||||
"optimizer_blk_exc", 335544762,
|
||||
"invalid_string_constant", 335544763,
|
||||
"transitional_date", 335544764,
|
||||
"read_only_database", 335544765,
|
||||
"must_be_dialect_2_and_up", 335544766,
|
||||
"blob_filter_exception", 335544767,
|
||||
"exception_access_violation", 335544768,
|
||||
"exception_datatype_missalignmen", 335544769,
|
||||
"exception_array_bounds_exceeded", 335544770,
|
||||
"exception_float_denormal_operan", 335544771,
|
||||
"exception_float_divide_by_zero", 335544772,
|
||||
"exception_float_inexact_result", 335544773,
|
||||
"exception_float_invalid_operand", 335544774,
|
||||
"exception_float_overflow", 335544775,
|
||||
"exception_float_stack_check", 335544776,
|
||||
"exception_float_underflow", 335544777,
|
||||
"exception_integer_divide_by_zer", 335544778,
|
||||
"exception_integer_overflow", 335544779,
|
||||
"exception_unknown", 335544780,
|
||||
"exception_stack_overflow", 335544781,
|
||||
"exception_sigsegv", 335544782,
|
||||
"exception_sigill", 335544783,
|
||||
"exception_sigbus", 335544784,
|
||||
"exception_sigfpe", 335544785,
|
||||
"ext_file_delete", 335544786,
|
||||
"ext_file_modify", 335544787,
|
||||
"adm_task_denied", 335544788,
|
||||
"extract_input_mismatch", 335544789,
|
||||
"insufficient_svc_privileges", 335544790,
|
||||
"file_in_use", 335544791,
|
||||
"service_att_err", 335544792,
|
||||
"ddl_not_allowed_by_db_sql_dial", 335544793,
|
||||
"cancelled", 335544794,
|
||||
"unexp_spb_form", 335544795,
|
||||
"sql_dialect_datatype_unsupport", 335544796,
|
||||
"svcnouser", 335544797,
|
||||
"depend_on_uncommitted_rel", 335544798,
|
||||
"svc_name_missing", 335544799,
|
||||
"too_many_contexts", 335544800,
|
||||
"datype_notsup", 335544801,
|
||||
"dialect_reset_warning", 335544802,
|
||||
"dialect_not_changed", 335544803,
|
||||
"database_create_failed", 335544804,
|
||||
"inv_dialect_specified", 335544805,
|
||||
"valid_db_dialects", 335544806,
|
||||
"sqlwarn", 335544807,
|
||||
"dtype_renamed", 335544808,
|
||||
"extern_func_dir_error", 335544809,
|
||||
"date_range_exceeded", 335544810,
|
||||
"inv_client_dialect_specified", 335544811,
|
||||
"valid_client_dialects", 335544812,
|
||||
"optimizer_between_err", 335544813,
|
||||
"service_not_supported", 335544814,
|
||||
"gfix_db_name", 335740929,
|
||||
"gfix_invalid_sw", 335740930,
|
||||
"gfix_incmp_sw", 335740932,
|
||||
"gfix_replay_req", 335740933,
|
||||
"gfix_pgbuf_req", 335740934,
|
||||
"gfix_val_req", 335740935,
|
||||
"gfix_pval_req", 335740936,
|
||||
"gfix_trn_req", 335740937,
|
||||
"gfix_full_req", 335740940,
|
||||
"gfix_usrname_req", 335740941,
|
||||
"gfix_pass_req", 335740942,
|
||||
"gfix_subs_name", 335740943,
|
||||
"gfix_wal_req", 335740944,
|
||||
"gfix_sec_req", 335740945,
|
||||
"gfix_nval_req", 335740946,
|
||||
"gfix_type_shut", 335740947,
|
||||
"gfix_retry", 335740948,
|
||||
"gfix_retry_db", 335740951,
|
||||
"gfix_exceed_max", 335740991,
|
||||
"gfix_corrupt_pool", 335740992,
|
||||
"gfix_mem_exhausted", 335740993,
|
||||
"gfix_bad_pool", 335740994,
|
||||
"gfix_trn_not_valid", 335740995,
|
||||
"gfix_unexp_eoi", 335741012,
|
||||
"gfix_recon_fail", 335741018,
|
||||
"gfix_trn_unknown", 335741036,
|
||||
"gfix_mode_req", 335741038,
|
||||
"gfix_opt_SQL_dialect", 335741039,
|
||||
"dsql_dbkey_from_non_table", 336003074,
|
||||
"dsql_transitional_numeric", 336003075,
|
||||
"dsql_dialect_warning_expr", 336003076,
|
||||
"sql_db_dialect_dtype_unsupport", 336003077,
|
||||
"isc_sql_dialect_conflict_num", 336003079,
|
||||
"dsql_warning_number_ambiguous", 336003080,
|
||||
"dsql_warning_number_ambiguous1", 336003081,
|
||||
"dsql_warn_precision_ambiguous", 336003082,
|
||||
"dsql_warn_precision_ambiguous1", 336003083,
|
||||
"dsql_warn_precision_ambiguous2", 336003084,
|
||||
"dyn_role_does_not_exist", 336068796,
|
||||
"dyn_no_grant_admin_opt", 336068797,
|
||||
"dyn_user_not_role_member", 336068798,
|
||||
"dyn_delete_role_failed", 336068799,
|
||||
"dyn_grant_role_to_user", 336068800,
|
||||
"dyn_inv_sql_role_name", 336068801,
|
||||
"dyn_dup_sql_role", 336068802,
|
||||
"dyn_kywd_spec_for_role", 336068803,
|
||||
"dyn_roles_not_supported", 336068804,
|
||||
"dyn_domain_name_exists", 336068812,
|
||||
"dyn_field_name_exists", 336068813,
|
||||
"dyn_dependency_exists", 336068814,
|
||||
"dyn_dtype_invalid", 336068815,
|
||||
"dyn_char_fld_too_small", 336068816,
|
||||
"dyn_invalid_dtype_conversion", 336068817,
|
||||
"dyn_dtype_conv_invalid", 336068818,
|
||||
"gbak_unknown_switch", 336330753,
|
||||
"gbak_page_size_missing", 336330754,
|
||||
"gbak_page_size_toobig", 336330755,
|
||||
"gbak_redir_ouput_missing", 336330756,
|
||||
"gbak_switches_conflict", 336330757,
|
||||
"gbak_unknown_device", 336330758,
|
||||
"gbak_no_protection", 336330759,
|
||||
"gbak_page_size_not_allowed", 336330760,
|
||||
"gbak_multi_source_dest", 336330761,
|
||||
"gbak_filename_missing", 336330762,
|
||||
"gbak_dup_inout_names", 336330763,
|
||||
"gbak_inv_page_size", 336330764,
|
||||
"gbak_db_specified", 336330765,
|
||||
"gbak_db_exists", 336330766,
|
||||
"gbak_unk_device", 336330767,
|
||||
"gbak_blob_info_failed", 336330772,
|
||||
"gbak_unk_blob_item", 336330773,
|
||||
"gbak_get_seg_failed", 336330774,
|
||||
"gbak_close_blob_failed", 336330775,
|
||||
"gbak_open_blob_failed", 336330776,
|
||||
"gbak_put_blr_gen_id_failed", 336330777,
|
||||
"gbak_unk_type", 336330778,
|
||||
"gbak_comp_req_failed", 336330779,
|
||||
"gbak_start_req_failed", 336330780,
|
||||
"gbak_rec_failed", 336330781,
|
||||
"gbak_rel_req_failed", 336330782,
|
||||
"gbak_db_info_failed", 336330783,
|
||||
"gbak_no_db_desc", 336330784,
|
||||
"gbak_db_create_failed", 336330785,
|
||||
"gbak_decomp_len_error", 336330786,
|
||||
"gbak_tbl_missing", 336330787,
|
||||
"gbak_blob_col_missing", 336330788,
|
||||
"gbak_create_blob_failed", 336330789,
|
||||
"gbak_put_seg_failed", 336330790,
|
||||
"gbak_rec_len_exp", 336330791,
|
||||
"gbak_inv_rec_len", 336330792,
|
||||
"gbak_exp_data_type", 336330793,
|
||||
"gbak_gen_id_failed", 336330794,
|
||||
"gbak_unk_rec_type", 336330795,
|
||||
"gbak_inv_bkup_ver", 336330796,
|
||||
"gbak_missing_bkup_desc", 336330797,
|
||||
"gbak_string_trunc", 336330798,
|
||||
"gbak_cant_rest_record", 336330799,
|
||||
"gbak_send_failed", 336330800,
|
||||
"gbak_no_tbl_name", 336330801,
|
||||
"gbak_unexp_eof", 336330802,
|
||||
"gbak_db_format_too_old", 336330803,
|
||||
"gbak_inv_array_dim", 336330804,
|
||||
"gbak_xdr_len_expected", 336330807,
|
||||
"gbak_open_bkup_error", 336330817,
|
||||
"gbak_open_error", 336330818,
|
||||
"gbak_missing_block_fac", 336330934,
|
||||
"gbak_inv_block_fac", 336330935,
|
||||
"gbak_block_fac_specified", 336330936,
|
||||
"gbak_missing_username", 336330940,
|
||||
"gbak_missing_password", 336330941,
|
||||
"gbak_missing_skipped_bytes", 336330952,
|
||||
"gbak_inv_skipped_bytes", 336330953,
|
||||
"gbak_err_restore_charset", 336330965,
|
||||
"gbak_err_restore_collation", 336330967,
|
||||
"gbak_read_error", 336330972,
|
||||
"gbak_write_error", 336330973,
|
||||
"gbak_db_in_use", 336330985,
|
||||
"gbak_sysmemex", 336330990,
|
||||
"gbak_restore_role_failed", 336331002,
|
||||
"gbak_role_op_missing", 336331005,
|
||||
"gbak_page_buffers_missing", 336331010,
|
||||
"gbak_page_buffers_wrong_param", 336331011,
|
||||
"gbak_page_buffers_restore", 336331012,
|
||||
"gbak_inv_size", 336331014,
|
||||
"gbak_file_outof_sequence", 336331015,
|
||||
"gbak_join_file_missing", 336331016,
|
||||
"gbak_stdin_not_supptd", 336331017,
|
||||
"gbak_stdout_not_supptd", 336331018,
|
||||
"gbak_bkup_corrupt", 336331019,
|
||||
"gbak_unk_db_file_spec", 336331020,
|
||||
"gbak_hdr_write_failed", 336331021,
|
||||
"gbak_disk_space_ex", 336331022,
|
||||
"gbak_size_lt_min", 336331023,
|
||||
"gbak_svc_name_missing", 336331025,
|
||||
"gbak_not_ownr", 336331026,
|
||||
"gbak_mode_req", 336331031,
|
||||
"gsec_cant_open_db", 336723983,
|
||||
"gsec_switches_error", 336723984,
|
||||
"gsec_no_op_spec", 336723985,
|
||||
"gsec_no_usr_name", 336723986,
|
||||
"gsec_err_add", 336723987,
|
||||
"gsec_err_modify", 336723988,
|
||||
"gsec_err_find_mod", 336723989,
|
||||
"gsec_err_rec_not_found", 336723990,
|
||||
"gsec_err_delete", 336723991,
|
||||
"gsec_err_find_del", 336723992,
|
||||
"gsec_err_find_disp", 336723996,
|
||||
"gsec_inv_param", 336723997,
|
||||
"gsec_op_specified", 336723998,
|
||||
"gsec_pw_specified", 336723999,
|
||||
"gsec_uid_specified", 336724000,
|
||||
"gsec_gid_specified", 336724001,
|
||||
"gsec_proj_specified", 336724002,
|
||||
"gsec_org_specified", 336724003,
|
||||
"gsec_fname_specified", 336724004,
|
||||
"gsec_mname_specified", 336724005,
|
||||
"gsec_lname_specified", 336724006,
|
||||
"gsec_inv_switch", 336724008,
|
||||
"gsec_amb_switch", 336724009,
|
||||
"gsec_no_op_specified", 336724010,
|
||||
"gsec_params_not_allowed", 336724011,
|
||||
"gsec_incompat_switch", 336724012,
|
||||
"gsec_inv_username", 336724044,
|
||||
"gsec_inv_pw_length", 336724045,
|
||||
"gsec_db_specified", 336724046,
|
||||
"gsec_db_admin_specified", 336724047,
|
||||
"gsec_db_admin_pw_specified", 336724048,
|
||||
"gsec_sql_role_specified", 336724049,
|
||||
"license_no_file", 336789504,
|
||||
"license_op_specified", 336789523,
|
||||
"license_op_missing", 336789524,
|
||||
"license_inv_switch", 336789525,
|
||||
"license_inv_switch_combo", 336789526,
|
||||
"license_inv_op_combo", 336789527,
|
||||
"license_amb_switch", 336789528,
|
||||
"license_inv_parameter", 336789529,
|
||||
"license_param_specified", 336789530,
|
||||
"license_param_req", 336789531,
|
||||
"license_syntx_error", 336789532,
|
||||
"license_dup_id", 336789534,
|
||||
"license_inv_id_key", 336789535,
|
||||
"license_err_remove", 336789536,
|
||||
"license_err_update", 336789537,
|
||||
"license_err_convert", 336789538,
|
||||
"license_err_unk", 336789539,
|
||||
"license_svc_err_add", 336789540,
|
||||
"license_svc_err_remove", 336789541,
|
||||
"license_eval_exists", 336789563,
|
||||
"gstat_unknown_switch", 336920577,
|
||||
"gstat_retry", 336920578,
|
||||
"gstat_wrong_ods", 336920579,
|
||||
"gstat_unexpected_eof", 336920580,
|
||||
"gstat_open_err", 336920605,
|
||||
"gstat_read_err", 336920606, "gstat_sysmemex", 336920607,
|
@ -27,18 +27,29 @@
|
||||
* readonly databases.
|
||||
*/
|
||||
/*
|
||||
$Id: common.h,v 1.4 2001-07-12 06:32:03 bellardo Exp $
|
||||
$Id: common.h,v 1.5 2001-07-29 17:42:21 skywalker Exp $
|
||||
*/
|
||||
|
||||
#ifndef JRD_COMMON_H
|
||||
#define JRD_COMMON_H
|
||||
|
||||
#include "objs/jrd/autoconfig.h"
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SYS_PARAM_H
|
||||
#include <sys/param.h>
|
||||
#endif
|
||||
|
||||
#ifndef INCLUDE_FB_MACROS_H
|
||||
#include "../include/fb_macros.h"
|
||||
#endif
|
||||
|
||||
#ifndef INCLUDE_FB_TYPES_H
|
||||
#include "../include/fb_types.h"
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
do not use links in source code to maintain platform neutraility
|
||||
*/
|
||||
@ -57,9 +68,6 @@ $Id: common.h,v 1.4 2001-07-12 06:32:03 bellardo Exp $
|
||||
#define CANCEL_OPERATION
|
||||
#endif
|
||||
|
||||
#ifndef GDS_FAR
|
||||
#define GDS_FAR
|
||||
#endif
|
||||
|
||||
|
||||
/* Linux for Intel platforms*/
|
||||
@ -93,7 +101,6 @@ $Id: common.h,v 1.4 2001-07-12 06:32:03 bellardo Exp $
|
||||
#define MOVE_FASTER(from,to,length) memcpy (to, from, (int) (length))
|
||||
#define MOVE_CLEAR(to,length) memset (to, 0, (int) (length))
|
||||
|
||||
#define VOLATILE volatile
|
||||
#endif /* LINUX */
|
||||
|
||||
/* Darwin Platforms */
|
||||
@ -122,10 +129,15 @@ $Id: common.h,v 1.4 2001-07-12 06:32:03 bellardo Exp $
|
||||
#define MOVE_FASTER(from,to,length) memcpy (to, from, (int) (length))
|
||||
#define MOVE_CLEAR(to,length) memset (to, 0, (int) (length))
|
||||
|
||||
#if 0 /* sys/param included up top, wait till John says if need #define. MOD 16-07-2001 */
|
||||
#ifdef DARWIN
|
||||
#define _PPC_PARAM_H_
|
||||
#endif
|
||||
#ifndef MAXPATHLEN
|
||||
#include <sys/param.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif /* Darwin Platforms */
|
||||
|
||||
|
||||
@ -237,8 +249,6 @@ $Id: common.h,v 1.4 2001-07-12 06:32:03 bellardo Exp $
|
||||
#define SETPGRP setpgrp ()
|
||||
#define SIGACTION_SUPPORTED
|
||||
#define NO_FLOCK
|
||||
#define CONST const
|
||||
#define VOLATILE volatile
|
||||
#define MEMMOVE(from,to,length) memmove ((void *)to, (void *)from, (size_t) length)
|
||||
/********* Reason for introducing MEMMOVE macro.
|
||||
|
||||
@ -426,7 +436,6 @@ $Id: common.h,v 1.4 2001-07-12 06:32:03 bellardo Exp $
|
||||
#define NO_NFS
|
||||
#undef LINKS_EXIST
|
||||
#define IEEE /* IEEE floating point arith. */
|
||||
#define CONST const
|
||||
|
||||
#define IMPLEMENTATION 47
|
||||
#define MEMMOVE(from,to,length) memmove (to, from, (int) (length))
|
||||
@ -574,8 +583,6 @@ typedef unsigned int64 UATOM;
|
||||
#define MEMMOVE(from,to,length) memmove ((void *)to, (void *)from, (size_t) length)
|
||||
#define STRICMP(s1, s2) stricmp(s1, s2)
|
||||
|
||||
#define CONST const
|
||||
#define VOLATILE volatile
|
||||
#define SYS_ARG isc_arg_win32
|
||||
|
||||
typedef __int64 SINT64;
|
||||
@ -731,8 +738,6 @@ typedef unsigned char BOOLEAN;
|
||||
#define DOUBLE_ALIGN 8
|
||||
#else
|
||||
#define IMPLEMENTATION 58
|
||||
#define CONST const
|
||||
#define VOLATILE volatile
|
||||
#define I386 1
|
||||
#define VAX 1
|
||||
#endif /* DG_X86 */
|
||||
@ -776,14 +781,8 @@ typedef unsigned char BOOLEAN;
|
||||
#define MOVE_FAST(from,to,length) memcpy (to, from, (int) (length))
|
||||
#define MOVE_FASTER(from,to,length) memcpy (to, from, (int) (length))
|
||||
#define MOVE_CLEAR(to,length) memset (to, 0, (int) (length))
|
||||
#define LONG_DEFINED
|
||||
|
||||
typedef int SLONG;
|
||||
typedef unsigned int ULONG;
|
||||
#define SQUAD_DEFINED
|
||||
typedef long SQUAD;
|
||||
typedef unsigned long UQUAD;
|
||||
#define NATIVE_QUAD
|
||||
|
||||
#define ATOM_DEFINED
|
||||
typedef long SATOM; /* 64 bit */
|
||||
typedef unsigned long UATOM;
|
||||
@ -1082,17 +1081,6 @@ typedef unsigned long DWORD;
|
||||
#define THREAD_ROUTINE
|
||||
#endif
|
||||
|
||||
#ifndef CONST
|
||||
/* To handle platforms which don't support ANSI keyword "const" */
|
||||
#define CONST /* nothing */
|
||||
#endif
|
||||
|
||||
#ifndef VOLATILE
|
||||
/* To handle platforms which don't support ANSI keyword "volatile" */
|
||||
#define VOLATILE /* nothing */
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* alignment macros */
|
||||
@ -1150,27 +1138,6 @@ typedef unsigned long DWORD;
|
||||
|
||||
/* data type definitions */
|
||||
|
||||
/* Basic data types */
|
||||
|
||||
#if 1
|
||||
/* TMN: TODO It seems SCHAR is used just about *everywhere* where a plain
|
||||
* "char" is really intended. This currently forces us to this bad definition.
|
||||
*/
|
||||
typedef char SCHAR;
|
||||
#else
|
||||
typedef signed char SCHAR;
|
||||
#endif
|
||||
typedef unsigned char UCHAR;
|
||||
typedef short SSHORT;
|
||||
typedef unsigned short USHORT;
|
||||
|
||||
|
||||
#ifndef LONG_DEFINED /* 32 bit */
|
||||
typedef long SLONG;
|
||||
typedef unsigned long ULONG;
|
||||
#else
|
||||
#undef LONG_DEFINED
|
||||
#endif
|
||||
|
||||
#ifndef INT64_DEFINED /* 64 bit */
|
||||
typedef long long int SINT64;
|
||||
@ -1179,12 +1146,6 @@ typedef unsigned long long int UINT64;
|
||||
#undef INT64_DEFINED
|
||||
#endif
|
||||
|
||||
#ifndef SQUAD_DEFINED /* 64 bit */
|
||||
typedef struct {
|
||||
SLONG high;
|
||||
ULONG low;
|
||||
} SQUAD;
|
||||
#endif
|
||||
|
||||
#ifndef ATOM_DEFINED /* 32 or 64 bit */
|
||||
typedef long SATOM;
|
||||
@ -1214,20 +1175,6 @@ typedef struct
|
||||
#define GDS_TIME ISC_TIME
|
||||
#define GDS_TIMESTAMP ISC_TIMESTAMP
|
||||
|
||||
typedef char TEXT; /* To be expunged over time */
|
||||
typedef unsigned char STEXT; /* Signed text - very rare */
|
||||
typedef unsigned char UTEXT; /* Unsigned text - common */
|
||||
typedef unsigned char BYTE; /* Unsigned byte - common */
|
||||
typedef char SBYTE; /* Signed byte - rare usage */
|
||||
typedef long STATUS;
|
||||
typedef long IPTR;
|
||||
typedef unsigned long U_IPTR;
|
||||
typedef void (GDS_FAR *FPTR_VOID) ();
|
||||
typedef void (GDS_FAR *FPTR_VOID_PTR) (void *);
|
||||
typedef int (GDS_FAR *FPTR_INT) ();
|
||||
typedef int (GDS_FAR *FPTR_INT_VOID_PTR) (void *);
|
||||
typedef ULONG RCRD_OFFSET;
|
||||
typedef USHORT FLD_LENGTH;
|
||||
|
||||
#ifndef ENUM
|
||||
#define ENUM enum
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
@ -34,7 +35,7 @@
|
||||
#include "../jrd/req.h"
|
||||
#include "../jrd/val.h"
|
||||
#include "../jrd/quad.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/intl.h"
|
||||
#include "../jrd/gdsassert.h"
|
||||
#include "../jrd/cvt_proto.h"
|
||||
@ -425,7 +426,7 @@ double PASCAL_ROUTINE CVT_get_double(DSC * desc, FPTR_VOID err)
|
||||
|
||||
if (exp >= SHORT_LIMIT)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
}
|
||||
else if (*p == '-' && !digit_seen && !sign)
|
||||
sign = -1;
|
||||
@ -448,7 +449,7 @@ double PASCAL_ROUTINE CVT_get_double(DSC * desc, FPTR_VOID err)
|
||||
the user know... */
|
||||
|
||||
if (ABSOLUT(scale) > DBL_MAX_10_EXP)
|
||||
reinterpret_cast<pfn_cvt_private_cludge>(err)(gds__arith_except, 0);
|
||||
reinterpret_cast<pfn_cvt_private_cludge>(err)(gds_arith_except, 0);
|
||||
|
||||
/*
|
||||
Repeated division is a good way to mung the least significant bits
|
||||
@ -475,7 +476,7 @@ double PASCAL_ROUTINE CVT_get_double(DSC * desc, FPTR_VOID err)
|
||||
break;
|
||||
|
||||
default:
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__badblk, 0); /* internal error */
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_badblk, 0); /* internal error */
|
||||
break;
|
||||
}
|
||||
|
||||
@ -489,7 +490,7 @@ double PASCAL_ROUTINE CVT_get_double(DSC * desc, FPTR_VOID err)
|
||||
the user know... */
|
||||
|
||||
if (ABSOLUT(scale) > DBL_MAX_10_EXP)
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__arith_except,
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_arith_except,
|
||||
0);
|
||||
|
||||
if (scale > 0)
|
||||
@ -564,13 +565,13 @@ SLONG CVT_get_long(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
do {
|
||||
if ((val64 > INT64_LIMIT) || (val64 < -INT64_LIMIT))
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
val64 *= 10;
|
||||
} while (++scale);
|
||||
|
||||
if ((val64 > LONG_MAX_int64) || (val64 < LONG_MIN_int64))
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
return (SLONG) val64;
|
||||
|
||||
case dtype_quad:
|
||||
@ -578,7 +579,7 @@ SLONG CVT_get_long(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
high = ((SLONG *) p)[HIGH_WORD];
|
||||
if ((value >= 0 && !high) || (value < 0 && high == -1))
|
||||
break;
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__arith_except,
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_arith_except,
|
||||
0);
|
||||
break;
|
||||
|
||||
@ -617,13 +618,13 @@ SLONG CVT_get_long(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
if (d > (double) LONG_MIN_real - 1.)
|
||||
return LONG_MIN;
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
}
|
||||
if (d > (double) LONG_MAX_real) {
|
||||
if (d < (double) LONG_MAX_real + 1.)
|
||||
return LONG_MAX_int;
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
}
|
||||
return (SLONG) d;
|
||||
|
||||
@ -645,7 +646,7 @@ SLONG CVT_get_long(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
break;
|
||||
|
||||
default:
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__badblk, 0); /* internal error */
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_badblk, 0); /* internal error */
|
||||
break;
|
||||
}
|
||||
|
||||
@ -679,7 +680,7 @@ SLONG CVT_get_long(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
do {
|
||||
if (value > LONG_LIMIT || value < -LONG_LIMIT)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
value *= 10;
|
||||
} while (++scale);
|
||||
|
||||
@ -888,7 +889,7 @@ SQUAD CVT_get_quad(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
else if (d < (double) QUAD_MAX_real + 1.)
|
||||
return QUAD_MAX_int;
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
}
|
||||
return QUAD_FROM_DOUBLE(d, err);
|
||||
|
||||
@ -910,7 +911,7 @@ SQUAD CVT_get_quad(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
break;
|
||||
|
||||
default:
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__badblk, 0); /* internal error */
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_badblk, 0); /* internal error */
|
||||
break;
|
||||
}
|
||||
|
||||
@ -920,7 +921,7 @@ SQUAD CVT_get_quad(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
return value;
|
||||
|
||||
#ifndef NATIVE_QUAD
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__badblk, 0); /* internal error */
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_badblk, 0); /* internal error */
|
||||
#else
|
||||
if (scale > 0) {
|
||||
if (desc->dsc_dtype == dtype_short ||
|
||||
@ -950,7 +951,7 @@ SQUAD CVT_get_quad(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
else
|
||||
do {
|
||||
if (value > QUAD_LIMIT || value < -QUAD_LIMIT)
|
||||
(*err) (gds__arith_except, 0);
|
||||
(*err) (gds_arith_except, 0);
|
||||
value *= 10;
|
||||
} while (++scale);
|
||||
#endif
|
||||
@ -1043,7 +1044,7 @@ SINT64 CVT_get_int64(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
|
||||
if (d < (double) QUAD_MIN_real || (double) QUAD_MAX_real < d)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
|
||||
return (SINT64) d;
|
||||
|
||||
@ -1065,7 +1066,7 @@ SINT64 CVT_get_int64(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
break;
|
||||
|
||||
default:
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__badblk, 0); /* internal error */
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_badblk, 0); /* internal error */
|
||||
break;
|
||||
}
|
||||
|
||||
@ -1100,7 +1101,7 @@ SINT64 CVT_get_int64(DSC * desc, SSHORT scale, FPTR_VOID err)
|
||||
do {
|
||||
if (value > INT64_LIMIT || value < -INT64_LIMIT)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
value *= 10;
|
||||
} while (++scale);
|
||||
|
||||
@ -1597,7 +1598,7 @@ void DLL_EXPORT CVT_move(DSC * from, DSC * to, FPTR_VOID err)
|
||||
#endif
|
||||
#endif
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
#ifndef REQUESTER
|
||||
#ifndef SUPERCLIENT
|
||||
}
|
||||
@ -1666,7 +1667,7 @@ void DLL_EXPORT CVT_move(DSC * from, DSC * to, FPTR_VOID err)
|
||||
do
|
||||
if (*q++ != ASCII_SPACE)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
while (--l);
|
||||
}
|
||||
return;
|
||||
@ -1711,7 +1712,7 @@ void DLL_EXPORT CVT_move(DSC * from, DSC * to, FPTR_VOID err)
|
||||
if (to->dsc_dtype != from->dsc_dtype)
|
||||
reinterpret_cast < pfn_cvt_private_cludge2 > (err) (gds_wish_list,
|
||||
gds_arg_gds,
|
||||
gds__blobnotsup,
|
||||
gds_blobnotsup,
|
||||
gds_arg_string,
|
||||
"move", 0);
|
||||
|
||||
@ -1731,7 +1732,7 @@ void DLL_EXPORT CVT_move(DSC * from, DSC * to, FPTR_VOID err)
|
||||
*(SSHORT *) p = (SSHORT) l;
|
||||
if (*(SSHORT *) p != l)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
return;
|
||||
|
||||
case dtype_long:
|
||||
@ -1757,7 +1758,7 @@ void DLL_EXPORT CVT_move(DSC * from, DSC * to, FPTR_VOID err)
|
||||
d_value = CVT_get_double(from, err);
|
||||
if (ABSOLUT(d_value) > FLOAT_MAX)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
*(float *) p = (float) d_value;
|
||||
}
|
||||
return;
|
||||
@ -1777,11 +1778,11 @@ void DLL_EXPORT CVT_move(DSC * from, DSC * to, FPTR_VOID err)
|
||||
if (from->dsc_dtype == dtype_array || from->dsc_dtype == dtype_blob)
|
||||
reinterpret_cast < pfn_cvt_private_cludge2 > (err) (gds_wish_list,
|
||||
gds_arg_gds,
|
||||
gds__blobnotsup,
|
||||
gds_blobnotsup,
|
||||
gds_arg_string,
|
||||
"move", 0);
|
||||
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__badblk, 0); /* internal error */
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_badblk, 0); /* internal error */
|
||||
}
|
||||
|
||||
|
||||
@ -1815,7 +1816,7 @@ static void conversion_error(DSC * desc, FPTR_VOID err)
|
||||
#endif
|
||||
}
|
||||
|
||||
reinterpret_cast < pfn_cvt_private_cludge2 > (err) (gds__convert_error,
|
||||
reinterpret_cast < pfn_cvt_private_cludge2 > (err) (gds_convert_error,
|
||||
gds_arg_string, p, 0);
|
||||
}
|
||||
|
||||
@ -1867,7 +1868,7 @@ version4 = (tdbb->tdbb_request->req_flags & req_blr_version4) ? TRUE : FALSE;
|
||||
break;
|
||||
default:
|
||||
assert(FALSE);
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__badblk, 0); /* internal error */
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_badblk, 0); /* internal error */
|
||||
break;
|
||||
}
|
||||
|
||||
@ -1967,7 +1968,7 @@ static SSHORT decompose(
|
||||
supported by the platform as a native datatype. */
|
||||
|
||||
if (dtype == dtype_quad)
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__badblk, 0); /* internal error */
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_badblk, 0); /* internal error */
|
||||
#endif
|
||||
|
||||
MOVE_CLEAR(&errd, sizeof(errd));
|
||||
@ -1998,11 +1999,11 @@ static SSHORT decompose(
|
||||
/* possibility of an overflow */
|
||||
if (value > limit_by_10)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
else if (((*p > '8') && (sign == -1))
|
||||
|| ((*p > '7') && (sign != -1)))
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
}
|
||||
|
||||
value = value * 10 + *p - '0';
|
||||
@ -2048,7 +2049,7 @@ static SSHORT decompose(
|
||||
|
||||
if (exp >= SHORT_LIMIT)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
}
|
||||
else if (*p == '-' && !digit_seen && !sign)
|
||||
sign = -1;
|
||||
@ -2178,7 +2179,7 @@ static void float_to_text(DSC * from, DSC * to, FPTR_VOID err)
|
||||
".", report an overflow exception. */
|
||||
if (precision < 2)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
|
||||
chars_printed = sprintf(temp, "%- #*.*g", width, precision, d);
|
||||
|
||||
@ -2191,7 +2192,7 @@ static void float_to_text(DSC * from, DSC * to, FPTR_VOID err)
|
||||
precision -= (chars_printed - width);
|
||||
if (precision < 2)
|
||||
reinterpret_cast < pfn_cvt_private_cludge >
|
||||
(err) (gds__arith_except, 0);
|
||||
(err) (gds_arith_except, 0);
|
||||
chars_printed =
|
||||
sprintf(temp, "%- #*.*g", width, precision, d);
|
||||
}
|
||||
@ -2236,7 +2237,7 @@ static void integer_to_text(DSC * from, DSC * to, FPTR_VOID err)
|
||||
supported by the platform as a native datatype. */
|
||||
|
||||
if (from->dsc_dtype == dtype_quad)
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds__badblk, 0); /* internal error */
|
||||
reinterpret_cast < pfn_cvt_private_cludge > (err) (gds_badblk, 0); /* internal error */
|
||||
#endif
|
||||
|
||||
pad = decimal = neg = 0;
|
||||
|
@ -22,11 +22,12 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/val.h"
|
||||
#include "../jrd/quad.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/intl.h"
|
||||
#include "../jrd/gdsassert.h"
|
||||
#include "../jrd/all_proto.h"
|
||||
@ -465,7 +466,7 @@ SSHORT CVT2_compare(DSC * arg1, DSC * arg2, FPTR_VOID err)
|
||||
case dtype_array:
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_wish_list,
|
||||
gds_arg_gds,
|
||||
gds__blobnotsup,
|
||||
gds_blobnotsup,
|
||||
gds_arg_string, "compare",
|
||||
0);
|
||||
break;
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include <signal.h>
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/ibase.h"
|
||||
#include "../jrd/everything.h"
|
||||
@ -32,7 +33,6 @@
|
||||
#define FLD(struct, string, field) string, (SCHAR*) OFFSET (struct, field), (SCHAR*) sizeof (((struct) 0)->field)
|
||||
#endif
|
||||
|
||||
|
||||
extern "C" {
|
||||
|
||||
|
||||
@ -312,24 +312,24 @@ static int (*dbg_all) (), (*dbg_block) (), (*dbg_examine) (), (*dbg_eval) (),
|
||||
#define SYM(struct, name) "name", OFFSET (struct, name), 0, symb_offset, sizeof (((struct) 0)->name),
|
||||
|
||||
struct symb dbt_symbols[] = {
|
||||
"blk", &dbg_block, symb_printer, sizeof(int),
|
||||
"ev", &dbg_eval, symb_printer, sizeof(int),
|
||||
"ex", &dbg_examine, symb_printer, sizeof(int),
|
||||
"dump", &dmp_page, symb_printer, sizeof(SLONG),
|
||||
"pool", &dbg_pool, symb_printer, 0,
|
||||
"pretty", &dbg_pretty, symb_printer, 0,
|
||||
"analyze", &dbg_analyze, symb_printer, 0,
|
||||
"window", &dbg_window, symb_printer, 0,
|
||||
"rpb", &dbg_rpb, symb_printer, 0,
|
||||
"check", &dbg_check, symb_printer, 0,
|
||||
{"blk", &dbg_block, symb_printer, sizeof(int)},
|
||||
{"ev", &dbg_eval, symb_printer, sizeof(int)},
|
||||
{"ex", &dbg_examine, symb_printer, sizeof(int)},
|
||||
{"dump", &dmp_page, symb_printer, sizeof(SLONG)},
|
||||
{"pool", &dbg_pool, symb_printer, 0},
|
||||
{"pretty", &dbg_pretty, symb_printer, 0},
|
||||
{"analyze", &dbg_analyze, symb_printer, 0},
|
||||
{"window", &dbg_window, symb_printer, 0},
|
||||
{"rpb", &dbg_rpb, symb_printer, 0},
|
||||
{"check", &dbg_check, symb_printer, 0},
|
||||
|
||||
"dirty", &dmp_dirty, symb_routine, 0,
|
||||
"active", &dmp_active, symb_routine, 0,
|
||||
"all", &dbg_all, symb_routine, 0,
|
||||
"open", &dbg_open, symb_routine, 0,
|
||||
"close", &dbg_close, symb_routine, 0,
|
||||
"bdbs", &dbg_bdbs, symb_routine, 0,
|
||||
"verify", &dbg_verify, symb_routine, 0,
|
||||
{"dirty", &dmp_dirty, symb_routine, 0},
|
||||
{"active", &dmp_active, symb_routine, 0},
|
||||
{"all", &dbg_all, symb_routine, 0},
|
||||
{"open", &dbg_open, symb_routine, 0},
|
||||
{"close", &dbg_close, symb_routine, 0},
|
||||
{"bdbs", &dbg_bdbs, symb_routine, 0},
|
||||
{"verify", &dbg_verify, symb_routine, 0},
|
||||
|
||||
/*
|
||||
"dbb", &dbb, symb_absolute, sizeof (dbb),
|
||||
|
@ -16,7 +16,8 @@
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
#include "../jrd/codes.h"
|
||||
#include "firebird.h"
|
||||
#include "gen/codes.h"
|
||||
|
||||
#define entry(r) r(status) int *status; {return error (status); };
|
||||
|
||||
|
199
src/jrd/dfw.epp
199
src/jrd/dfw.epp
@ -25,12 +25,13 @@
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include "../jrd/common.h"
|
||||
#include <stdarg.h>
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/val.h"
|
||||
#include "../jrd/irq.h"
|
||||
@ -91,7 +92,7 @@
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
|
||||
/* Pick up system relation ids */
|
||||
|
||||
@ -279,8 +280,8 @@ USHORT DFW_assign_index_type(DFW work, SSHORT field_type, SSHORT ttype)
|
||||
if (INTL_defined_type(tdbb, status, ttype))
|
||||
return INTL_TEXT_TO_INDEX(ttype);
|
||||
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__random, gds_arg_string,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_random, gds_arg_string,
|
||||
ERR_cstring(work->dfw_name), status[0], status[1], status[2],
|
||||
status[3],
|
||||
0);
|
||||
@ -784,9 +785,9 @@ static BOOLEAN add_file( TDBB tdbb, SSHORT phase, DFW work, TRA transaction)
|
||||
}
|
||||
else
|
||||
{
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__lock_timeout,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_lock_timeout,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_cstring(dbb->dbb_file->fil_string),
|
||||
0);
|
||||
return FALSE;
|
||||
@ -914,8 +915,8 @@ static BOOLEAN add_shadow( TDBB tdbb, SSHORT phase, DFW work, TRA transaction)
|
||||
|
||||
case 4:
|
||||
if (wal_defined(tdbb))
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__wal_shadow_err, 0);
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_wal_shadow_err, 0);
|
||||
/* Msg309: Write-Ahead Log with Shadowing configuration not allowed */
|
||||
|
||||
check_filename(work->dfw_name, work->dfw_name_length);
|
||||
@ -955,9 +956,9 @@ static BOOLEAN add_shadow( TDBB tdbb, SSHORT phase, DFW work, TRA transaction)
|
||||
* may be GDML
|
||||
*/
|
||||
if (!CCH_exclusive(tdbb, LCK_EX, WAIT_PERIOD))
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__lock_timeout,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_lock_timeout,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string,
|
||||
ERR_cstring(dbb->dbb_file->fil_string),
|
||||
0);
|
||||
@ -969,8 +970,8 @@ static BOOLEAN add_shadow( TDBB tdbb, SSHORT phase, DFW work, TRA transaction)
|
||||
/* We cannot add a file to a shadow that is still
|
||||
* in the process of being created.
|
||||
*/
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string,
|
||||
ERR_cstring(dbb->dbb_file->fil_string),
|
||||
0);
|
||||
@ -1146,32 +1147,32 @@ static void check_dependencies(TDBB tdbb,
|
||||
switch (dpdo_type)
|
||||
{
|
||||
case obj_relation:
|
||||
obj_type = gds__table_name;
|
||||
obj_type = gds_table_name;
|
||||
break;
|
||||
case obj_procedure:
|
||||
obj_type = gds__proc_name;
|
||||
obj_type = gds_proc_name;
|
||||
break;
|
||||
case obj_exception:
|
||||
obj_type = gds__exception_name;
|
||||
obj_type = gds_exception_name;
|
||||
break;
|
||||
default:
|
||||
assert(FALSE);
|
||||
break;
|
||||
}
|
||||
if (field_name)
|
||||
ERR_post( gds__no_meta_update,
|
||||
gds_arg_gds, gds__no_delete, /* Msg353: can not delete */
|
||||
gds_arg_gds, gds__field_name,
|
||||
ERR_post( gds_no_meta_update,
|
||||
gds_arg_gds, gds_no_delete, /* Msg353: can not delete */
|
||||
gds_arg_gds, gds_field_name,
|
||||
gds_arg_string, ERR_cstring(field_name),
|
||||
gds_arg_gds, gds__dependency,
|
||||
gds_arg_gds, gds_dependency,
|
||||
gds_arg_number, (SLONG) dep_counts[i],
|
||||
0); /* Msg310: there are %ld dependencies */
|
||||
else
|
||||
ERR_post( gds__no_meta_update,
|
||||
gds_arg_gds, gds__no_delete, /* can not delete */
|
||||
ERR_post( gds_no_meta_update,
|
||||
gds_arg_gds, gds_no_delete, /* can not delete */
|
||||
gds_arg_gds, obj_type,
|
||||
gds_arg_string, ERR_cstring(dpdo_name),
|
||||
gds_arg_gds, gds__dependency,
|
||||
gds_arg_gds, gds_dependency,
|
||||
gds_arg_number, (SLONG) dep_counts[i],
|
||||
0); /* there are %ld dependencies */
|
||||
}
|
||||
@ -1203,7 +1204,7 @@ static void check_filename( TEXT * name, USHORT l)
|
||||
valid = FALSE;
|
||||
|
||||
if (!valid || ISC_check_if_remote(file_name, FALSE))
|
||||
ERR_post(gds__no_meta_update, gds_arg_gds, gds__node_name_err, 0);
|
||||
ERR_post(gds_no_meta_update, gds_arg_gds, gds_node_name_err, 0);
|
||||
/* Msg305: A node name is not permitted in a secondary, shadow, or log file name */
|
||||
}
|
||||
|
||||
@ -1388,8 +1389,8 @@ static BOOLEAN create_index(TDBB tdbb,
|
||||
if (!relation)
|
||||
{
|
||||
EXE_unwind(tdbb, (REQ)request);
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__idx_create_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_idx_create_err,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
/* Msg308: can't create index %s */
|
||||
@ -1424,14 +1425,14 @@ static BOOLEAN create_index(TDBB tdbb,
|
||||
{
|
||||
EXE_unwind(tdbb, (REQ)request);
|
||||
if (!idx.idx_count)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__idx_seg_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_idx_seg_err,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
/* Msg304: segment count of 0 defined for index %s */
|
||||
else
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__idx_key_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_idx_key_err,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
/* Msg311: too many keys defined for index %s */
|
||||
@ -1457,29 +1458,29 @@ static BOOLEAN create_index(TDBB tdbb,
|
||||
{
|
||||
EXE_unwind(tdbb, (REQ)request);
|
||||
if (key_count > idx.idx_count)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__idx_key_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_idx_key_err,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
/* Msg311: too many keys defined for index %s */
|
||||
else if (SEG.RDB$FIELD_POSITION > idx.idx_count)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__inval_key_posn,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_inval_key_posn,
|
||||
/* Msg358: invalid key position */
|
||||
gds_arg_gds, gds__field_name,
|
||||
gds_arg_gds, gds_field_name,
|
||||
gds_arg_string, ERR_cstring(RFR.RDB$FIELD_NAME),
|
||||
gds_arg_gds, gds__index_name,
|
||||
gds_arg_gds, gds_index_name,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
else if (FLD.RDB$FIELD_TYPE == blr_blob)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__blob_idx_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_blob_idx_err,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
/* Msg350: attempt to index blob column in index %s */
|
||||
else
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__array_idx_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_array_idx_err,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
/* Msg351: attempt to index array column in index %s */
|
||||
@ -1509,14 +1510,14 @@ static BOOLEAN create_index(TDBB tdbb,
|
||||
REQUEST(irq_c_index) = (BLK)request;
|
||||
|
||||
if (key_count != idx.idx_count)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__key_field_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_key_field_err,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
/* Msg352: too few key columns found for index %s (incorrect column name?) */
|
||||
if (!relation)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__idx_create_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_idx_create_err,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
/* Msg308: can't create index %s */
|
||||
@ -1526,8 +1527,8 @@ static BOOLEAN create_index(TDBB tdbb,
|
||||
MET_scan_relation(tdbb, relation);
|
||||
|
||||
if (relation->rel_view_rse)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__idx_create_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_idx_create_err,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
/* Msg308: can't create index %s */
|
||||
@ -1548,8 +1549,8 @@ static BOOLEAN create_index(TDBB tdbb,
|
||||
TRUE)) &&
|
||||
!CCH_exclusive(tdbb, LCK_EX, LCK_NO_WAIT))
|
||||
{
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, partner_relation->rel_name,
|
||||
0);
|
||||
}
|
||||
@ -1614,9 +1615,9 @@ static BOOLEAN create_log( TDBB tdbb, SSHORT phase, DFW work, TRA transaction)
|
||||
return TRUE;
|
||||
else
|
||||
{
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__lock_timeout,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_lock_timeout,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_cstring(dbb->dbb_file->fil_string),
|
||||
0);
|
||||
return FALSE;
|
||||
@ -1625,8 +1626,8 @@ static BOOLEAN create_log( TDBB tdbb, SSHORT phase, DFW work, TRA transaction)
|
||||
|
||||
handle = NULL;
|
||||
if (shadow_defined(tdbb))
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__wal_shadow_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_wal_shadow_err,
|
||||
0);
|
||||
/* Msg309: Write-Ahead Log with Shadowing configuration not allowed */
|
||||
check_filename(work->dfw_name, work->dfw_name_length);
|
||||
@ -1797,10 +1798,10 @@ static BOOLEAN create_relation(TDBB tdbb,
|
||||
if (rel_id == X.RDB$RELATION_ID)
|
||||
{
|
||||
EXE_unwind(tdbb, (REQ)request);
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__table_name,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_table_name,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
gds_arg_gds, gds__imp_exc,
|
||||
gds_arg_gds, gds_imp_exc,
|
||||
0);
|
||||
}
|
||||
}
|
||||
@ -1991,11 +1992,11 @@ static BOOLEAN delete_field(TDBB tdbb,
|
||||
CMP_release(tdbb, (REQ)handle);
|
||||
|
||||
if (field_count)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__no_delete, /* Msg353: can not delete */
|
||||
gds_arg_gds, gds__field_name,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_no_delete, /* Msg353: can not delete */
|
||||
gds_arg_gds, gds_field_name,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
gds_arg_gds, gds__dependency,
|
||||
gds_arg_gds, gds_dependency,
|
||||
gds_arg_number, (SLONG) field_count,
|
||||
0); /* Msg310: there are %ld dependencies */
|
||||
|
||||
@ -2113,8 +2114,8 @@ static BOOLEAN delete_index(TDBB tdbb,
|
||||
if (index->idl_count ||
|
||||
!LCK_lock_non_blocking(tdbb, index->idl_lock, LCK_EX, wait))
|
||||
{
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, "INDEX",
|
||||
0);
|
||||
}
|
||||
@ -2220,9 +2221,9 @@ static BOOLEAN delete_log(TDBB tdbb, SSHORT phase, DFW work, TRA transaction)
|
||||
return TRUE;
|
||||
else
|
||||
{
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__lock_timeout,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_lock_timeout,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_cstring(dbb->dbb_file->fil_string),
|
||||
0);
|
||||
return FALSE;
|
||||
@ -2329,8 +2330,8 @@ static BOOLEAN delete_procedure(TDBB tdbb,
|
||||
LCK_EX,
|
||||
wait))
|
||||
{
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
}
|
||||
@ -2365,8 +2366,8 @@ static BOOLEAN delete_procedure(TDBB tdbb,
|
||||
if (CMP_clone_active(procedure->prc_request))
|
||||
{
|
||||
procedure->prc_flags = old_flags;
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
}
|
||||
@ -2447,11 +2448,11 @@ static BOOLEAN delete_relation(TDBB tdbb,
|
||||
CMP_release(tdbb, (REQ)request);
|
||||
|
||||
if (view_count)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__no_delete, /* Msg353: can not delete */
|
||||
gds_arg_gds, gds__table_name,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_no_delete, /* Msg353: can not delete */
|
||||
gds_arg_gds, gds_table_name,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
gds_arg_gds, gds__dependency,
|
||||
gds_arg_gds, gds_dependency,
|
||||
gds_arg_number, (SLONG) view_count,
|
||||
0); /* Msg310: there are %ld dependencies */
|
||||
check_dependencies(tdbb, work->dfw_name, (TEXT*)NULL_PTR,
|
||||
@ -2486,8 +2487,8 @@ static BOOLEAN delete_relation(TDBB tdbb,
|
||||
{
|
||||
if (adjusted)
|
||||
++relation->rel_use_count;
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
}
|
||||
@ -2522,8 +2523,8 @@ static BOOLEAN delete_relation(TDBB tdbb,
|
||||
}
|
||||
|
||||
if (relation->rel_sweep_count)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
|
||||
@ -2631,11 +2632,11 @@ static BOOLEAN delete_rfr( TDBB tdbb, SSHORT phase, DFW work, TRA transaction)
|
||||
CMP_release(tdbb, (REQ)handle);
|
||||
|
||||
if (field_count)
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__no_delete, /* Msg353: can not delete */
|
||||
gds_arg_gds, gds__field_name,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_no_delete, /* Msg353: can not delete */
|
||||
gds_arg_gds, gds_field_name,
|
||||
gds_arg_string, ERR_cstring(f),
|
||||
gds_arg_gds, gds__dependency,
|
||||
gds_arg_gds, gds_dependency,
|
||||
gds_arg_number, (SLONG) field_count,
|
||||
0); /* Msg310: there are %ld dependencies */
|
||||
|
||||
@ -2677,8 +2678,8 @@ static BOOLEAN delete_rfr( TDBB tdbb, SSHORT phase, DFW work, TRA transaction)
|
||||
|
||||
if (!field_count)
|
||||
{
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__del_last_field,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_del_last_field,
|
||||
0);
|
||||
/* Msg354: last column in a relation cannot be deleted */
|
||||
}
|
||||
@ -3163,10 +3164,10 @@ static FMT make_format( TDBB tdbb, REL relation, USHORT version, TFB stack)
|
||||
if (offset > MAX_FORMAT_SIZE)
|
||||
{
|
||||
ALL_release((FRB)format);
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__rec_size_err,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_rec_size_err,
|
||||
gds_arg_number, (SLONG) offset,
|
||||
gds_arg_gds, gds__table_name,
|
||||
gds_arg_gds, gds_table_name,
|
||||
gds_arg_string, ERR_cstring(relation->rel_name),
|
||||
0);
|
||||
/* Msg361: new record size of %ld bytes is too big */
|
||||
@ -3272,10 +3273,10 @@ static BOOLEAN make_version(TDBB tdbb,
|
||||
if (REL.RDB$FORMAT == 255)
|
||||
{
|
||||
EXE_unwind(tdbb, (REQ)request_fmt1);
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__table_name,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_table_name,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
gds_arg_gds, gds__version_err,
|
||||
gds_arg_gds, gds_version_err,
|
||||
0);
|
||||
/* Msg357: too many versions */
|
||||
}
|
||||
@ -3427,8 +3428,8 @@ static BOOLEAN make_version(TDBB tdbb,
|
||||
{
|
||||
EXE_unwind(tdbb, (REQ)request_fmt1);
|
||||
EXE_unwind(tdbb, (REQ)request_fmtx);
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__random,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_random,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
status[0], status[1], status[2], status[3],
|
||||
0);
|
||||
@ -3729,8 +3730,8 @@ static BOOLEAN modify_procedure(TDBB tdbb,
|
||||
|
||||
if (!LCK_convert_non_blocking(tdbb, procedure->prc_existence_lock,
|
||||
LCK_EX, wait))
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
|
||||
@ -3775,10 +3776,10 @@ static BOOLEAN modify_procedure(TDBB tdbb,
|
||||
USHORT prc_alter_count = procedure->prc_alter_count;
|
||||
if (prc_alter_count > MAX_PROC_ALTER)
|
||||
{
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__proc_name,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_proc_name,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
gds_arg_gds, gds__version_err,
|
||||
gds_arg_gds, gds_version_err,
|
||||
0);
|
||||
/* Msg357: too many versions */
|
||||
}
|
||||
@ -3804,8 +3805,8 @@ static BOOLEAN modify_procedure(TDBB tdbb,
|
||||
if (procedure->prc_request)
|
||||
{
|
||||
if (CMP_clone_active(procedure->prc_request))
|
||||
ERR_post(gds__no_meta_update,
|
||||
gds_arg_gds, gds__obj_in_use,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_cstring(work->dfw_name),
|
||||
0);
|
||||
|
||||
|
@ -49,6 +49,7 @@
|
||||
* copyright (c) 1986 by Groton Database Systems, Inc.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/divorce.h"
|
||||
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <windows.h>
|
||||
#include <signal.h>
|
||||
|
||||
|
@ -23,6 +23,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include "../jrd/sort.h"
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
|
@ -29,13 +29,14 @@
|
||||
* Change: Corrected routine to use new variables from PAG_init.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/ods.h"
|
||||
#include "../jrd/req.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/sqz.h"
|
||||
#include "../jrd/irq.h"
|
||||
#include "../jrd/blb.h"
|
||||
|
@ -23,11 +23,12 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/dsc.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/constants.h"
|
||||
#include "../jrd/intl.h"
|
||||
#include "../jrd/gds_proto.h"
|
||||
|
@ -23,6 +23,7 @@
|
||||
* case insensitive.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
@ -35,7 +36,7 @@
|
||||
#include "../jrd/scl.h"
|
||||
#include "../jrd/drq.h"
|
||||
#include "../jrd/flags.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/lls.h"
|
||||
#include "../jrd/all.h"
|
||||
#include "../jrd/met.h"
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
@ -36,7 +37,7 @@
|
||||
#include "../jrd/drq.h"
|
||||
#include "../jrd/req.h"
|
||||
#include "../jrd/flags.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/lls.h"
|
||||
#include "../jrd/all.h"
|
||||
#include "../jrd/met.h"
|
||||
@ -81,6 +82,7 @@
|
||||
|
||||
DATABASE DB = STATIC "yachts.gdb";
|
||||
|
||||
|
||||
static CONST UCHAR who_blr[] =
|
||||
{
|
||||
blr_version5,
|
||||
@ -4128,7 +4130,7 @@ static BOOLEAN get_who( TDBB tdbb, GBL gbl, SCHAR * name)
|
||||
|
||||
if (!request)
|
||||
{
|
||||
request = (BLK) CMP_compile2(tdbb, who_blr, TRUE);
|
||||
request = (BLK) CMP_compile2(tdbb, const_cast<UCHAR*>(who_blr), TRUE);
|
||||
}
|
||||
EXE_start(tdbb, (REQ) request, gbl->gbl_transaction);
|
||||
EXE_receive(tdbb, (REQ) request, 0, 32, (UCHAR*)name);
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
@ -32,7 +33,7 @@
|
||||
#include "../jrd/scl.h"
|
||||
#include "../jrd/drq.h"
|
||||
#include "../jrd/flags.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/lls.h"
|
||||
#include "../jrd/all.h"
|
||||
#include "../jrd/met.h"
|
||||
|
@ -23,6 +23,7 @@
|
||||
* if it has dimensions, rdb$field_dimensions should be updated, too.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
|
||||
@ -34,7 +35,7 @@
|
||||
#include "../jrd/scl.h"
|
||||
#include "../jrd/drq.h"
|
||||
#include "../jrd/flags.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/lls.h"
|
||||
#include "../jrd/all.h"
|
||||
#include "../jrd/met.h"
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
@ -32,7 +33,7 @@
|
||||
#include "../jrd/scl.h"
|
||||
#include "../jrd/drq.h"
|
||||
#include "../jrd/flags.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/lls.h"
|
||||
#include "../jrd/all.h"
|
||||
#include "../jrd/met.h"
|
||||
|
@ -1,3 +1,14 @@
|
||||
|
||||
|
||||
#include "firebird.h"
|
||||
|
||||
|
||||
#if defined(HAVE_UNISTD_H) && defined(LINUX)
|
||||
#define _XOPEN_SOURCE
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/enc_proto.h"
|
||||
|
||||
|
@ -21,9 +21,10 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
|
||||
database db = "source/jrd/gds_functions.gdb";
|
||||
|
||||
|
@ -21,12 +21,13 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/common.h"
|
||||
#include <stdarg.h>
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/iberr.h"
|
||||
|
||||
#if ( !defined( REQUESTER) && !defined( SUPERCLIENT))
|
||||
@ -79,7 +80,7 @@ void DLL_EXPORT ERR_bugcheck(int number)
|
||||
|
||||
CCH_shutdown_database(dbb);
|
||||
|
||||
internal_error(gds__bug_check, number);
|
||||
internal_error(gds_bug_check, number);
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -106,7 +107,7 @@ void DLL_EXPORT ERR_bugcheck_msg(CONST TEXT* msg)
|
||||
|
||||
CCH_shutdown_database(dbb);
|
||||
|
||||
ERR_post(gds__bug_check, gds_arg_string, ERR_cstring(msg), 0);
|
||||
ERR_post(gds_bug_check, gds_arg_string, ERR_cstring(msg), 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -125,7 +126,7 @@ void DLL_EXPORT ERR_corrupt(int number)
|
||||
*
|
||||
**************************************/
|
||||
|
||||
internal_error(gds__db_corrupt, number);
|
||||
internal_error(gds_db_corrupt, number);
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -187,13 +188,13 @@ void DLL_EXPORT ERR_duplicate_error(IDX_E code,
|
||||
|
||||
switch (code) {
|
||||
case idx_e_keytoobig:
|
||||
ERR_post(gds__imp_exc, gds_arg_gds, gds__keytoobig,
|
||||
ERR_post(gds_imp_exc, gds_arg_gds, gds_keytoobig,
|
||||
gds_arg_string, ERR_cstring(index_name), 0);
|
||||
break;
|
||||
|
||||
case idx_e_nullunique:
|
||||
ERR_post(gds__no_dup, gds_arg_string, ERR_cstring(index_name),
|
||||
gds_arg_gds, gds__nullsegkey, 0);
|
||||
ERR_post(gds_no_dup, gds_arg_string, ERR_cstring(index_name),
|
||||
gds_arg_gds, gds_nullsegkey, 0);
|
||||
break;
|
||||
|
||||
case idx_e_conversion:
|
||||
@ -201,18 +202,18 @@ void DLL_EXPORT ERR_duplicate_error(IDX_E code,
|
||||
break;
|
||||
|
||||
case idx_e_foreign:
|
||||
ERR_post(gds__foreign_key,
|
||||
ERR_post(gds_foreign_key,
|
||||
gds_arg_string, ERR_cstring(constraint_name),
|
||||
gds_arg_string, relation->rel_name, 0);
|
||||
break;
|
||||
|
||||
default:
|
||||
if (constraint[0])
|
||||
ERR_post(gds__unique_key_violation,
|
||||
ERR_post(gds_unique_key_violation,
|
||||
gds_arg_string, ERR_cstring(constraint_name),
|
||||
gds_arg_string, relation->rel_name, 0);
|
||||
else
|
||||
ERR_post(gds__no_dup, gds_arg_string, ERR_cstring(index_name), 0);
|
||||
ERR_post(gds_no_dup, gds_arg_string, ERR_cstring(index_name), 0);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@ -239,7 +240,7 @@ void DLL_EXPORT ERR_error(int number)
|
||||
if (gds__msg_lookup(0, JRD_BUGCHK, number, sizeof(errmsg), errmsg, NULL) <
|
||||
1) sprintf(errmsg, "error code %d", number);
|
||||
|
||||
ERR_post(gds__random, gds_arg_string, ERR_cstring(errmsg), 0);
|
||||
ERR_post(gds_random, gds_arg_string, ERR_cstring(errmsg), 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -260,7 +261,7 @@ void DLL_EXPORT ERR_error_msg(CONST TEXT* msg)
|
||||
**************************************/
|
||||
|
||||
DEBUG;
|
||||
ERR_post(gds__random, gds_arg_string, ERR_cstring(msg), 0);
|
||||
ERR_post(gds_random, gds_arg_string, ERR_cstring(msg), 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -21,11 +21,12 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/thd.h"
|
||||
#include "../jrd/event.h"
|
||||
#include "../jrd/gdsassert.h"
|
||||
@ -292,7 +293,7 @@ EVH EVENT_init(STATUS * status_vector, USHORT server_flag)
|
||||
|
||||
if (!(EVENT_header = (EVH) ISC_map_file(status_vector,
|
||||
event_file,
|
||||
reinterpret_cast < void (*)() >
|
||||
reinterpret_cast < void (*)(void *, struct sh_mem*, int) >
|
||||
(init), 0, EVENT_default_size,
|
||||
&EVENT_data))) {
|
||||
#ifdef SERVER
|
||||
|
@ -19,7 +19,7 @@
|
||||
*
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
* $Id: evl.cpp,v 1.3 2001-07-12 05:46:05 bellardo Exp $
|
||||
* $Id: evl.cpp,v 1.4 2001-07-29 17:42:22 skywalker Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -43,6 +43,7 @@
|
||||
* Change: Test the null flag before trying to expand the value.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/val.h"
|
||||
@ -50,7 +51,7 @@
|
||||
#include "../jrd/exe.h"
|
||||
#include "../jrd/sbm.h"
|
||||
#include "../jrd/blb.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/scl.h"
|
||||
#include "../jrd/lck.h"
|
||||
#include "../jrd/lls.h"
|
||||
@ -248,7 +249,7 @@ DSC *DLL_EXPORT EVL_assign_to(TDBB tdbb, register NOD node)
|
||||
EVL_field(0, record, (USHORT) node->nod_arg[e_fld_id],
|
||||
&impure->vlu_desc);
|
||||
if (!impure->vlu_desc.dsc_address)
|
||||
ERR_post(gds__read_only_field, 0);
|
||||
ERR_post(gds_read_only_field, 0);
|
||||
return &impure->vlu_desc;
|
||||
|
||||
case nod_null:
|
||||
@ -900,7 +901,7 @@ DSC *DLL_EXPORT EVL_expr(TDBB tdbb, register NOD node)
|
||||
if (extract_part != blr_extract_hour &&
|
||||
extract_part != blr_extract_minute &&
|
||||
extract_part != blr_extract_second)
|
||||
ERR_post(gds__expression_eval_err, 0);
|
||||
ERR_post(gds_expression_eval_err, 0);
|
||||
break;
|
||||
case dtype_sql_date:
|
||||
timestamp.timestamp_date = *(GDS_DATE *) value->dsc_address;
|
||||
@ -909,14 +910,14 @@ DSC *DLL_EXPORT EVL_expr(TDBB tdbb, register NOD node)
|
||||
if (extract_part == blr_extract_hour ||
|
||||
extract_part == blr_extract_minute ||
|
||||
extract_part == blr_extract_second)
|
||||
ERR_post(gds__expression_eval_err, 0);
|
||||
ERR_post(gds_expression_eval_err, 0);
|
||||
break;
|
||||
case dtype_timestamp:
|
||||
timestamp = *((GDS_TIMESTAMP *) value->dsc_address);
|
||||
isc_decode_timestamp(×tamp, ×);
|
||||
break;
|
||||
default:
|
||||
ERR_post(gds__expression_eval_err, 0);
|
||||
ERR_post(gds_expression_eval_err, 0);
|
||||
break;
|
||||
}
|
||||
impure->vlu_desc.dsc_dtype = dtype_short;
|
||||
@ -1127,7 +1128,7 @@ BOOLEAN DLL_EXPORT EVL_field(register REL relation,
|
||||
DEV_BLKCHK(record, type_rec);
|
||||
|
||||
if (!record) {
|
||||
ERR_warning(gds__no_cur_rec, 0);
|
||||
ERR_warning(gds_no_cur_rec, 0);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -1202,7 +1203,7 @@ BOOLEAN DLL_EXPORT EVL_field(register REL relation,
|
||||
lit * >(temp_field->fld_default_value);
|
||||
|
||||
if (default_literal->nod_type == nod_null)
|
||||
ERR_post(gds__not_valid,
|
||||
ERR_post(gds_not_valid,
|
||||
gds_arg_string, temp_field->fld_name,
|
||||
gds_arg_string, "*** null ***", 0);
|
||||
|
||||
@ -2563,7 +2564,7 @@ static DSC *add_datetime(DSC * desc, NOD node, VLU value)
|
||||
return add_sql_date(desc, node, value);
|
||||
|
||||
case DTYPE_CANNOT:
|
||||
ERR_post(gds__expression_eval_err, 0);
|
||||
ERR_post(gds_expression_eval_err, 0);
|
||||
return NULL;
|
||||
};
|
||||
}
|
||||
@ -2656,7 +2657,7 @@ static DSC *add_sql_date(DSC * desc, NOD node, VLU value)
|
||||
|
||||
if ((times.tm_year + 1900) < MIN_YEAR
|
||||
|| (times.tm_year) + 1900 >
|
||||
MAX_YEAR) ERR_post(gds__expression_eval_err, gds_arg_gds,
|
||||
MAX_YEAR) ERR_post(gds_expression_eval_err, gds_arg_gds,
|
||||
isc_date_range_exceeded, 0);
|
||||
|
||||
value->vlu_misc.vlu_sql_date = d2;
|
||||
@ -2812,7 +2813,7 @@ static DSC *add_timestamp(DSC * desc, NOD node, VLU value)
|
||||
*(GDS_TIME *) desc->dsc_address;
|
||||
goto return_result;
|
||||
}
|
||||
ERR_post(gds__expression_eval_err, 0);
|
||||
ERR_post(gds_expression_eval_err, 0);
|
||||
}
|
||||
else if (desc->dsc_dtype == dtype_sql_date) {
|
||||
/* TIME + DATE */
|
||||
@ -2824,7 +2825,7 @@ static DSC *add_timestamp(DSC * desc, NOD node, VLU value)
|
||||
*(GDS_DATE *) desc->dsc_address;
|
||||
goto return_result;
|
||||
}
|
||||
ERR_post(gds__expression_eval_err, 0);
|
||||
ERR_post(gds_expression_eval_err, 0);
|
||||
}
|
||||
|
||||
/* For historical reasons (behavior prior to V6),
|
||||
@ -2857,7 +2858,7 @@ static DSC *add_timestamp(DSC * desc, NOD node, VLU value)
|
||||
|
||||
if (!((value->vlu_desc.dsc_dtype == dtype_timestamp) ||
|
||||
DTYPE_IS_TEXT(value->vlu_desc.dsc_dtype)))
|
||||
ERR_post(gds__expression_eval_err, 0);
|
||||
ERR_post(gds_expression_eval_err, 0);
|
||||
|
||||
d1 = get_timestamp_to_isc_ticks(&value->vlu_desc);
|
||||
d2 = get_timestamp_to_isc_ticks(desc);
|
||||
@ -2931,7 +2932,7 @@ static DSC *add_timestamp(DSC * desc, NOD node, VLU value)
|
||||
which are errors */
|
||||
|
||||
if (op1_is_timestamp == op2_is_timestamp)
|
||||
ERR_post(gds__expression_eval_err, 0);
|
||||
ERR_post(gds_expression_eval_err, 0);
|
||||
|
||||
if (op1_is_timestamp) {
|
||||
d1 = get_timestamp_to_isc_ticks(&value->vlu_desc);
|
||||
@ -2972,7 +2973,7 @@ static DSC *add_timestamp(DSC * desc, NOD node, VLU value)
|
||||
|
||||
if ((times.tm_year + 1900) < MIN_YEAR
|
||||
|| (times.tm_year) + 1900 >
|
||||
MAX_YEAR) ERR_post(gds__expression_eval_err, gds_arg_gds,
|
||||
MAX_YEAR) ERR_post(gds_expression_eval_err, gds_arg_gds,
|
||||
isc_date_range_exceeded, 0);
|
||||
|
||||
|
||||
@ -3052,7 +3053,7 @@ static DSC *binary_value(TDBB tdbb, NOD node, VLU impure)
|
||||
case nod_divide: /* dialect-1 semantics */
|
||||
divisor = MOV_get_double(desc2);
|
||||
if (divisor == 0)
|
||||
ERR_post(gds__arith_except, 0);
|
||||
ERR_post(gds_arith_except, 0);
|
||||
impure->vlu_misc.vlu_double =
|
||||
DOUBLE_DIVIDE(MOV_get_double(desc1), divisor);
|
||||
impure->vlu_desc.dsc_dtype = DEFAULT_DOUBLE;
|
||||
@ -3547,7 +3548,7 @@ static DSC *eval_statistical(TDBB tdbb, NOD node, VLU impure)
|
||||
if (node->nod_arg[e_stat_default])
|
||||
desc = EVL_expr(tdbb, node->nod_arg[e_stat_default]);
|
||||
else
|
||||
ERR_post(gds__from_no_match, 0);
|
||||
ERR_post(gds_from_no_match, 0);
|
||||
}
|
||||
flag = request->req_flags;
|
||||
break;
|
||||
@ -3854,7 +3855,7 @@ static DSC *lock_record(TDBB tdbb, NOD node, VLU impure)
|
||||
desc = EVL_expr(tdbb, node->nod_arg[e_lockrec_level]);
|
||||
lock_level = (USHORT) MOV_get_long(desc, 0);
|
||||
if (lock_level > LCK_EX)
|
||||
ERR_post(gds__bad_lock_level, gds_arg_number, (SLONG) lock_level, 0);
|
||||
ERR_post(gds_bad_lock_level, gds_arg_number, (SLONG) lock_level, 0);
|
||||
|
||||
/* perform the actual lock (or unlock) */
|
||||
|
||||
@ -3863,7 +3864,7 @@ static DSC *lock_record(TDBB tdbb, NOD node, VLU impure)
|
||||
if (!lock_level)
|
||||
RLCK_unlock_record(0, rpb);
|
||||
else if (!(lock = RLCK_lock_record(rpb, lock_level, 0, 0)))
|
||||
ERR_warning(gds__record_lock, 0);
|
||||
ERR_warning(gds_record_lock, 0);
|
||||
|
||||
/* return the lock handle (actually the pointer to the lock block) */
|
||||
|
||||
@ -3928,7 +3929,7 @@ static DSC *lock_relation(TDBB tdbb, NOD node, VLU impure)
|
||||
desc = EVL_expr(tdbb, node->nod_arg[e_lockrel_level]);
|
||||
lock_level = (USHORT) MOV_get_long(desc, 0);
|
||||
if (lock_level > LCK_EX)
|
||||
ERR_post(gds__bad_lock_level, gds_arg_number, (SLONG) lock_level, 0);
|
||||
ERR_post(gds_bad_lock_level, gds_arg_number, (SLONG) lock_level, 0);
|
||||
|
||||
/* perform the actual lock (or unlock) */
|
||||
|
||||
@ -4231,7 +4232,7 @@ static DSC *divide2(DSC * desc, VLU value, NOD node)
|
||||
if (node->nod_flags & nod_double) {
|
||||
d2 = MOV_get_double(desc);
|
||||
if (d2 == 0.0)
|
||||
ERR_post(gds__arith_except, 0);
|
||||
ERR_post(gds_arith_except, 0);
|
||||
d1 = MOV_get_double(&value->vlu_desc);
|
||||
value->vlu_misc.vlu_double = DOUBLE_DIVIDE(d1, d2);
|
||||
value->vlu_desc.dsc_dtype = DEFAULT_DOUBLE;
|
||||
@ -4280,7 +4281,7 @@ static DSC *divide2(DSC * desc, VLU value, NOD node)
|
||||
*/
|
||||
i2 = MOV_get_int64(desc, desc->dsc_scale);
|
||||
if (i2 == 0)
|
||||
ERR_post(gds__arith_except, 0);
|
||||
ERR_post(gds_arith_except, 0);
|
||||
|
||||
i1 = MOV_get_int64(&value->vlu_desc, value->vlu_desc.dsc_scale);
|
||||
|
||||
@ -4319,7 +4320,7 @@ static DSC *divide2(DSC * desc, VLU value, NOD node)
|
||||
addl_scale++;
|
||||
}
|
||||
if (addl_scale < 0)
|
||||
ERR_post(gds__arith_except, 0);
|
||||
ERR_post(gds_arith_except, 0);
|
||||
|
||||
return &value->vlu_desc;
|
||||
}
|
||||
@ -4844,7 +4845,7 @@ static SSHORT string_function(
|
||||
ttype, &q1, (VARY *) temp3,
|
||||
TEMP_SIZE(temp3));
|
||||
if (!l3)
|
||||
ERR_post(gds__like_escape_invalid, 0);
|
||||
ERR_post(gds_like_escape_invalid, 0);
|
||||
/* Grab the first character from the string */
|
||||
consumed =
|
||||
reinterpret_cast < USHORT(*)(...) >
|
||||
@ -4852,7 +4853,7 @@ static SSHORT string_function(
|
||||
|
||||
/* If characters left, or null byte character, return error */
|
||||
if (consumed <= 0 || consumed != l3 || (escape == 0))
|
||||
ERR_post(gds__like_escape_invalid, 0);
|
||||
ERR_post(gds_like_escape_invalid, 0);
|
||||
|
||||
#ifdef STACK_REDUCTION
|
||||
ALL_release(temp_str);
|
||||
|
@ -107,7 +107,7 @@ USHORT LIKENAME(TDBB tdbb, TEXTTYPE obj, LIKETYPE * p1, SSHORT l1_bytes, /* byte
|
||||
escape = TRUE;
|
||||
}
|
||||
if (!escape)
|
||||
ERR_post(gds__like_escape_invalid, 0);
|
||||
ERR_post(gds_like_escape_invalid, 0);
|
||||
}
|
||||
if (!escape && (c == (LIKETYPE) SQL_MATCH_ANY)) {
|
||||
while ((l2 > 0) && (*p2 == (LIKETYPE) SQL_MATCH_ANY)) {
|
||||
|
@ -21,9 +21,10 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: exe.cpp,v 1.2 2001-07-12 05:46:05 bellardo Exp $
|
||||
$Id: exe.cpp,v 1.3 2001-07-29 17:42:22 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <time.h>
|
||||
|
||||
#include "../jrd/common.h"
|
||||
@ -34,7 +35,7 @@ $Id: exe.cpp,v 1.2 2001-07-12 05:46:05 bellardo Exp $
|
||||
#include "../jrd/val.h"
|
||||
#include "../jrd/exe.h"
|
||||
#include "../jrd/tra.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/ods.h"
|
||||
#include "../jrd/btr.h"
|
||||
#include "../jrd/rse.h"
|
||||
@ -461,7 +462,7 @@ REQ EXE_find_request(TDBB tdbb, REQ request, BOOLEAN validate)
|
||||
|
||||
if (count > MAX_CLONES) {
|
||||
THD_MUTEX_UNLOCK(dbb->dbb_mutexes + DBB_MUTX_clone);
|
||||
ERR_post(gds__req_max_clones_exceeded, 0);
|
||||
ERR_post(gds_req_max_clones_exceeded, 0);
|
||||
}
|
||||
if (!clone)
|
||||
clone = CMP_clone_request(tdbb, request, n, validate);
|
||||
@ -500,11 +501,11 @@ void EXE_mark_crack(TDBB tdbb, RSB rsb, USHORT flag)
|
||||
RSE_MARK_CRACK(tdbb, rsb, flag);
|
||||
|
||||
if (flag == irsb_eof)
|
||||
ERR_warning(gds__stream_eof, 0);
|
||||
ERR_warning(gds_stream_eof, 0);
|
||||
else if (flag == irsb_bof)
|
||||
ERR_warning(gds__stream_bof, 0);
|
||||
ERR_warning(gds_stream_bof, 0);
|
||||
else if (flag & irsb_crack)
|
||||
ERR_warning(gds__stream_crack, 0);
|
||||
ERR_warning(gds_stream_crack, 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -594,7 +595,7 @@ void EXE_receive(TDBB tdbb,
|
||||
ERR_post(gds_req_sync, 0);
|
||||
|
||||
if (length != format->fmt_length)
|
||||
ERR_post(gds__port_len,
|
||||
ERR_post(gds_port_len,
|
||||
gds_arg_number, (SLONG) length,
|
||||
gds_arg_number, (SLONG) format->fmt_length, 0);
|
||||
|
||||
@ -742,7 +743,7 @@ void EXE_send(TDBB tdbb,
|
||||
ERR_post(gds_req_sync, 0);
|
||||
|
||||
if (length != format->fmt_length)
|
||||
ERR_post(gds__port_len,
|
||||
ERR_post(gds_port_len,
|
||||
gds_arg_number, (SLONG) length,
|
||||
gds_arg_number, (SLONG) format->fmt_length, 0);
|
||||
|
||||
@ -818,10 +819,10 @@ void EXE_start(TDBB tdbb, REQ request, TRA transaction)
|
||||
BLKCHK(transaction, type_tra);
|
||||
|
||||
if (request->req_flags & req_active)
|
||||
ERR_post(gds_req_sync, gds_arg_gds, gds__reqinuse, 0);
|
||||
ERR_post(gds_req_sync, gds_arg_gds, gds_reqinuse, 0);
|
||||
|
||||
if (transaction->tra_flags & TRA_prepared)
|
||||
ERR_post(gds__req_no_trans, 0);
|
||||
ERR_post(gds_req_no_trans, 0);
|
||||
|
||||
/* Post resources to transaction block. In particular, the interest locks
|
||||
on relations/indices are copied to the transaction, which is very
|
||||
@ -1037,7 +1038,7 @@ static NOD erase(TDBB tdbb, NOD node, SSHORT which_trig)
|
||||
reinterpret_cast <
|
||||
blk *
|
||||
>(tdbb->tdbb_default))))
|
||||
ERR_post(gds__deadlock, gds_arg_gds, gds__update_conflict, 0);
|
||||
ERR_post(gds_deadlock, gds_arg_gds, gds_update_conflict, 0);
|
||||
VIO_data(tdbb, rpb,
|
||||
reinterpret_cast < blk * >(tdbb->tdbb_request->req_pool));
|
||||
|
||||
@ -1048,7 +1049,7 @@ static NOD erase(TDBB tdbb, NOD node, SSHORT which_trig)
|
||||
|
||||
if ((transaction->tra_flags & TRA_read_committed) &&
|
||||
(tid_fetch != rpb->rpb_transaction))
|
||||
ERR_post(gds__deadlock, gds_arg_gds, gds__update_conflict, 0);
|
||||
ERR_post(gds_deadlock, gds_arg_gds, gds_update_conflict, 0);
|
||||
|
||||
rpb->rpb_stream_flags &= ~RPB_s_refetch;
|
||||
}
|
||||
@ -1425,7 +1426,7 @@ static NOD find(TDBB tdbb, register NOD node)
|
||||
[e_find_operator]), 0);
|
||||
if (operator != blr_eql && operator != blr_leq && operator != blr_lss
|
||||
&& operator != blr_geq && operator != blr_gtr)
|
||||
ERR_post(gds__invalid_operator, 0);
|
||||
ERR_post(gds_invalid_operator, 0);
|
||||
|
||||
direction = (USHORT) MOV_get_long(EVL_expr(tdbb,
|
||||
node->nod_arg
|
||||
@ -1433,7 +1434,7 @@ static NOD find(TDBB tdbb, register NOD node)
|
||||
if (direction != blr_backward && direction != blr_forward
|
||||
&& direction != blr_backward_starting
|
||||
&& direction !=
|
||||
blr_forward_starting) ERR_post(gds__invalid_direction, 0);
|
||||
blr_forward_starting) ERR_post(gds_invalid_direction, 0);
|
||||
|
||||
/* try to find the record; the position is defined to be on a crack
|
||||
regardless of whether we are at BOF or EOF; also be sure to perpetuate
|
||||
@ -1542,7 +1543,7 @@ static LCK implicit_record_lock(TRA transaction, RPB * rpb)
|
||||
return NULL;
|
||||
|
||||
if (!(lock = RLCK_lock_record_implicit(transaction, rpb, LCK_SW, 0, 0)))
|
||||
ERR_post(gds__record_lock, 0);
|
||||
ERR_post(gds_record_lock, 0);
|
||||
|
||||
return lock;
|
||||
}
|
||||
@ -1605,7 +1606,7 @@ static NOD looper(TDBB tdbb, REQ request, NOD in_node)
|
||||
}
|
||||
|
||||
if (!(transaction = request->req_transaction))
|
||||
ERR_post(gds__req_no_trans, 0);
|
||||
ERR_post(gds_req_no_trans, 0);
|
||||
|
||||
SET_TDBB(tdbb);
|
||||
dbb = tdbb->tdbb_database;
|
||||
@ -2429,7 +2430,7 @@ static NOD modify(TDBB tdbb, register NOD node, SSHORT which_trig)
|
||||
transaction,
|
||||
reinterpret_cast < BLK >
|
||||
(tdbb->tdbb_default))))
|
||||
ERR_post(gds__deadlock, gds_arg_gds, gds__update_conflict, 0);
|
||||
ERR_post(gds_deadlock, gds_arg_gds, gds_update_conflict, 0);
|
||||
VIO_data(tdbb, org_rpb,
|
||||
reinterpret_cast < BLK > (tdbb->tdbb_request->req_pool));
|
||||
|
||||
@ -2440,7 +2441,7 @@ static NOD modify(TDBB tdbb, register NOD node, SSHORT which_trig)
|
||||
|
||||
if ((transaction->tra_flags & TRA_read_committed) &&
|
||||
(tid_fetch != org_rpb->rpb_transaction))
|
||||
ERR_post(gds__deadlock, gds_arg_gds, gds__update_conflict, 0);
|
||||
ERR_post(gds_deadlock, gds_arg_gds, gds_update_conflict, 0);
|
||||
|
||||
org_rpb->rpb_stream_flags &= ~RPB_s_refetch;
|
||||
}
|
||||
@ -3201,11 +3202,11 @@ static void set_error(TDBB tdbb, XCP condition)
|
||||
|
||||
switch (condition->xcp_rpt[0].xcp_type) {
|
||||
case xcp_sql_code:
|
||||
ERR_post(gds__sqlerr,
|
||||
ERR_post(gds_sqlerr,
|
||||
gds_arg_number, (SLONG) condition->xcp_rpt[0].xcp_code, 0);
|
||||
|
||||
case xcp_gds_code:
|
||||
if (condition->xcp_rpt[0].xcp_code == gds__check_constraint) {
|
||||
if (condition->xcp_rpt[0].xcp_code == gds_check_constraint) {
|
||||
MET_lookup_cnstrt_for_trigger(tdbb, name, relation_name,
|
||||
request->req_trg_name);
|
||||
// CONST CAST
|
||||
@ -3228,12 +3229,12 @@ static void set_error(TDBB tdbb, XCP condition)
|
||||
else
|
||||
s = NULL;
|
||||
if (s)
|
||||
ERR_post(gds__except,
|
||||
ERR_post(gds_except,
|
||||
gds_arg_number, (SLONG) condition->xcp_rpt[0].xcp_code,
|
||||
gds_arg_gds, gds__random, gds_arg_string, ERR_cstring(s),
|
||||
gds_arg_gds, gds_random, gds_arg_string, ERR_cstring(s),
|
||||
0);
|
||||
else
|
||||
ERR_post(gds__except, gds_arg_number,
|
||||
ERR_post(gds_except, gds_arg_number,
|
||||
(SLONG) condition->xcp_rpt[0].xcp_code, 0);
|
||||
}
|
||||
}
|
||||
@ -3273,7 +3274,7 @@ static NOD set_index(TDBB tdbb, register NOD node)
|
||||
|
||||
id = MOV_get_long(EVL_expr(tdbb, node->nod_arg[e_index_index]), 0);
|
||||
if (id && BTR_lookup(tdbb, relation, id - 1, &idx))
|
||||
ERR_post(gds__indexnotdefined, gds_arg_string, relation->rel_name,
|
||||
ERR_post(gds_indexnotdefined, gds_arg_string, relation->rel_name,
|
||||
gds_arg_number, (SLONG) id, 0);
|
||||
|
||||
/* generate a new rsb in place of the old */
|
||||
@ -3572,7 +3573,7 @@ static BOOLEAN test_error(TDBB tdbb, XCP conditions)
|
||||
break;
|
||||
|
||||
case xcp_xcp_code:
|
||||
if ((status_vector[1] == gds__except) &&
|
||||
if ((status_vector[1] == gds_except) &&
|
||||
(status_vector[3] == conditions->xcp_rpt[i].xcp_code)) {
|
||||
status_vector[0] = 0;
|
||||
status_vector[1] = 0;
|
||||
@ -3621,16 +3622,16 @@ static void trigger_failure(TDBB tdbb, REQ trigger)
|
||||
if (trigger->req_flags & req_sys_trigger) {
|
||||
code = PAR_symbol_to_gdscode(msg);
|
||||
if (code)
|
||||
ERR_post(gds__integ_fail,
|
||||
ERR_post(gds_integ_fail,
|
||||
gds_arg_number, (SLONG) trigger->req_label,
|
||||
gds_arg_gds, code, 0);
|
||||
}
|
||||
ERR_post(gds__integ_fail,
|
||||
ERR_post(gds_integ_fail,
|
||||
gds_arg_number, (SLONG) trigger->req_label,
|
||||
gds_arg_gds, gds__random, gds_arg_string, msg, 0);
|
||||
gds_arg_gds, gds_random, gds_arg_string, msg, 0);
|
||||
}
|
||||
else
|
||||
ERR_post(gds__integ_fail, gds_arg_number,
|
||||
ERR_post(gds_integ_fail, gds_arg_number,
|
||||
(SLONG) trigger->req_label, 0);
|
||||
}
|
||||
else
|
||||
@ -3714,7 +3715,7 @@ static void validate(TDBB tdbb, NOD list)
|
||||
name = "*** unknown ***";
|
||||
}
|
||||
|
||||
ERR_post(gds__not_valid, gds_arg_string, name,
|
||||
ERR_post(gds_not_valid, gds_arg_string, name,
|
||||
gds_arg_string, value, 0);
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,7 @@
|
||||
* readonly databases.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
@ -34,7 +35,7 @@
|
||||
#include "../jrd/rse.h"
|
||||
#include "../jrd/ext.h"
|
||||
#include "../jrd/tra.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/all_proto.h"
|
||||
#include "../jrd/err_proto.h"
|
||||
#include "../jrd/ext_proto.h"
|
||||
@ -455,7 +456,7 @@ void EXT_store(RPB * rpb, int *transaction)
|
||||
gds_arg_string, "insert",
|
||||
gds_arg_string, file->ext_filename,
|
||||
isc_arg_gds, isc_io_write_err,
|
||||
gds_arg_gds, gds__ext_readonly_err, 0);
|
||||
gds_arg_gds, gds_ext_readonly_err, 0);
|
||||
}
|
||||
|
||||
field_ptr = (FLD *) relation->rel_fields->vec_object;
|
||||
|
@ -21,13 +21,14 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/req.h"
|
||||
#include "../jrd/val.h"
|
||||
#include "../jrd/exe.h"
|
||||
#include "../jrd/rse.h"
|
||||
#include "../jrd/ext.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/tra.h"
|
||||
#include "../jrd/ods.h"
|
||||
#include "../jrd/btr.h"
|
||||
|
@ -124,7 +124,7 @@
|
||||
#ifdef UNIX
|
||||
#define WORKFILE "/tmp/"
|
||||
#ifdef LINUX
|
||||
#define ISC_PREFIX "/opt/interbase/"
|
||||
#define ISC_PREFIX "/usr/local/interbase/"
|
||||
#else
|
||||
#ifdef DARWIN
|
||||
#define ISC_PREFIX "/all/files/are/in/framework/resources"
|
||||
@ -157,7 +157,8 @@
|
||||
|
||||
#ifdef WIN_NT
|
||||
#define WORKFILE "c:\\temp\\"
|
||||
#define ISC_PREFIX "c:\\Program Files\\Borland\\InterBase/"
|
||||
#define ISC_PREFIX "c:\\Program Files\\Firebird\\FBServer/"
|
||||
#define ISC_PREFIX_SUBPATH "\\Firebird\\FBServer/"
|
||||
#define MSG_FILE "interbase.msg"
|
||||
#define MSG_FILE_LANG "intl/%.8s.msg"
|
||||
#define LOCALE_MAX 6
|
||||
|
@ -21,10 +21,11 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/acl.h"
|
||||
#include "../jrd/val.h"
|
||||
#include "../jrd/met.h"
|
||||
|
@ -21,9 +21,15 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: flu.cpp,v 1.3 2001-07-12 05:46:05 bellardo Exp $
|
||||
$Id: flu.cpp,v 1.4 2001-07-29 17:42:22 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
|
||||
#include <string>
|
||||
|
||||
using namespace std;
|
||||
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/flu.h"
|
||||
#include "../jrd/gdsassert.h"
|
||||
@ -741,13 +747,19 @@ FPTR_INT ISC_lookup_entrypoint(TEXT* module,
|
||||
/* call search_for_module with the supplied name,
|
||||
and if unsuccessful, then with <name>.so . */
|
||||
mod = search_for_module(absolute_module, name);
|
||||
if (!mod)
|
||||
{
|
||||
|
||||
if (!mod) {
|
||||
strcat(absolute_module, ".so");
|
||||
mod = search_for_module(absolute_module, name);
|
||||
}
|
||||
if (!mod)
|
||||
{
|
||||
|
||||
if (!mod) { // Start looking for "libxxxx.so" module names
|
||||
string moduleName = "lib";
|
||||
moduleName += (const char*) absolute_module;
|
||||
mod = search_for_module((TEXT*) moduleName.c_str(), name);
|
||||
}
|
||||
|
||||
if (!mod) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@ -761,7 +773,7 @@ FPTR_INT ISC_lookup_entrypoint(TEXT* module,
|
||||
|
||||
++mod->mod_use_count;
|
||||
|
||||
return dlsym(mod->mod_handle, name);
|
||||
return (FPTR_INT) dlsym(mod->mod_handle, name);
|
||||
#endif /* NON_DL_COMPATIBLE */
|
||||
}
|
||||
|
||||
|
@ -21,16 +21,17 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: fun.epp,v 1.1 2001-07-12 06:32:03 bellardo Exp $
|
||||
$Id: fun.epp,v 1.2 2001-07-29 17:42:22 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/val.h"
|
||||
#include "../jrd/exe.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/req.h"
|
||||
#include "../jrd/lls.h"
|
||||
#include "../jrd/blb.h"
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h" /* For MAX_PATH_LENGTH Bug #126614 */
|
||||
|
@ -30,6 +30,7 @@
|
||||
#define ISC_TIME_SECONDS_PRECISION 10000L
|
||||
#define ISC_TIME_SECONDS_PRECISION_SCALE -4
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
@ -123,9 +124,10 @@ static CONST TEXT gdslogid[] = "";
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include "../jrd/sql_code.h"
|
||||
#include "gen/sql_code.h"
|
||||
#include "../jrd/thd.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "../jrd/gdsold.h"
|
||||
//#include "../jrd/gen/codes.h" // is already included in gdsold.h
|
||||
#include "../jrd/blr.h"
|
||||
#include "../jrd/msg.h"
|
||||
#include "../jrd/fil.h"
|
||||
@ -186,7 +188,7 @@ static char *ib_prefix_msg = 0;
|
||||
|
||||
|
||||
static CONST SCHAR *FAR_VARIABLE CONST messages[] = {
|
||||
#include "../jrd/msgs.h"
|
||||
#include "gen/msgs.h"
|
||||
0 /* Null entry to terminate list */
|
||||
};
|
||||
|
||||
@ -639,7 +641,7 @@ static const struct
|
||||
#pragma FB_COMPILER_MESSAGE("Fix this!")
|
||||
|
||||
#include "../jrd/blp.h"
|
||||
0, 0
|
||||
{0, 0}
|
||||
};
|
||||
|
||||
|
||||
@ -656,23 +658,6 @@ static const struct
|
||||
#endif
|
||||
|
||||
|
||||
/* This is duplicated from gds.h */
|
||||
|
||||
#define blr_gds_code 0
|
||||
#define blr_sql_code 1
|
||||
#define blr_exception 2
|
||||
#define blr_trigger_code 3
|
||||
#define blr_default_code 4
|
||||
|
||||
#define gds__bpb_version1 1
|
||||
#define gds__bpb_source_type 1
|
||||
#define gds__bpb_target_type 2
|
||||
#define gds__bpb_type 3
|
||||
#define gds__bpb_source_interp 4
|
||||
#define gds__bpb_target_interp 5
|
||||
|
||||
#define gds__bpb_type_segmented 0
|
||||
#define gds__bpb_type_stream 1
|
||||
|
||||
#ifdef SUPERSERVER
|
||||
extern SLONG allr_delta_alloc;
|
||||
@ -2429,7 +2414,7 @@ void API_ROUTINE gds__prefix(TEXT * string, TEXT * root)
|
||||
ib_prefix = getenv("ProgramFiles");
|
||||
if (ib_prefix) {
|
||||
strcpy(ib_prefix_val, ib_prefix);
|
||||
strcat(ib_prefix_val, "\\Borland\\Interbase\\");
|
||||
strcat(ib_prefix_val, ISC_PREFIX_SUBPATH);
|
||||
}
|
||||
else {
|
||||
/* ISC_PREFIX currently defaults to */
|
||||
@ -2797,31 +2782,31 @@ USHORT API_ROUTINE gds__parse_bpb2(USHORT bpb_length,
|
||||
p = bpb;
|
||||
end = p + bpb_length;
|
||||
|
||||
if (*p++ != gds__bpb_version1)
|
||||
if (*p++ != gds_bpb_version1)
|
||||
return type;
|
||||
|
||||
while (p < end) {
|
||||
op = *p++;
|
||||
length = *p++;
|
||||
switch (op) {
|
||||
case gds__bpb_source_type:
|
||||
case gds_bpb_source_type:
|
||||
*source = (USHORT) gds__vax_integer(p, length);
|
||||
break;
|
||||
|
||||
case gds__bpb_target_type:
|
||||
case gds_bpb_target_type:
|
||||
*target = (USHORT) gds__vax_integer(p, length);
|
||||
break;
|
||||
|
||||
case gds__bpb_type:
|
||||
case gds_bpb_type:
|
||||
type = (USHORT) gds__vax_integer(p, length);
|
||||
break;
|
||||
|
||||
case gds__bpb_source_interp:
|
||||
case gds_bpb_source_interp:
|
||||
if (source_interp)
|
||||
*source_interp = (USHORT) gds__vax_integer(p, length);
|
||||
break;
|
||||
|
||||
case gds__bpb_target_interp:
|
||||
case gds_bpb_target_interp:
|
||||
if (target_interp)
|
||||
*target_interp = (USHORT) gds__vax_integer(p, length);
|
||||
break;
|
||||
@ -3070,7 +3055,7 @@ SLONG API_ROUTINE gds__sqlcode(STATUS * status_vector)
|
||||
if (*s == gds_arg_gds)
|
||||
{
|
||||
s++;
|
||||
if (*s == gds__sqlerr)
|
||||
if (*s == gds_sqlerr)
|
||||
{
|
||||
return *(s + 2);
|
||||
}
|
||||
|
38
src/jrd/gds.h
Normal file
38
src/jrd/gds.h
Normal file
@ -0,0 +1,38 @@
|
||||
|
||||
#ifndef INCLUDE_gds
|
||||
#define INCLUDE_gds
|
||||
|
||||
/*
|
||||
* Module: gds.h
|
||||
*
|
||||
* This file comes in two forms this one which is used in the
|
||||
* build tree and does a #include of all components and the
|
||||
* generated one used for external compilation which contains
|
||||
* a concatination of all the following files.
|
||||
*
|
||||
* The content of this file was generated by the Firebird project
|
||||
* and is a concatination of several header source files, that may
|
||||
* also explain the unusual #ifdef structures within this file.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
#include "../jrd/ibase.h"
|
||||
#include "../jrd/gdsold.h"
|
||||
|
||||
#if 0
|
||||
|
||||
/* The public version of this file also contains the following header files
|
||||
these are not included explicitly here as they are included in the two
|
||||
above files. They have been placed here as a reminder of what is in
|
||||
the public version of this file.
|
||||
*/
|
||||
#include "fb_types.h"
|
||||
#include "../jrd/blr.h"
|
||||
#include "gen/iberror.h"
|
||||
#include "gen/codes.h"
|
||||
#endif
|
||||
|
||||
#endif /* INCLUDE_gds */
|
||||
|
451
src/jrd/gdsold.h
451
src/jrd/gdsold.h
@ -25,27 +25,16 @@
|
||||
#ifndef _JRD_GDSOLD_H_
|
||||
#define _JRD_GDSOLD_H_
|
||||
|
||||
#include "fb_types.h"
|
||||
|
||||
#define gds_version3
|
||||
|
||||
#define GDS_TRUE 1
|
||||
#define GDS_FALSE 0
|
||||
#if !(defined __cplusplus)
|
||||
#define GDS__TRUE GDS_TRUE
|
||||
#define GDS__FALSE GDS_FALSE
|
||||
#endif
|
||||
|
||||
#if (defined __osf__ && defined __alpha)
|
||||
#define GDS_LONG int
|
||||
#define GDS_ULONG unsigned int
|
||||
#else
|
||||
#define GDS_LONG long
|
||||
#define GDS_ULONG unsigned long
|
||||
#endif
|
||||
|
||||
#define GDS_STATUS long
|
||||
|
||||
#ifndef GDS_VAL /* duplicate definition in gds_proto.h */
|
||||
#define GDS_VAL(val) val
|
||||
#define GDS_REF(val) &val
|
||||
#endif
|
||||
|
||||
#define GDS_TYPE GDS_STATUS
|
||||
|
||||
#define CANCEL_disable 1
|
||||
@ -57,9 +46,9 @@
|
||||
/******************************************************************/
|
||||
|
||||
#ifndef GDS_FAR
|
||||
#define GDS_FAR ISC_FAR
|
||||
#define GDS_FAR
|
||||
#endif
|
||||
#define GDS_EXPORT ISC_EXPORT
|
||||
|
||||
|
||||
typedef void GDS_FAR *gds_db_handle;
|
||||
typedef void GDS_FAR *gds_req_handle;
|
||||
@ -323,7 +312,7 @@ GDS_STATUS GDS_EXPORT gds__event_wait(GDS_STATUS GDS_FAR *,
|
||||
char GDS_FAR *,
|
||||
char GDS_FAR *);
|
||||
|
||||
void GDS_EXPORT gds__event_counts(unsigned GDS_LONG GDS_FAR *,
|
||||
void GDS_EXPORT gds__event_counts(ULONG GDS_FAR *,
|
||||
short,
|
||||
char GDS_FAR *,
|
||||
char GDS_FAR *);
|
||||
@ -1284,431 +1273,13 @@ const char gds_info_sql_stmt_select_for_upd = 12;
|
||||
/* Error codes */
|
||||
/***************/
|
||||
|
||||
#ifndef __cplusplus /* c definitions */
|
||||
|
||||
#define gds_facility 20
|
||||
#define gds_err_base 335544320L
|
||||
#define gds_err_factor 1
|
||||
#define gds_arg_end 0
|
||||
#define gds_arg_gds 1
|
||||
#define gds_arg_string 2
|
||||
#define gds_arg_cstring 3
|
||||
#define gds_arg_number 4
|
||||
#define gds_arg_interpreted 5
|
||||
#define gds_arg_vms 6
|
||||
#define gds_arg_unix 7
|
||||
#define gds_arg_domain 8
|
||||
#define gds_arg_dos 9
|
||||
#define gds_arg_mpexl 10
|
||||
#define gds_arg_mpexl_ipc 11
|
||||
#define gds_arg_next_mach 15
|
||||
#define gds_arg_netware 16
|
||||
#define gds_arg_win32 17
|
||||
#define gds_arg_warning 18
|
||||
#include "gen/codes.h"
|
||||
|
||||
#else /* c++ definitions */
|
||||
#include "gen/iberror.h"
|
||||
|
||||
const GDS_LONG gds_facility = 20;
|
||||
const GDS_LONG gds_err_base = 335544320L;
|
||||
const GDS_LONG gds_err_factor = 1;
|
||||
const GDS_LONG gds_arg_end = 0;
|
||||
const GDS_LONG gds_arg_gds = 1;
|
||||
const GDS_LONG gds_arg_string = 2;
|
||||
const GDS_LONG gds_arg_cstring = 3;
|
||||
const GDS_LONG gds_arg_number = 4;
|
||||
const GDS_LONG gds_arg_interpreted = 5;
|
||||
const GDS_LONG gds_arg_vms = 6;
|
||||
const GDS_LONG gds_arg_unix = 7;
|
||||
const GDS_LONG gds_arg_domain = 8;
|
||||
const GDS_LONG gds_arg_dos = 9;
|
||||
const GDS_LONG gds_arg_mpexl = 10;
|
||||
const GDS_LONG gds_arg_mpexl_ipc = 11;
|
||||
const GDS_LONG gds_arg_next_mach = 15;
|
||||
const GDS_LONG gds_arg_netware = 16;
|
||||
const GDS_LONG gds_arg_win32 = 17;
|
||||
const GDS_LONG gds_arg_warning = 18;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef __cplusplus /* c definitions */
|
||||
|
||||
#include "../jrd/codes.h"
|
||||
|
||||
#else /* c++ definitions */
|
||||
|
||||
const GDS_LONG gds_arith_except = 335544321L;
|
||||
const GDS_LONG gds_bad_dbkey = 335544322L;
|
||||
const GDS_LONG gds_bad_db_format = 335544323L;
|
||||
const GDS_LONG gds_bad_db_handle = 335544324L;
|
||||
const GDS_LONG gds_bad_dpb_content = 335544325L;
|
||||
const GDS_LONG gds_bad_dpb_form = 335544326L;
|
||||
const GDS_LONG gds_bad_req_handle = 335544327L;
|
||||
const GDS_LONG gds_bad_segstr_handle = 335544328L;
|
||||
const GDS_LONG gds_bad_segstr_id = 335544329L;
|
||||
const GDS_LONG gds_bad_tpb_content = 335544330L;
|
||||
const GDS_LONG gds_bad_tpb_form = 335544331L;
|
||||
const GDS_LONG gds_bad_trans_handle = 335544332L;
|
||||
const GDS_LONG gds_bug_check = 335544333L;
|
||||
const GDS_LONG gds_convert_error = 335544334L;
|
||||
const GDS_LONG gds_db_corrupt = 335544335L;
|
||||
const GDS_LONG gds_deadlock = 335544336L;
|
||||
const GDS_LONG gds_excess_trans = 335544337L;
|
||||
const GDS_LONG gds_from_no_match = 335544338L;
|
||||
const GDS_LONG gds_infinap = 335544339L;
|
||||
const GDS_LONG gds_infona = 335544340L;
|
||||
const GDS_LONG gds_infunk = 335544341L;
|
||||
const GDS_LONG gds_integ_fail = 335544342L;
|
||||
const GDS_LONG gds_invalid_blr = 335544343L;
|
||||
const GDS_LONG gds_io_error = 335544344L;
|
||||
const GDS_LONG gds_lock_conflict = 335544345L;
|
||||
const GDS_LONG gds_metadata_corrupt = 335544346L;
|
||||
const GDS_LONG gds_not_valid = 335544347L;
|
||||
const GDS_LONG gds_no_cur_rec = 335544348L;
|
||||
const GDS_LONG gds_no_dup = 335544349L;
|
||||
const GDS_LONG gds_no_finish = 335544350L;
|
||||
const GDS_LONG gds_no_meta_update = 335544351L;
|
||||
const GDS_LONG gds_no_priv = 335544352L;
|
||||
const GDS_LONG gds_no_recon = 335544353L;
|
||||
const GDS_LONG gds_no_record = 335544354L;
|
||||
const GDS_LONG gds_no_segstr_close = 335544355L;
|
||||
const GDS_LONG gds_obsolete_metadata = 335544356L;
|
||||
const GDS_LONG gds_open_trans = 335544357L;
|
||||
const GDS_LONG gds_port_len = 335544358L;
|
||||
const GDS_LONG gds_read_only_field = 335544359L;
|
||||
const GDS_LONG gds_read_only_rel = 335544360L;
|
||||
const GDS_LONG gds_read_only_trans = 335544361L;
|
||||
const GDS_LONG gds_read_only_view = 335544362L;
|
||||
const GDS_LONG gds_req_no_trans = 335544363L;
|
||||
const GDS_LONG gds_req_sync = 335544364L;
|
||||
const GDS_LONG gds_req_wrong_db = 335544365L;
|
||||
const GDS_LONG gds_segment = 335544366L;
|
||||
const GDS_LONG gds_segstr_eof = 335544367L;
|
||||
const GDS_LONG gds_segstr_no_op = 335544368L;
|
||||
const GDS_LONG gds_segstr_no_read = 335544369L;
|
||||
const GDS_LONG gds_segstr_no_trans = 335544370L;
|
||||
const GDS_LONG gds_segstr_no_write = 335544371L;
|
||||
const GDS_LONG gds_segstr_wrong_db = 335544372L;
|
||||
const GDS_LONG gds_sys_request = 335544373L;
|
||||
const GDS_LONG gds_stream_eof = 335544374L;
|
||||
const GDS_LONG gds_unavailable = 335544375L;
|
||||
const GDS_LONG gds_unres_rel = 335544376L;
|
||||
const GDS_LONG gds_uns_ext = 335544377L;
|
||||
const GDS_LONG gds_wish_list = 335544378L;
|
||||
const GDS_LONG gds_wrong_ods = 335544379L;
|
||||
const GDS_LONG gds_wronumarg = 335544380L;
|
||||
const GDS_LONG gds_imp_exc = 335544381L;
|
||||
const GDS_LONG gds_random = 335544382L;
|
||||
const GDS_LONG gds_fatal_conflict = 335544383L;
|
||||
const GDS_LONG gds_badblk = 335544384L;
|
||||
const GDS_LONG gds_invpoolcl = 335544385L;
|
||||
const GDS_LONG gds_nopoolids = 335544386L;
|
||||
const GDS_LONG gds_relbadblk = 335544387L;
|
||||
const GDS_LONG gds_blktoobig = 335544388L;
|
||||
const GDS_LONG gds_bufexh = 335544389L;
|
||||
const GDS_LONG gds_syntaxerr = 335544390L;
|
||||
const GDS_LONG gds_bufinuse = 335544391L;
|
||||
const GDS_LONG gds_bdbincon = 335544392L;
|
||||
const GDS_LONG gds_reqinuse = 335544393L;
|
||||
const GDS_LONG gds_badodsver = 335544394L;
|
||||
const GDS_LONG gds_relnotdef = 335544395L;
|
||||
const GDS_LONG gds_fldnotdef = 335544396L;
|
||||
const GDS_LONG gds_dirtypage = 335544397L;
|
||||
const GDS_LONG gds_waifortra = 335544398L;
|
||||
const GDS_LONG gds_doubleloc = 335544399L;
|
||||
const GDS_LONG gds_nodnotfnd = 335544400L;
|
||||
const GDS_LONG gds_dupnodfnd = 335544401L;
|
||||
const GDS_LONG gds_locnotmar = 335544402L;
|
||||
const GDS_LONG gds_badpagtyp = 335544403L;
|
||||
const GDS_LONG gds_corrupt = 335544404L;
|
||||
const GDS_LONG gds_badpage = 335544405L;
|
||||
const GDS_LONG gds_badindex = 335544406L;
|
||||
const GDS_LONG gds_dbbnotzer = 335544407L;
|
||||
const GDS_LONG gds_tranotzer = 335544408L;
|
||||
const GDS_LONG gds_trareqmis = 335544409L;
|
||||
const GDS_LONG gds_badhndcnt = 335544410L;
|
||||
const GDS_LONG gds_wrotpbver = 335544411L;
|
||||
const GDS_LONG gds_wroblrver = 335544412L;
|
||||
const GDS_LONG gds_wrodpbver = 335544413L;
|
||||
const GDS_LONG gds_blobnotsup = 335544414L;
|
||||
const GDS_LONG gds_badrelation = 335544415L;
|
||||
const GDS_LONG gds_nodetach = 335544416L;
|
||||
const GDS_LONG gds_notremote = 335544417L;
|
||||
const GDS_LONG gds_trainlim = 335544418L;
|
||||
const GDS_LONG gds_notinlim = 335544419L;
|
||||
const GDS_LONG gds_traoutsta = 335544420L;
|
||||
const GDS_LONG gds_connect_reject = 335544421L;
|
||||
const GDS_LONG gds_dbfile = 335544422L;
|
||||
const GDS_LONG gds_orphan = 335544423L;
|
||||
const GDS_LONG gds_no_lock_mgr = 335544424L;
|
||||
const GDS_LONG gds_ctxinuse = 335544425L;
|
||||
const GDS_LONG gds_ctxnotdef = 335544426L;
|
||||
const GDS_LONG gds_datnotsup = 335544427L;
|
||||
const GDS_LONG gds_badmsgnum = 335544428L;
|
||||
const GDS_LONG gds_badparnum = 335544429L;
|
||||
const GDS_LONG gds_virmemexh = 335544430L;
|
||||
const GDS_LONG gds_blocking_signal = 335544431L;
|
||||
const GDS_LONG gds_lockmanerr = 335544432L;
|
||||
const GDS_LONG gds_journerr = 335544433L;
|
||||
const GDS_LONG gds_keytoobig = 335544434L;
|
||||
const GDS_LONG gds_nullsegkey = 335544435L;
|
||||
const GDS_LONG gds_sqlerr = 335544436L;
|
||||
const GDS_LONG gds_wrodynver = 335544437L;
|
||||
const GDS_LONG gds_funnotdef = 335544438L;
|
||||
const GDS_LONG gds_funmismat = 335544439L;
|
||||
const GDS_LONG gds_bad_msg_vec = 335544440L;
|
||||
const GDS_LONG gds_bad_detach = 335544441L;
|
||||
const GDS_LONG gds_noargacc_read = 335544442L;
|
||||
const GDS_LONG gds_noargacc_write = 335544443L;
|
||||
const GDS_LONG gds_read_only = 335544444L;
|
||||
const GDS_LONG gds_ext_err = 335544445L;
|
||||
const GDS_LONG gds_non_updatable = 335544446L;
|
||||
const GDS_LONG gds_no_rollback = 335544447L;
|
||||
const GDS_LONG gds_bad_sec_info = 335544448L;
|
||||
const GDS_LONG gds_invalid_sec_info = 335544449L;
|
||||
const GDS_LONG gds_misc_interpreted = 335544450L;
|
||||
const GDS_LONG gds_update_conflict = 335544451L;
|
||||
const GDS_LONG gds_unlicensed = 335544452L;
|
||||
const GDS_LONG gds_obj_in_use = 335544453L;
|
||||
const GDS_LONG gds_nofilter = 335544454L;
|
||||
const GDS_LONG gds_shadow_accessed = 335544455L;
|
||||
const GDS_LONG gds_invalid_sdl = 335544456L;
|
||||
const GDS_LONG gds_out_of_bounds = 335544457L;
|
||||
const GDS_LONG gds_invalid_dimension = 335544458L;
|
||||
const GDS_LONG gds_rec_in_limbo = 335544459L;
|
||||
const GDS_LONG gds_shadow_missing = 335544460L;
|
||||
const GDS_LONG gds_cant_validate = 335544461L;
|
||||
const GDS_LONG gds_cant_start_journal = 335544462L;
|
||||
const GDS_LONG gds_gennotdef = 335544463L;
|
||||
const GDS_LONG gds_cant_start_logging = 335544464L;
|
||||
const GDS_LONG gds_bad_segstr_type = 335544465L;
|
||||
const GDS_LONG gds_foreign_key = 335544466L;
|
||||
const GDS_LONG gds_high_minor = 335544467L;
|
||||
const GDS_LONG gds_tra_state = 335544468L;
|
||||
const GDS_LONG gds_trans_invalid = 335544469L;
|
||||
const GDS_LONG gds_buf_invalid = 335544470L;
|
||||
const GDS_LONG gds_indexnotdefined = 335544471L;
|
||||
const GDS_LONG gds_login = 335544472L;
|
||||
const GDS_LONG gds_invalid_bookmark = 335544473L;
|
||||
const GDS_LONG gds_bad_lock_level = 335544474L;
|
||||
const GDS_LONG gds_relation_lock = 335544475L;
|
||||
const GDS_LONG gds_record_lock = 335544476L;
|
||||
const GDS_LONG gds_max_idx = 335544477L;
|
||||
const GDS_LONG gds_jrn_enable = 335544478L;
|
||||
const GDS_LONG gds_old_failure = 335544479L;
|
||||
const GDS_LONG gds_old_in_progress = 335544480L;
|
||||
const GDS_LONG gds_old_no_space = 335544481L;
|
||||
const GDS_LONG gds_no_wal_no_jrn = 335544482L;
|
||||
const GDS_LONG gds_num_old_files = 335544483L;
|
||||
const GDS_LONG gds_wal_file_open = 335544484L;
|
||||
const GDS_LONG gds_bad_stmt_handle = 335544485L;
|
||||
const GDS_LONG gds_wal_failure = 335544486L;
|
||||
const GDS_LONG gds_walw_err = 335544487L;
|
||||
const GDS_LONG gds_logh_small = 335544488L;
|
||||
const GDS_LONG gds_logh_inv_version = 335544489L;
|
||||
const GDS_LONG gds_logh_open_flag = 335544490L;
|
||||
const GDS_LONG gds_logh_open_flag2 = 335544491L;
|
||||
const GDS_LONG gds_logh_diff_dbname = 335544492L;
|
||||
const GDS_LONG gds_logf_unexpected_eof = 335544493L;
|
||||
const GDS_LONG gds_logr_incomplete = 335544494L;
|
||||
const GDS_LONG gds_logr_header_small = 335544495L;
|
||||
const GDS_LONG gds_logb_small = 335544496L;
|
||||
const GDS_LONG gds_wal_illegal_attach = 335544497L;
|
||||
const GDS_LONG gds_wal_invalid_wpb = 335544498L;
|
||||
const GDS_LONG gds_wal_err_rollover = 335544499L;
|
||||
const GDS_LONG gds_no_wal = 335544500L;
|
||||
const GDS_LONG gds_drop_wal = 335544501L;
|
||||
const GDS_LONG gds_stream_not_defined = 335544502L;
|
||||
const GDS_LONG gds_wal_subsys_error = 335544503L;
|
||||
const GDS_LONG gds_wal_subsys_corrupt = 335544504L;
|
||||
const GDS_LONG gds_no_archive = 335544505L;
|
||||
const GDS_LONG gds_shutinprog = 335544506L;
|
||||
const GDS_LONG gds_range_in_use = 335544507L;
|
||||
const GDS_LONG gds_range_not_found = 335544508L;
|
||||
const GDS_LONG gds_charset_not_found = 335544509L;
|
||||
const GDS_LONG gds_lock_timeout = 335544510L;
|
||||
const GDS_LONG gds_prcnotdef = 335544511L;
|
||||
const GDS_LONG gds_prcmismat = 335544512L;
|
||||
const GDS_LONG gds_wal_bugcheck = 335544513L;
|
||||
const GDS_LONG gds_wal_cant_expand = 335544514L;
|
||||
const GDS_LONG gds_codnotdef = 335544515L;
|
||||
const GDS_LONG gds_xcpnotdef = 335544516L;
|
||||
const GDS_LONG gds_except = 335544517L;
|
||||
const GDS_LONG gds_cache_restart = 335544518L;
|
||||
const GDS_LONG gds_bad_lock_handle = 335544519L;
|
||||
const GDS_LONG gds_jrn_present = 335544520L;
|
||||
const GDS_LONG gds_wal_err_rollover2 = 335544521L;
|
||||
const GDS_LONG gds_wal_err_logwrite = 335544522L;
|
||||
const GDS_LONG gds_wal_err_jrn_comm = 335544523L;
|
||||
const GDS_LONG gds_wal_err_expansion = 335544524L;
|
||||
const GDS_LONG gds_wal_err_setup = 335544525L;
|
||||
const GDS_LONG gds_wal_err_ww_sync = 335544526L;
|
||||
const GDS_LONG gds_wal_err_ww_start = 335544527L;
|
||||
const GDS_LONG gds_shutdown = 335544528L;
|
||||
const GDS_LONG gds_existing_priv_mod = 335544529L;
|
||||
const GDS_LONG gds_primary_key_ref = 335544530L;
|
||||
const GDS_LONG gds_primary_key_notnull = 335544531L;
|
||||
const GDS_LONG gds_ref_cnstrnt_notfound = 335544532L;
|
||||
const GDS_LONG gds_foreign_key_notfound = 335544533L;
|
||||
const GDS_LONG gds_ref_cnstrnt_update = 335544534L;
|
||||
const GDS_LONG gds_check_cnstrnt_update = 335544535L;
|
||||
const GDS_LONG gds_check_cnstrnt_del = 335544536L;
|
||||
const GDS_LONG gds_integ_index_seg_del = 335544537L;
|
||||
const GDS_LONG gds_integ_index_seg_mod = 335544538L;
|
||||
const GDS_LONG gds_integ_index_del = 335544539L;
|
||||
const GDS_LONG gds_integ_index_mod = 335544540L;
|
||||
const GDS_LONG gds_check_trig_del = 335544541L;
|
||||
const GDS_LONG gds_check_trig_update = 335544542L;
|
||||
const GDS_LONG gds_cnstrnt_fld_del = 335544543L;
|
||||
const GDS_LONG gds_cnstrnt_fld_rename = 335544544L;
|
||||
const GDS_LONG gds_rel_cnstrnt_update = 335544545L;
|
||||
const GDS_LONG gds_constaint_on_view = 335544546L;
|
||||
const GDS_LONG gds_invld_cnstrnt_type = 335544547L;
|
||||
const GDS_LONG gds_primary_key_exists = 335544548L;
|
||||
const GDS_LONG gds_systrig_update = 335544549L;
|
||||
const GDS_LONG gds_not_rel_owner = 335544550L;
|
||||
const GDS_LONG gds_grant_obj_notfound = 335544551L;
|
||||
const GDS_LONG gds_grant_fld_notfound = 335544552L;
|
||||
const GDS_LONG gds_grant_nopriv = 335544553L;
|
||||
const GDS_LONG gds_nonsql_security_rel = 335544554L;
|
||||
const GDS_LONG gds_nonsql_security_fld = 335544555L;
|
||||
const GDS_LONG gds_wal_cache_err = 335544556L;
|
||||
const GDS_LONG gds_shutfail = 335544557L;
|
||||
const GDS_LONG gds_check_constraint = 335544558L;
|
||||
const GDS_LONG gds_bad_svc_handle = 335544559L;
|
||||
const GDS_LONG gds_shutwarn = 335544560L;
|
||||
const GDS_LONG gds_wrospbver = 335544561L;
|
||||
const GDS_LONG gds_bad_spb_form = 335544562L;
|
||||
const GDS_LONG gds_svcnotdef = 335544563L;
|
||||
const GDS_LONG gds_no_jrn = 335544564L;
|
||||
const GDS_LONG gds_transliteration_failed = 335544565L;
|
||||
const GDS_LONG gds_start_cm_for_wal = 335544566L;
|
||||
const GDS_LONG gds_wal_ovflow_log_required = 335544567L;
|
||||
const GDS_LONG gds_text_subtype = 335544568L;
|
||||
const GDS_LONG gds_dsql_error = 335544569L;
|
||||
const GDS_LONG gds_dsql_command_err = 335544570L;
|
||||
const GDS_LONG gds_dsql_constant_err = 335544571L;
|
||||
const GDS_LONG gds_dsql_cursor_err = 335544572L;
|
||||
const GDS_LONG gds_dsql_datatype_err = 335544573L;
|
||||
const GDS_LONG gds_dsql_decl_err = 335544574L;
|
||||
const GDS_LONG gds_dsql_cursor_update_err = 335544575L;
|
||||
const GDS_LONG gds_dsql_cursor_open_err = 335544576L;
|
||||
const GDS_LONG gds_dsql_cursor_close_err = 335544577L;
|
||||
const GDS_LONG gds_dsql_field_err = 335544578L;
|
||||
const GDS_LONG gds_dsql_internal_err = 335544579L;
|
||||
const GDS_LONG gds_dsql_relation_err = 335544580L;
|
||||
const GDS_LONG gds_dsql_procedure_err = 335544581L;
|
||||
const GDS_LONG gds_dsql_request_err = 335544582L;
|
||||
const GDS_LONG gds_dsql_sqlda_err = 335544583L;
|
||||
const GDS_LONG gds_dsql_var_count_err = 335544584L;
|
||||
const GDS_LONG gds_dsql_stmt_handle = 335544585L;
|
||||
const GDS_LONG gds_dsql_function_err = 335544586L;
|
||||
const GDS_LONG gds_dsql_blob_err = 335544587L;
|
||||
const GDS_LONG gds_collation_not_found = 335544588L;
|
||||
const GDS_LONG gds_collation_not_for_charset = 335544589L;
|
||||
const GDS_LONG gds_dsql_dup_option = 335544590L;
|
||||
const GDS_LONG gds_dsql_tran_err = 335544591L;
|
||||
const GDS_LONG gds_dsql_invalid_array = 335544592L;
|
||||
const GDS_LONG gds_dsql_max_arr_dim_exceeded = 335544593L;
|
||||
const GDS_LONG gds_dsql_arr_range_error = 335544594L;
|
||||
const GDS_LONG gds_dsql_trigger_err = 335544595L;
|
||||
const GDS_LONG gds_dsql_subselect_err = 335544596L;
|
||||
const GDS_LONG gds_dsql_crdb_prepare_err = 335544597L;
|
||||
const GDS_LONG gds_specify_field_err = 335544598L;
|
||||
const GDS_LONG gds_num_field_err = 335544599L;
|
||||
const GDS_LONG gds_col_name_err = 335544600L;
|
||||
const GDS_LONG gds_where_err = 335544601L;
|
||||
const GDS_LONG gds_table_view_err = 335544602L;
|
||||
const GDS_LONG gds_distinct_err = 335544603L;
|
||||
const GDS_LONG gds_key_field_count_err = 335544604L;
|
||||
const GDS_LONG gds_subquery_err = 335544605L;
|
||||
const GDS_LONG gds_expression_eval_err = 335544606L;
|
||||
const GDS_LONG gds_node_err = 335544607L;
|
||||
const GDS_LONG gds_command_end_err = 335544608L;
|
||||
const GDS_LONG gds_index_name = 335544609L;
|
||||
const GDS_LONG gds_exception_name = 335544610L;
|
||||
const GDS_LONG gds_field_name = 335544611L;
|
||||
const GDS_LONG gds_token_err = 335544612L;
|
||||
const GDS_LONG gds_union_err = 335544613L;
|
||||
const GDS_LONG gds_dsql_construct_err = 335544614L;
|
||||
const GDS_LONG gds_field_aggregate_err = 335544615L;
|
||||
const GDS_LONG gds_field_ref_err = 335544616L;
|
||||
const GDS_LONG gds_order_by_err = 335544617L;
|
||||
const GDS_LONG gds_return_mode_err = 335544618L;
|
||||
const GDS_LONG gds_extern_func_err = 335544619L;
|
||||
const GDS_LONG gds_alias_conflict_err = 335544620L;
|
||||
const GDS_LONG gds_procedure_conflict_error = 335544621L;
|
||||
const GDS_LONG gds_relation_conflict_err = 335544622L;
|
||||
const GDS_LONG gds_dsql_domain_err = 335544623L;
|
||||
const GDS_LONG gds_idx_seg_err = 335544624L;
|
||||
const GDS_LONG gds_node_name_err = 335544625L;
|
||||
const GDS_LONG gds_table_name = 335544626L;
|
||||
const GDS_LONG gds_proc_name = 335544627L;
|
||||
const GDS_LONG gds_idx_create_err = 335544628L;
|
||||
const GDS_LONG gds_wal_shadow_err = 335544629L;
|
||||
const GDS_LONG gds_dependency = 335544630L;
|
||||
const GDS_LONG gds_idx_key_err = 335544631L;
|
||||
const GDS_LONG gds_dsql_file_length_err = 335544632L;
|
||||
const GDS_LONG gds_dsql_shadow_number_err = 335544633L;
|
||||
const GDS_LONG gds_dsql_token_unk_err = 335544634L;
|
||||
const GDS_LONG gds_dsql_no_relation_alias = 335544635L;
|
||||
const GDS_LONG gds_indexname = 335544636L;
|
||||
const GDS_LONG gds_no_stream_plan = 335544637L;
|
||||
const GDS_LONG gds_stream_twice = 335544638L;
|
||||
const GDS_LONG gds_stream_not_found = 335544639L;
|
||||
const GDS_LONG gds_collation_requires_text = 335544640L;
|
||||
const GDS_LONG gds_dsql_domain_not_found = 335544641L;
|
||||
const GDS_LONG gds_index_unused = 335544642L;
|
||||
const GDS_LONG gds_dsql_self_join = 335544643L;
|
||||
const GDS_LONG gds_stream_bof = 335544644L;
|
||||
const GDS_LONG gds_stream_crack = 335544645L;
|
||||
const GDS_LONG gds_db_or_file_exists = 335544646L;
|
||||
const GDS_LONG gds_invalid_operator = 335544647L;
|
||||
const GDS_LONG gds_conn_lost = 335544648L;
|
||||
const GDS_LONG gds_bad_checksum = 335544649L;
|
||||
const GDS_LONG gds_page_type_err = 335544650L;
|
||||
const GDS_LONG gds_ext_readonly_err = 335544651L;
|
||||
const GDS_LONG gds_sing_select_err = 335544652L;
|
||||
const GDS_LONG gds_psw_attach = 335544653L;
|
||||
const GDS_LONG gds_psw_start_trans = 335544654L;
|
||||
const GDS_LONG gds_invalid_direction = 335544655L;
|
||||
const GDS_LONG gds_dsql_var_conflict = 335544656L;
|
||||
const GDS_LONG gds_dsql_no_blob_array = 335544657L;
|
||||
const GDS_LONG gds_dsql_base_table = 335544658L;
|
||||
const GDS_LONG gds_duplicate_base_table = 335544659L;
|
||||
const GDS_LONG gds_view_alias = 335544660L;
|
||||
const GDS_LONG gds_index_root_page_full = 335544661L;
|
||||
const GDS_LONG gds_dsql_blob_type_unknown = 335544662L;
|
||||
const GDS_LONG gds_req_max_clones_exceeded = 335544663L;
|
||||
const GDS_LONG gds_dsql_duplicate_spec = 335544664L;
|
||||
const GDS_LONG gds_unique_key_violation = 335544665L;
|
||||
const GDS_LONG gds_srvr_version_too_old = 335544666L;
|
||||
const GDS_LONG gds_drdb_completed_with_errs = 335544667L;
|
||||
const GDS_LONG gds_dsql_procedure_use_err = 335544668L;
|
||||
const GDS_LONG gds_dsql_count_mismatch = 335544669L;
|
||||
const GDS_LONG gds_blob_idx_err = 335544670L;
|
||||
const GDS_LONG gds_array_idx_err = 335544671L;
|
||||
const GDS_LONG gds_key_field_err = 335544672L;
|
||||
const GDS_LONG gds_no_delete = 335544673L;
|
||||
const GDS_LONG gds_del_last_field = 335544674L;
|
||||
const GDS_LONG gds_sort_err = 335544675L;
|
||||
const GDS_LONG gds_sort_mem_err = 335544676L;
|
||||
const GDS_LONG gds_version_err = 335544677L;
|
||||
const GDS_LONG gds_inval_key_posn = 335544678L;
|
||||
const GDS_LONG gds_no_segments_err = 335544679L;
|
||||
const GDS_LONG gds_crrp_data_err = 335544680L;
|
||||
const GDS_LONG gds_rec_size_err = 335544681L;
|
||||
const GDS_LONG gds_dsql_field_ref = 335544682L;
|
||||
const GDS_LONG gds_req_depth_exceeded = 335544683L;
|
||||
const GDS_LONG gds_no_field_access = 335544684L;
|
||||
const GDS_LONG gds_no_dbkey = 335544685L;
|
||||
const GDS_LONG gds_jrn_format_err = 335544686L;
|
||||
const GDS_LONG gds_jrn_file_full = 335544687L;
|
||||
const GDS_LONG gds_dsql_open_cursor_request = 335544688L;
|
||||
const GDS_LONG gds_err_max = 368L;
|
||||
|
||||
#endif
|
||||
|
||||
#undef GDS_LONG
|
||||
// #undef GDS_LONG
|
||||
|
||||
|
||||
|
||||
|
@ -17,6 +17,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <stdlib.h>
|
||||
|
||||
|
||||
@ -58,7 +59,7 @@ YYSTYPE yylval, yyval;
|
||||
# line 159 "grammar.y"
|
||||
|
||||
|
||||
#include "../jrd/jlx.cpp"
|
||||
#include "../jrd/jlx.c"
|
||||
int yyexca[] = {
|
||||
-1, 1,
|
||||
0, -1,
|
||||
|
@ -21,9 +21,10 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/scl.h"
|
||||
#include "../jrd/acl.h"
|
||||
|
@ -87,9 +87,10 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
$Id: ib_stdio.cpp,v 1.1.1.1 2001-05-23 13:26:18 tamlin Exp $
|
||||
$Id: ib_stdio.cpp,v 1.2 2001-07-29 17:42:22 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "source/jrd/common.h"
|
||||
#ifdef NEED_IB_STDIO
|
||||
#include "ib_stdio.h"
|
||||
|
@ -22,15 +22,14 @@
|
||||
* FSG 16.03.2001
|
||||
*/
|
||||
/*
|
||||
$Id: ibase.h,v 1.2 2001-07-12 05:46:05 bellardo Exp $
|
||||
$Id: ibase.h,v 1.3 2001-07-29 17:42:22 skywalker Exp $
|
||||
*/
|
||||
|
||||
#ifndef JRD_IBASE_H
|
||||
#define JRD_IBASE_H
|
||||
|
||||
#ifndef INCLUDE_FB_TYPES_H
|
||||
#include "../include/fb_types.h"
|
||||
#endif
|
||||
|
||||
#include "fb_types.h"
|
||||
|
||||
#define isc_version4
|
||||
|
||||
@ -63,30 +62,18 @@ $Id: ibase.h,v 1.2 2001-07-12 05:46:05 bellardo Exp $
|
||||
/* Define type, export and other stuff based on c/c++ and Windows */
|
||||
/******************************************************************/
|
||||
|
||||
#define ISC_EXPORT GDS_EXPORT
|
||||
#define ISC_FAR
|
||||
|
||||
#if (defined(_MSC_VER) && defined(_WIN32)) || \
|
||||
(defined(__BORLANDC__) && (defined(__WIN32__) || defined(__OS2__)))
|
||||
# define ISC_FAR
|
||||
# define ISC_EXPORT __stdcall
|
||||
# define ISC_EXPORT_VARARG __cdecl
|
||||
typedef __int64 ISC_INT64;
|
||||
typedef unsigned __int64 ISC_UINT64;
|
||||
# define ISC_INT64_DEFINED
|
||||
#else /* Not Windows/NT */
|
||||
# if (defined(__IBMC__) && defined(__OS2__))
|
||||
# define ISC_FAR
|
||||
# define ISC_EXPORT _System
|
||||
# define ISC_EXPORT_VARARG ISC_EXPORT
|
||||
# else /* not IBM C Set++ for OS/2 */
|
||||
# if ( defined( _Windows) || defined( _WINDOWS))
|
||||
# define ISC_FAR __far
|
||||
# define ISC_EXPORT ISC_FAR __cdecl __loadds __export
|
||||
# define ISC_EXPORT_VARARG ISC_EXPORT
|
||||
# else /* Not Windows/NT, OS/2 or Windows */
|
||||
# define ISC_FAR
|
||||
# define ISC_EXPORT
|
||||
#else /* Not Windows*/
|
||||
# define ISC_EXPORT_VARARG
|
||||
# endif /* Windows and Not Windows/NT or OS/2 */
|
||||
# endif /* IBM C Set++ for OS/2 */
|
||||
#endif /* Windows/NT */
|
||||
|
||||
/*******************************************************************/
|
||||
@ -122,47 +109,12 @@ typedef struct
|
||||
/* Blob id structure */
|
||||
/*******************************************************************/
|
||||
|
||||
|
||||
#if !(defined __cplusplus)
|
||||
typedef GDS_QUAD GDS__QUAD;
|
||||
#endif /* !(defined __cplusplus) */
|
||||
|
||||
#if 1
|
||||
typedef struct GDS_QUAD_t ISC_QUAD;
|
||||
|
||||
/* TMN: What *is* really the right definition of these structs?! */
|
||||
/* Is e.g a GDS_QUAD to be signed or unsigned?! */
|
||||
|
||||
#if !defined(ISC_QUAD) && !defined(DEFINED_GDS_QUAD)
|
||||
#define DEFINED_GDS_QUAD
|
||||
|
||||
typedef struct {
|
||||
unsigned long uquad_high;
|
||||
unsigned long uquad_low;
|
||||
} ISC_UQUAD;
|
||||
|
||||
typedef struct {
|
||||
signed long squad_high;
|
||||
unsigned long squad_low;
|
||||
} ISC_SQUAD;
|
||||
|
||||
#define GDS_QUAD ISC_UQUAD
|
||||
#define GDS__QUAD ISC_UQUAD
|
||||
|
||||
#define gds_quad_high uquad_high
|
||||
#define gds_quad_low uquad_low
|
||||
|
||||
#define ISC_QUAD ISC_UQUAD
|
||||
#define isc_quad_high uquad_high
|
||||
#define isc_quad_low uquad_low
|
||||
|
||||
#endif /* ISC_QUAD */
|
||||
|
||||
#else /* 1 */
|
||||
|
||||
#define isc_quad_high gds_quad_high
|
||||
#define isc_quad_low gds_quad_low
|
||||
|
||||
#endif /* 1 */
|
||||
|
||||
typedef struct
|
||||
{
|
||||
@ -1941,31 +1893,6 @@ ISC_STATUS ISC_EXPORT isc_suspend_window(ISC_STATUS ISC_FAR*,
|
||||
#endif
|
||||
|
||||
|
||||
/***************/
|
||||
/* Error codes */
|
||||
/***************/
|
||||
|
||||
#define isc_facility 20
|
||||
#define isc_err_base 335544320L
|
||||
#define isc_err_factor 1
|
||||
#define isc_arg_end 0
|
||||
#define isc_arg_gds 1
|
||||
#define isc_arg_string 2
|
||||
#define isc_arg_cstring 3
|
||||
#define isc_arg_number 4
|
||||
#define isc_arg_interpreted 5
|
||||
#define isc_arg_vms 6
|
||||
#define isc_arg_unix 7
|
||||
#define isc_arg_domain 8
|
||||
#define isc_arg_dos 9
|
||||
#define isc_arg_mpexl 10
|
||||
#define isc_arg_mpexl_ipc 11
|
||||
#define isc_arg_next_mach 15
|
||||
#define isc_arg_netware 16
|
||||
#define isc_arg_win32 17
|
||||
#define isc_arg_warning 18
|
||||
|
||||
#include <iberror.h>
|
||||
|
||||
/**********************************************/
|
||||
/* Dynamic Data Definition Language operators */
|
||||
@ -2382,4 +2309,7 @@ ISC_STATUS ISC_EXPORT isc_suspend_window(ISC_STATUS ISC_FAR*,
|
||||
#define isc_dpb_SQL_dialect 63
|
||||
#define isc_dpb_set_db_SQL_dialect 65
|
||||
|
||||
|
||||
#include "gen/iberror.h"
|
||||
|
||||
#endif /* JRD_IBASE_H */
|
||||
|
@ -21,12 +21,13 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/common.h"
|
||||
#include <stdarg.h>
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/iberr.h"
|
||||
#include "../jrd/gds_proto.h"
|
||||
#include "../jrd/iberr_proto.h"
|
||||
@ -104,7 +105,7 @@ void IBERR_bugcheck(
|
||||
len = strlen(errmsg);
|
||||
sprintf(errmsg + len, " (%d)", number);
|
||||
|
||||
post_error(status_vector, dbname, longjmp_addr, gds__bug_check,
|
||||
post_error(status_vector, dbname, longjmp_addr, gds_bug_check,
|
||||
gds_arg_string, errmsg, 0);
|
||||
}
|
||||
|
||||
@ -131,7 +132,7 @@ void IBERR_error(
|
||||
&flags) < 1)
|
||||
sprintf(errmsg, "error code %d", number);
|
||||
|
||||
post_error(status_vector, dbname, longjmp_addr, gds__random,
|
||||
post_error(status_vector, dbname, longjmp_addr, gds_random,
|
||||
gds_arg_string, errmsg, 0);
|
||||
}
|
||||
|
||||
@ -154,8 +155,8 @@ static void post_error(
|
||||
|
||||
STUFF_STATUS(status_vector, status);
|
||||
|
||||
if (status_vector[1] == gds__db_corrupt ||
|
||||
status_vector[1] == gds__bug_check)
|
||||
if (status_vector[1] == gds_db_corrupt ||
|
||||
status_vector[1] == gds_bug_check)
|
||||
gds__log_status(dbname, status_vector);
|
||||
|
||||
if (longjmp_addr)
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <windows.h>
|
||||
|
||||
HINSTANCE hIBDLLInstance;
|
||||
|
@ -68,68 +68,6 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/val.h"
|
||||
@ -31,7 +32,7 @@
|
||||
#include "../jrd/sort.h"
|
||||
#include "../jrd/lls.h"
|
||||
#include "../jrd/tra.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/sbm.h"
|
||||
#include "../jrd/exe.h"
|
||||
#include "../jrd/scl.h"
|
||||
@ -194,7 +195,7 @@ void IDX_create_index(
|
||||
dbb = tdbb->tdbb_database;
|
||||
|
||||
if (relation->rel_file)
|
||||
ERR_post(gds__no_meta_update, gds_arg_gds, gds__extfile_uns_op,
|
||||
ERR_post(gds_no_meta_update, gds_arg_gds, gds_extfile_uns_op,
|
||||
gds_arg_string, ERR_cstring(relation->rel_name), 0);
|
||||
|
||||
BTR_reserve_slot(tdbb, relation, transaction, idx);
|
||||
@ -208,9 +209,9 @@ void IDX_create_index(
|
||||
|
||||
key_length = ROUNDUP(BTR_key_length(relation, idx), sizeof(SLONG));
|
||||
if (key_length >= MAX_KEY)
|
||||
ERR_post(gds__no_meta_update,
|
||||
ERR_post(gds_no_meta_update,
|
||||
gds_arg_gds,
|
||||
gds__keytoobig,
|
||||
gds_keytoobig,
|
||||
gds_arg_string,
|
||||
ERR_cstring(reinterpret_cast < char *>(index_name)), 0);
|
||||
#ifdef IGNORE_NULL_IDX_KEY
|
||||
@ -334,10 +335,10 @@ void IDX_create_index(
|
||||
ERR_duplicate_error(result, partner_relation,
|
||||
partner_index_id);
|
||||
else
|
||||
ERR_post(gds__no_dup, gds_arg_string,
|
||||
ERR_post(gds_no_dup, gds_arg_string,
|
||||
ERR_cstring(reinterpret_cast <
|
||||
char *>(index_name)), gds_arg_gds,
|
||||
gds__nullsegkey, 0);
|
||||
gds_nullsegkey, 0);
|
||||
}
|
||||
|
||||
#ifdef IGNORE_NULL_IDX_KEY
|
||||
@ -382,7 +383,7 @@ void IDX_create_index(
|
||||
gc_record->rec_flags &= ~REC_gc_active;
|
||||
if (primary.rpb_window.win_flags & WIN_large_scan)
|
||||
--relation->rel_scan_count;
|
||||
ERR_post(gds__no_dup, gds_arg_string,
|
||||
ERR_post(gds_no_dup, gds_arg_string,
|
||||
ERR_cstring(reinterpret_cast < char *>(index_name)),
|
||||
0);
|
||||
}
|
||||
@ -440,7 +441,7 @@ void IDX_create_index(
|
||||
|
||||
if ((idx->idx_flags & idx_unique) && ifl_data.ifl_duplicates) {
|
||||
SORT_fini(sort_handle, tdbb->tdbb_attachment);
|
||||
ERR_post(gds__no_dup, gds_arg_string,
|
||||
ERR_post(gds_no_dup, gds_arg_string,
|
||||
ERR_cstring(reinterpret_cast < char *>(index_name)), 0);
|
||||
}
|
||||
|
||||
@ -448,7 +449,7 @@ void IDX_create_index(
|
||||
|
||||
if ((idx->idx_flags & idx_unique) && ifl_data.ifl_duplicates) {
|
||||
SORT_fini(sort_handle, tdbb->tdbb_attachment);
|
||||
ERR_post(gds__no_dup, gds_arg_string,
|
||||
ERR_post(gds_no_dup, gds_arg_string,
|
||||
ERR_cstring(reinterpret_cast < char *>(index_name)), 0);
|
||||
}
|
||||
}
|
||||
@ -494,7 +495,7 @@ IDB IDX_create_index_block(TDBB tdbb, REL relation, UCHAR id)
|
||||
lock->lck_length = sizeof(lock->lck_key.lck_long);
|
||||
lock->lck_type = LCK_expression;
|
||||
lock->lck_owner_handle = LCK_get_owner_handle(tdbb, lock->lck_type);
|
||||
lock->lck_ast = reinterpret_cast < int (*) () > (index_block_flush);
|
||||
lock->lck_ast = reinterpret_cast < lck_ast_t > (index_block_flush);
|
||||
lock->lck_object = (BLK) index_block;
|
||||
|
||||
return index_block;
|
||||
|
@ -24,9 +24,10 @@
|
||||
* readonly databases.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/tra.h"
|
||||
#include "../jrd/blb.h"
|
||||
#include "../jrd/req.h"
|
||||
|
@ -21,15 +21,16 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include "../jrd/flags.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/val.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/ods.h"
|
||||
#include "../jrd/btr.h"
|
||||
#include "../jrd/ids.h"
|
||||
#include "gen/ids.h"
|
||||
#include "../jrd/tra.h"
|
||||
#include "../jrd/trig.h"
|
||||
#include "../jrd/intl.h"
|
||||
@ -688,7 +689,9 @@ TRG* INI_lookup_sys_trigger(REL relation,
|
||||
*
|
||||
**************************************/
|
||||
|
||||
trigger = (trigger) ? trigger + 1 : triggers;
|
||||
/* function should actually return (const TRIG*) */
|
||||
const TRG* constTrigger = (trigger) ? trigger + 1 : triggers;
|
||||
trigger = const_cast<TRG*>(constTrigger);
|
||||
|
||||
for (; trigger->trg_relation; trigger++)
|
||||
{
|
||||
|
@ -80,12 +80,13 @@
|
||||
* copyright (c) 1992, 1993 by Borland International
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/req.h"
|
||||
#include "../jrd/val.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/intl.h"
|
||||
#include "../jrd/intlobj.h"
|
||||
#include "../jrd/ods.h"
|
||||
@ -410,14 +411,14 @@ CHARSET_ID src_type, BYTE * src_ptr, USHORT src_len, FPTR_VOID err)
|
||||
if (!len || all_spaces(tdbb, src_type, src_ptr, len, 0))
|
||||
return (dest_ptr - start_dest_ptr);
|
||||
else
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except, 0);
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except, 0);
|
||||
}
|
||||
else if (src_len == 0)
|
||||
return (0);
|
||||
else if (src_type == CS_BINARY)
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except,
|
||||
gds_arg_gds,
|
||||
gds__transliteration_failed,
|
||||
gds_transliteration_failed,
|
||||
0);
|
||||
else
|
||||
/* character sets are known to be different */
|
||||
@ -435,12 +436,12 @@ CHARSET_ID src_type, BYTE * src_ptr, USHORT src_len, FPTR_VOID err)
|
||||
&& all_spaces(tdbb, src_type, src_ptr, src_len,
|
||||
err_position))) return (len);
|
||||
else if (err_code == CS_TRUNCATION_ERROR)
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except,
|
||||
0);
|
||||
else
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except,
|
||||
gds_arg_gds,
|
||||
gds__transliteration_failed,
|
||||
gds_transliteration_failed,
|
||||
0);
|
||||
|
||||
}
|
||||
@ -449,9 +450,9 @@ CHARSET_ID src_type, BYTE * src_ptr, USHORT src_len, FPTR_VOID err)
|
||||
|
||||
from_cs = INTL_CHARSETTYPE(src_type, (FPTR_VOID) NULL);
|
||||
if (from_cs == NULL)
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except,
|
||||
gds_arg_gds,
|
||||
gds__text_subtype,
|
||||
gds_text_subtype,
|
||||
gds_arg_number,
|
||||
(SLONG) src_type, 0);
|
||||
|
||||
@ -472,12 +473,12 @@ CHARSET_ID src_type, BYTE * src_ptr, USHORT src_len, FPTR_VOID err)
|
||||
err_position))) {
|
||||
gds__free((SLONG *) tmp_buffer);
|
||||
if (err_code == CS_TRUNCATION_ERROR)
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except,
|
||||
0);
|
||||
else
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except,
|
||||
gds_arg_gds,
|
||||
gds__transliteration_failed,
|
||||
gds_transliteration_failed,
|
||||
0);
|
||||
}
|
||||
|
||||
@ -486,9 +487,9 @@ CHARSET_ID src_type, BYTE * src_ptr, USHORT src_len, FPTR_VOID err)
|
||||
to_cs = INTL_CHARSETTYPE(dest_type, (FPTR_VOID) NULL);
|
||||
if (to_cs == NULL) {
|
||||
gds__free((SLONG *) tmp_buffer);
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except,
|
||||
gds_arg_gds,
|
||||
gds__text_subtype,
|
||||
gds_text_subtype,
|
||||
gds_arg_number,
|
||||
(SLONG) dest_type, 0);
|
||||
}
|
||||
@ -505,12 +506,12 @@ CHARSET_ID src_type, BYTE * src_ptr, USHORT src_len, FPTR_VOID err)
|
||||
all_spaces(tdbb, CS_UNICODE101, tmp_buffer, len, err_position))) {
|
||||
gds__free((SLONG *) tmp_buffer);
|
||||
if (err_code == CS_TRUNCATION_ERROR)
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except,
|
||||
0);
|
||||
else
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except,
|
||||
gds_arg_gds,
|
||||
gds__transliteration_failed,
|
||||
gds_transliteration_failed,
|
||||
0);
|
||||
}
|
||||
|
||||
@ -740,7 +741,7 @@ int DLL_EXPORT INTL_convert_string(DSC * to, DSC * from, FPTR_VOID err)
|
||||
if (from_fill)
|
||||
/* Make sure remaining characters on From string are spaces */
|
||||
if (!all_spaces(tdbb, from_cs, q, from_fill, 0))
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__arith_except, 0);
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_arith_except, 0);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -2337,13 +2338,9 @@ static BOOLEAN obj_init(
|
||||
/* The flu.c uses searchpath which expects a file name not a path */
|
||||
strcpy(reinterpret_cast < char *>(path), INTL_MODULE1);
|
||||
INTL_TRACE(("INTL: trying %s %s\n", path, INTL_LOOKUP_ENTRY1));
|
||||
if (lookup_fn =
|
||||
reinterpret_cast < USHORT(*)(USHORT, USHORT(**)(), short,
|
||||
short)
|
||||
>(ISC_lookup_entrypoint
|
||||
(reinterpret_cast < char *>(path), INTL_LOOKUP_ENTRY1, NULL))) {
|
||||
INTL_TRACE(
|
||||
("INTL: calling lookup %s %s\n", path,
|
||||
if (lookup_fn = reinterpret_cast <USHORT(*)(USHORT, USHORT(**)(), short, short)>
|
||||
(ISC_lookup_entrypoint(reinterpret_cast < char *>(path), INTL_LOOKUP_ENTRY1, NULL))) {
|
||||
INTL_TRACE(("INTL: calling lookup %s %s\n", path,
|
||||
INTL_LOOKUP_ENTRY1));
|
||||
if ((*lookup_fn) (objtype, &function, parm1, parm2) != 0) {
|
||||
function = NULL;
|
||||
@ -2434,11 +2431,11 @@ static BOOLEAN obj_init(
|
||||
}
|
||||
}
|
||||
if (err != NULL)
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds__text_subtype,
|
||||
reinterpret_cast < void (*) (...) > (*err) (gds_text_subtype,
|
||||
gds_arg_number,
|
||||
(SLONG) parm1, 0);
|
||||
else if (status)
|
||||
IBERR_build_status(status, gds__text_subtype, gds_arg_number,
|
||||
IBERR_build_status(status, gds_text_subtype, gds_arg_number,
|
||||
(SLONG) parm1, 0);
|
||||
|
||||
return TRUE;
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/gds_proto.h"
|
||||
|
@ -24,9 +24,10 @@
|
||||
* Solaris x86 changes - Konstantin Kuznetsov, Neil McCalden
|
||||
*/
|
||||
/*
|
||||
$Id: isc.cpp,v 1.2 2001-07-12 05:46:05 bellardo Exp $
|
||||
$Id: isc.cpp,v 1.3 2001-07-29 17:42:22 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
@ -34,7 +35,7 @@ $Id: isc.cpp,v 1.2 2001-07-12 05:46:05 bellardo Exp $
|
||||
#include <ctype.h>
|
||||
#include "../jrd/common.h"
|
||||
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/isc.h"
|
||||
#include "../jrd/ibase.h"
|
||||
#include "../jrd/jrd.h"
|
||||
@ -137,7 +138,10 @@ static USHORT ast_count;
|
||||
#include <lckdef.h>
|
||||
#include "../jrd/lnmdef.h"
|
||||
#include "../jrd/prv_m_bypass.h"
|
||||
|
||||
#ifdef HAVE_SIGNAL_H
|
||||
#include <signal.h>
|
||||
#endif
|
||||
|
||||
#define LOGICAL_NAME_TABLE "LNM$FILE_DEV"
|
||||
#define WAKE_LOCK "gds__process_%d"
|
||||
@ -155,6 +159,7 @@ static LKSB wake_lock;
|
||||
#include <sys/file.h>
|
||||
#include <pwd.h>
|
||||
#include <unistd.h>
|
||||
#include <signal.h>
|
||||
|
||||
#ifndef O_RDWR
|
||||
#include <fcntl.h>
|
||||
@ -1468,9 +1473,7 @@ SLONG ISC_get_user_group_id(TEXT * user_group_name)
|
||||
* --- for UNIX platform ---
|
||||
*
|
||||
**************************************/
|
||||
#ifndef DARWIN
|
||||
extern struct group *getgrnam();
|
||||
#endif
|
||||
|
||||
struct group *user_group;
|
||||
SLONG n;
|
||||
|
||||
|
@ -23,8 +23,9 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <pwd.h>
|
||||
|
@ -25,11 +25,12 @@
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/flu_proto.h"
|
||||
#include "../jrd/gds_proto.h"
|
||||
|
@ -22,16 +22,17 @@
|
||||
* Solaris x86 changes - Konstantin Kuznetsov, Neil McCalden
|
||||
*/
|
||||
|
||||
/* $Id: isc_ipc.cpp,v 1.2 2001-07-12 05:46:05 bellardo Exp $ */
|
||||
/* $Id: isc_ipc.cpp,v 1.3 2001-07-29 17:42:22 skywalker Exp $ */
|
||||
|
||||
#ifdef SHLIB_DEFS
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <stdlib.h>
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/isc.h"
|
||||
#include "../jrd/gds_proto.h"
|
||||
#include "../jrd/isc_proto.h"
|
||||
@ -47,7 +48,7 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef DARWIN
|
||||
#ifdef HAVE_STRING_H
|
||||
#include <string.h>
|
||||
#endif
|
||||
|
||||
@ -791,11 +792,13 @@ static void isc_signal2(
|
||||
vec.sv_handler = SIG_DFL;
|
||||
else
|
||||
#endif
|
||||
vec.sa_handler = (SIG_FPTR) signal_handler;
|
||||
#pragma FB_COMPILER_MESSAGE("Fix! Ugly function pointer casts!")
|
||||
vec.sa_handler = (void(*)(int)) signal_handler;
|
||||
// vec.sa_handler = (SIG_FPTR) signal_handler;
|
||||
memset(&vec.sa_mask, 0, sizeof(vec.sa_mask));
|
||||
vec.sa_flags = SA_RESTART;
|
||||
sigaction(signal_number, &vec, &old_vec);
|
||||
ptr = old_vec.sa_handler;
|
||||
ptr = (FPTR_VOID) old_vec.sa_handler;
|
||||
#endif
|
||||
#endif
|
||||
#pragma FB_COMPILER_MESSAGE("Fix! Ugly function pointer casts!")
|
||||
@ -983,7 +986,7 @@ static void error(STATUS * status_vector, TEXT * string, STATUS status)
|
||||
**************************************/
|
||||
|
||||
*status_vector++ = gds_arg_gds;
|
||||
*status_vector++ = gds__sys_request;
|
||||
*status_vector++ = gds_sys_request;
|
||||
*status_vector++ = gds_arg_string;
|
||||
*status_vector++ = (STATUS) string;
|
||||
*status_vector++ = SYS_ARG;
|
||||
|
@ -57,6 +57,9 @@ extern void ISC_wake_init(void);
|
||||
|
||||
#if defined(WIN_NT)
|
||||
|
||||
#define WIN32_REG_KEY_PATH "SOFTWARE\\Firebird\\DBServer"
|
||||
#define WIN32_REG_KEY_PATH_CURRENT_VERSION "SOFTWARE\\Firebird\\DBServer\\CurrentVersion"
|
||||
|
||||
extern BOOLEAN ISC_is_WinNT(void);
|
||||
extern SSHORT ISC_get_registry_var(TEXT *, TEXT *, SSHORT, void **);
|
||||
extern struct _SECURITY_ATTRIBUTES *ISC_get_security_desc(void);
|
||||
|
@ -29,6 +29,7 @@
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
@ -46,7 +47,7 @@
|
||||
|
||||
#include "../jrd/time.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/isc.h"
|
||||
#include "../jrd/gds_proto.h"
|
||||
#include "../jrd/isc_proto.h"
|
||||
@ -2473,7 +2474,7 @@ UCHAR *ISC_map_file(STATUS * status_vector,
|
||||
close(fd);
|
||||
close(fd_init);
|
||||
*status_vector++ = gds_arg_gds;
|
||||
*status_vector++ = gds__unavailable;
|
||||
*status_vector++ = gds_unavailable;
|
||||
*status_vector++ = gds_arg_end;
|
||||
return NULL;
|
||||
}
|
||||
@ -2868,7 +2869,7 @@ UCHAR *ISC_map_file(STATUS * status_vector,
|
||||
next_shared_memory -= length;
|
||||
ib_fclose(fp);
|
||||
*status_vector++ = gds_arg_gds;
|
||||
*status_vector++ = gds__unavailable;
|
||||
*status_vector++ = gds_unavailable;
|
||||
*status_vector++ = gds_arg_end;
|
||||
return NULL;
|
||||
}
|
||||
@ -3212,7 +3213,7 @@ UCHAR *ISC_map_file(STATUS * status_vector,
|
||||
if (length == 0) {
|
||||
ISC_mutex_unlock(SYNC_MUTEX);
|
||||
status_vector[0] = gds_arg_gds;
|
||||
status_vector[1] = gds__virmemexh;
|
||||
status_vector[1] = gds_virmemexh;
|
||||
status_vector[2] = gds_arg_end;
|
||||
return (NULL);
|
||||
}
|
||||
@ -3223,7 +3224,7 @@ UCHAR *ISC_map_file(STATUS * status_vector,
|
||||
/* FREE: ?by ISC_remap_file? */
|
||||
if (!address) { /* NOMEM: */
|
||||
status_vector[0] = gds_arg_gds;
|
||||
status_vector[1] = gds__virmemexh;
|
||||
status_vector[1] = gds_virmemexh;
|
||||
status_vector[2] = gds_arg_end;
|
||||
ISC_mutex_unlock(SYNC_MUTEX);
|
||||
return (NULL);
|
||||
@ -3236,7 +3237,7 @@ UCHAR *ISC_map_file(STATUS * status_vector,
|
||||
if (!semaphores) { /* NOMEM: */
|
||||
gds__free(address);
|
||||
status_vector[0] = gds_arg_gds;
|
||||
status_vector[1] = gds__virmemexh;
|
||||
status_vector[1] = gds_virmemexh;
|
||||
status_vector[2] = gds_arg_end;
|
||||
ISC_mutex_unlock(SYNC_MUTEX);
|
||||
return (NULL);
|
||||
@ -3254,7 +3255,7 @@ UCHAR *ISC_map_file(STATUS * status_vector,
|
||||
if (semaphores)
|
||||
gds__free(semaphores);
|
||||
status_vector[0] = gds_arg_gds;
|
||||
status_vector[1] = gds__virmemexh;
|
||||
status_vector[1] = gds_virmemexh;
|
||||
status_vector[2] = gds_arg_end;
|
||||
ISC_mutex_unlock(SYNC_MUTEX);
|
||||
return (NULL);
|
||||
@ -3304,7 +3305,7 @@ UCHAR *ISC_map_file(STATUS * status_vector,
|
||||
**************************************/
|
||||
|
||||
*status_vector++ = gds_arg_gds;
|
||||
*status_vector++ = gds__unavailable;
|
||||
*status_vector++ = gds_unavailable;
|
||||
*status_vector++ = gds_arg_end;
|
||||
|
||||
return NULL;
|
||||
@ -4134,7 +4135,7 @@ UCHAR *ISC_remap_file(STATUS * status_vector,
|
||||
address = gds__alloc(new_length);
|
||||
if (!address) { /* NOMEM: */
|
||||
status_vector[0] = gds_arg_gds;
|
||||
status_vector[1] = gds__virmemexh;
|
||||
status_vector[1] = gds_virmemexh;
|
||||
status_vector[2] = gds_arg_end;
|
||||
ISC_mutex_unlock(SYNC_MUTEX);
|
||||
return (NULL);
|
||||
@ -4297,7 +4298,7 @@ UCHAR *DLL_EXPORT ISC_remap_file(STATUS * status_vector,
|
||||
**************************************/
|
||||
|
||||
*status_vector++ = gds_arg_gds;
|
||||
*status_vector++ = gds__unavailable;
|
||||
*status_vector++ = gds_unavailable;
|
||||
*status_vector++ = gds_arg_end;
|
||||
|
||||
return NULL;
|
||||
@ -4403,7 +4404,8 @@ void ISC_set_timer(
|
||||
internal_handler.sv_flags = SV_INTERRUPT;
|
||||
sigvector(SIGALRM, &internal_handler, (struct sigvec *) client_handler);
|
||||
#else
|
||||
internal_handler.sa_handler = (SIG_FPTR) SIG_DFL;
|
||||
// internal_handler.sa_handler = (SIG_FPTR) SIG_DFL;
|
||||
internal_handler.sa_handler = (void(*)(int)) SIG_DFL;
|
||||
memset(&internal_handler.sa_mask, 0, sizeof(internal_handler.sa_mask));
|
||||
internal_handler.sa_flags = SA_RESTART;
|
||||
sigaction(SIGALRM, &internal_handler,
|
||||
@ -4702,7 +4704,7 @@ void DLL_EXPORT ISC_unmap_file(
|
||||
**************************************/
|
||||
|
||||
*status_vector++ = gds_arg_gds;
|
||||
*status_vector++ = gds__unavailable;
|
||||
*status_vector++ = gds_unavailable;
|
||||
*status_vector++ = gds_arg_end;
|
||||
}
|
||||
#endif
|
||||
@ -4759,7 +4761,7 @@ static void error(STATUS * status_vector, TEXT * string, STATUS status)
|
||||
**************************************/
|
||||
|
||||
*status_vector++ = gds_arg_gds;
|
||||
*status_vector++ = gds__sys_request;
|
||||
*status_vector++ = gds_sys_request;
|
||||
*status_vector++ = gds_arg_string;
|
||||
*status_vector++ = (STATUS) string;
|
||||
*status_vector++ = SYS_ARG;
|
||||
|
@ -25,6 +25,7 @@
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
@ -34,7 +35,7 @@
|
||||
|
||||
#include "../jrd/time.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/isc.h"
|
||||
#include "../jrd/err_proto.h"
|
||||
#include "../jrd/gds_proto.h"
|
||||
|
@ -24,9 +24,10 @@
|
||||
* Solaris x86 changes - Konstantin Kuznetsov, Neil McCalden
|
||||
*/
|
||||
/*
|
||||
$Id: isc_win32.cpp,v 1.1.1.1 2001-05-23 13:26:20 tamlin Exp $
|
||||
$Id: isc_win32.cpp,v 1.2 2001-07-29 17:42:22 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/common.h"
|
||||
#include <string.h>
|
||||
@ -34,7 +35,7 @@ $Id: isc_win32.cpp,v 1.1.1.1 2001-05-23 13:26:20 tamlin Exp $
|
||||
#include <errno.h>
|
||||
#include <windows.h>
|
||||
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/isc.h"
|
||||
#include "../jrd/ibase.h"
|
||||
#include "../jrd/jrd.h"
|
||||
@ -152,7 +153,7 @@ SSHORT ISC_get_registry_var(TEXT* variable,
|
||||
|
||||
if (!user_hkey)
|
||||
{
|
||||
LPCTSTR szKey = "SOFTWARE\\Borland\\InterBase\\CurrentVersion";
|
||||
LPCTSTR szKey = WIN32_REG_KEY_PATH_CURRENT_VERSION;
|
||||
const LONG ret =
|
||||
RegOpenKeyEx(HKEY_LOCAL_MACHINE, szKey, 0, KEY_QUERY_VALUE, &hkey);
|
||||
if (ret != ERROR_SUCCESS)
|
||||
|
@ -25,10 +25,11 @@
|
||||
VMS style journaling. At the moment this is limited to
|
||||
VMS and MPE XL. */
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/jrn.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
|
||||
#ifdef VMS
|
||||
#include <file.h>
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/common.h"
|
||||
|
136
src/jrd/jrd.cpp
136
src/jrd/jrd.cpp
@ -28,6 +28,7 @@
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
#include <string.h>
|
||||
@ -41,7 +42,7 @@
|
||||
#include <errno.h>
|
||||
|
||||
#define JRD_MAIN
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/irq.h"
|
||||
#include "../jrd/isc.h"
|
||||
@ -711,7 +712,9 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
ERR_post(gds_no_priv,
|
||||
gds_arg_string, "encryption",
|
||||
gds_arg_string, "database",
|
||||
gds_arg_string, ERR_string(file_name, fl), 0);
|
||||
gds_arg_string,
|
||||
ERR_string(reinterpret_cast< char *>(file_name), fl),
|
||||
0);
|
||||
}
|
||||
else if (options.dpb_key)
|
||||
dbb->dbb_encrypt_key =
|
||||
@ -781,14 +784,12 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
PAG_header(file_name, fl);
|
||||
INI_init2();
|
||||
PAG_init();
|
||||
if (options.dpb_set_page_buffers)
|
||||
{
|
||||
if (options.dpb_set_page_buffers) {
|
||||
dbb->dbb_page_buffers = options.dpb_page_buffers;
|
||||
}
|
||||
CCH_init(tdbb, (ULONG) options.dpb_buffers);
|
||||
PAG_init2(0);
|
||||
if (options.dpb_disable_wal)
|
||||
{
|
||||
if (options.dpb_disable_wal) {
|
||||
/* Forcibly disable WAL before the next step.
|
||||
We have an exclusive access to the database. */
|
||||
AIL_drop_log_force();
|
||||
@ -825,14 +826,14 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
if (dbb->dbb_flags & DBB_read_only)
|
||||
attachment->att_flags |= ATT_no_cleanup;
|
||||
|
||||
if (options.dpb_disable_wal)
|
||||
{
|
||||
if (options.dpb_disable_wal) {
|
||||
ERR_post(gds_lock_timeout, gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_string(file_name, fl), 0);
|
||||
gds_arg_string,
|
||||
ERR_string(reinterpret_cast < char *>(file_name), fl),
|
||||
0);
|
||||
}
|
||||
|
||||
if (options.dpb_buffers && !dbb->dbb_page_buffers)
|
||||
{
|
||||
if (options.dpb_buffers && !dbb->dbb_page_buffers) {
|
||||
CCH_expand(tdbb, (ULONG) options.dpb_buffers);
|
||||
}
|
||||
|
||||
@ -920,7 +921,7 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
cnt = 1;
|
||||
BOOLEAN delimited_done = FALSE;
|
||||
TEXT end_quote = *p1;
|
||||
*p1++;
|
||||
p1++;
|
||||
/*
|
||||
** remove the delimited quotes and escape quote
|
||||
** from ROLE name
|
||||
@ -935,7 +936,7 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
if (*p1 && *p1 == end_quote
|
||||
&& cnt < BUFFER_LENGTH128 - 1)
|
||||
{
|
||||
*p1++; /* skip the escape quote here */
|
||||
p1++; /* skip the escape quote here */
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1019,7 +1020,9 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
ERR_post(gds_no_priv,
|
||||
gds_arg_string, "shutdown or online",
|
||||
gds_arg_string, "database",
|
||||
gds_arg_string, ERR_string(file_name, fl), 0);
|
||||
gds_arg_string,
|
||||
ERR_string(reinterpret_cast < char *>(file_name), fl),
|
||||
0);
|
||||
}
|
||||
JRD_SS_MUTEX_LOCK;
|
||||
V4_JRD_MUTEX_LOCK(dbb->dbb_mutexes + DBB_MUTX_init_fini);
|
||||
@ -1038,7 +1041,8 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
JRD_SS_MUTEX_LOCK;
|
||||
V4_JRD_MUTEX_LOCK(dbb->dbb_mutexes + DBB_MUTX_init_fini);
|
||||
if (attachment->att_flags & ATT_shutdown)
|
||||
ERR_post(gds_shutdown, gds_arg_string, ERR_string(file_name, fl),
|
||||
ERR_post(gds_shutdown, gds_arg_string,
|
||||
ERR_string(reinterpret_cast < char *>(file_name), fl),
|
||||
0);
|
||||
}
|
||||
#endif
|
||||
@ -1046,12 +1050,15 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
/* If database is shutdown then kick 'em out. */
|
||||
|
||||
if (dbb->dbb_ast_flags & (DBB_shut_attach | DBB_shut_tran))
|
||||
ERR_post(gds_shutinprog, gds_arg_string, ERR_string(file_name, fl),
|
||||
ERR_post(gds_shutinprog, gds_arg_string,
|
||||
ERR_string(reinterpret_cast < char *>(file_name), fl),
|
||||
0);
|
||||
|
||||
if (dbb->dbb_ast_flags & DBB_shutdown &&
|
||||
!(attachment->att_user->usr_flags & (USR_locksmith | USR_owner)))
|
||||
ERR_post(gds_shutdown, gds_arg_string, ERR_string(file_name, fl), 0);
|
||||
ERR_post(gds_shutdown, gds_arg_string,
|
||||
ERR_string(reinterpret_cast < char *>(file_name), fl),
|
||||
0);
|
||||
|
||||
if (options.dpb_disable)
|
||||
AIL_disable();
|
||||
@ -1101,25 +1108,22 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
AIL_enable(journal_name, (USHORT) strlen(journal_name),
|
||||
data, d_len, (SSHORT) strlen(archive_name));
|
||||
}
|
||||
else
|
||||
{
|
||||
else {
|
||||
ERR_post(gds_bad_dpb_content,
|
||||
gds_arg_gds, gds_cant_start_journal,
|
||||
0);
|
||||
}
|
||||
|
||||
if (options.dpb_wal_action)
|
||||
{
|
||||
if (options.dpb_wal_action) {
|
||||
/* Make sure WAL enabled before taking any WAL action. */
|
||||
|
||||
if (!dbb->dbb_wal)
|
||||
{
|
||||
if (!dbb->dbb_wal) {
|
||||
ERR_post(gds_no_wal, 0);
|
||||
}
|
||||
if (!CCH_exclusive(tdbb, LCK_EX, WAIT_PERIOD))
|
||||
{
|
||||
if (!CCH_exclusive(tdbb, LCK_EX, WAIT_PERIOD)) {
|
||||
ERR_post(gds_lock_timeout, gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_string(file_name, fl), 0);
|
||||
gds_arg_string,
|
||||
ERR_string(reinterpret_cast < char *>(file_name), fl), 0);
|
||||
}
|
||||
|
||||
/* journal has to be disabled before dropping WAL */
|
||||
@ -1127,8 +1131,7 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
if (PAG_get_clump( HEADER_PAGE,
|
||||
HDR_journal_server,
|
||||
&jd_len,
|
||||
reinterpret_cast<UCHAR*>(journal_dir)))
|
||||
{
|
||||
reinterpret_cast<UCHAR*>(journal_dir))) {
|
||||
AIL_disable();
|
||||
}
|
||||
}
|
||||
@ -1143,13 +1146,11 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
if (((attachment->att_flags & ATT_gbak_attachment) ||
|
||||
(attachment->att_flags & ATT_gfix_attachment) ||
|
||||
(attachment->att_flags & ATT_gstat_attachment)) &&
|
||||
!(attachment->att_user->usr_flags & (USR_locksmith | USR_owner)))
|
||||
{
|
||||
!(attachment->att_user->usr_flags & (USR_locksmith | USR_owner))) {
|
||||
ERR_post(isc_adm_task_denied, 0);
|
||||
}
|
||||
|
||||
if (options.dpb_online_dump)
|
||||
{
|
||||
if (options.dpb_online_dump) {
|
||||
CCH_release_exclusive(tdbb);
|
||||
|
||||
OLD_dump(expanded_filename, length_expanded,
|
||||
@ -1162,55 +1163,49 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
}
|
||||
|
||||
#ifdef REPLAY_OSRI_API_CALLS_SUBSYSTEM
|
||||
if (options.dpb_log)
|
||||
{
|
||||
if (first)
|
||||
{
|
||||
if (options.dpb_log) {
|
||||
if (first) {
|
||||
if (!CCH_exclusive(tdbb, LCK_EX, WAIT_PERIOD))
|
||||
ERR_post(gds_lock_timeout, gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_string(file_name, fl), 0);
|
||||
gds_arg_string,
|
||||
ERR_string(reinterpret_cast < char *>(file_name), fl),
|
||||
0);
|
||||
LOG_enable(options.dpb_log, strlen(options.dpb_log));
|
||||
}
|
||||
else
|
||||
{
|
||||
else {
|
||||
ERR_post(gds_bad_dpb_content, gds_arg_gds,
|
||||
gds__cant_start_logging, 0);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
if (options.dpb_set_db_sql_dialect)
|
||||
{
|
||||
if (options.dpb_set_db_sql_dialect) {
|
||||
PAG_set_db_SQL_dialect(dbb, options.dpb_set_db_sql_dialect);
|
||||
}
|
||||
|
||||
if (options.dpb_sweep_interval != -1)
|
||||
{
|
||||
if (options.dpb_sweep_interval != -1) {
|
||||
PAG_sweep_interval(options.dpb_sweep_interval);
|
||||
dbb->dbb_sweep_interval = options.dpb_sweep_interval;
|
||||
}
|
||||
|
||||
if (options.dpb_set_force_write)
|
||||
{
|
||||
if (options.dpb_set_force_write) {
|
||||
PAG_set_force_write(dbb, options.dpb_force_write);
|
||||
}
|
||||
|
||||
if (options.dpb_set_no_reserve)
|
||||
{
|
||||
if (options.dpb_set_no_reserve) {
|
||||
PAG_set_no_reserve(dbb, options.dpb_no_reserve);
|
||||
}
|
||||
|
||||
if (options.dpb_set_page_buffers)
|
||||
{
|
||||
if (options.dpb_set_page_buffers) {
|
||||
PAG_set_page_buffers(options.dpb_page_buffers);
|
||||
}
|
||||
|
||||
if (options.dpb_set_db_readonly)
|
||||
{
|
||||
if (!CCH_exclusive(tdbb, LCK_EX, WAIT_PERIOD))
|
||||
{
|
||||
if (options.dpb_set_db_readonly) {
|
||||
if (!CCH_exclusive(tdbb, LCK_EX, WAIT_PERIOD)) {
|
||||
ERR_post(gds_lock_timeout, gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string, ERR_string(file_name, fl), 0);
|
||||
gds_arg_string,
|
||||
ERR_string(reinterpret_cast < char *>(file_name), fl),
|
||||
0);
|
||||
}
|
||||
|
||||
PAG_set_db_readonly(dbb, options.dpb_db_readonly);
|
||||
@ -1230,22 +1225,17 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
CCH_release_exclusive(tdbb);
|
||||
|
||||
#ifdef GOVERNOR
|
||||
if (!options.dpb_sec_attach)
|
||||
{
|
||||
if (JRD_max_users)
|
||||
{
|
||||
if (num_attached < (JRD_max_users * ATTACHMENTS_PER_USER))
|
||||
{
|
||||
if (!options.dpb_sec_attach) {
|
||||
if (JRD_max_users) {
|
||||
if (num_attached < (JRD_max_users * ATTACHMENTS_PER_USER)) {
|
||||
num_attached++;
|
||||
}
|
||||
else
|
||||
{
|
||||
else {
|
||||
ERR_post(isc_max_att_exceeded, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
else {
|
||||
attachment->att_flags |= ATT_security_db;
|
||||
}
|
||||
#endif /* GOVERNOR */
|
||||
@ -1254,19 +1244,16 @@ STATUS DLL_EXPORT GDS_ATTACH_DATABASE(STATUS* user_status,
|
||||
|
||||
/* if there was an error, the status vector is all set */
|
||||
|
||||
if (options.dpb_sweep & gds_dpb_records)
|
||||
{
|
||||
if (options.dpb_sweep & gds_dpb_records) {
|
||||
JRD_SS_MUTEX_UNLOCK;
|
||||
if (!(TRA_sweep(tdbb, 0)))
|
||||
{
|
||||
if (!(TRA_sweep(tdbb, 0))) {
|
||||
JRD_SS_MUTEX_LOCK;
|
||||
ERR_punt();
|
||||
}
|
||||
JRD_SS_MUTEX_LOCK;
|
||||
}
|
||||
|
||||
if (options.dpb_dbkey_scope)
|
||||
{
|
||||
if (options.dpb_dbkey_scope) {
|
||||
attachment->att_dbkey_trans = TRA_start(tdbb, 0, 0);
|
||||
}
|
||||
|
||||
@ -1958,11 +1945,12 @@ STATUS DLL_EXPORT GDS_CREATE_DATABASE(STATUS* user_status,
|
||||
VIO_init(tdbb);
|
||||
#endif
|
||||
|
||||
if (options.dpb_set_db_readonly)
|
||||
{
|
||||
if (options.dpb_set_db_readonly) {
|
||||
if (!CCH_exclusive (tdbb, LCK_EX, WAIT_PERIOD))
|
||||
ERR_post (gds__lock_timeout, gds_arg_gds, gds__obj_in_use,
|
||||
gds_arg_string, ERR_string (file_name, fl), 0);
|
||||
ERR_post (gds_lock_timeout, gds_arg_gds, gds_obj_in_use,
|
||||
gds_arg_string,
|
||||
ERR_string (reinterpret_cast < char *>(file_name), length),
|
||||
0);
|
||||
|
||||
PAG_set_db_readonly (dbb, options.dpb_db_readonly);
|
||||
}
|
||||
|
@ -25,6 +25,7 @@
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/time.h"
|
||||
#include "../jrd/common.h"
|
||||
#include <string.h>
|
||||
@ -73,7 +74,7 @@
|
||||
#include <errno.h>
|
||||
#endif
|
||||
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/ods.h"
|
||||
#include "../jrd/jrn.h"
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/kanji.h"
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/common.h"
|
||||
#include <os2.h>
|
||||
|
||||
|
@ -21,10 +21,11 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/lck.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/iberr.h"
|
||||
#include "../jrd/all_proto.h"
|
||||
#include "../jrd/err_proto.h"
|
||||
@ -244,10 +245,10 @@ int LCK_convert(TDBB tdbb, LCK lock, USHORT level, SSHORT wait)
|
||||
result = CONVERT(lock, level, wait);
|
||||
|
||||
if (!result) {
|
||||
if (status[1] == gds__deadlock ||
|
||||
status[1] == gds__lock_conflict || status[1] == gds__lock_timeout)
|
||||
if (status[1] == gds_deadlock ||
|
||||
status[1] == gds_lock_conflict || status[1] == gds_lock_timeout)
|
||||
return FALSE;
|
||||
if (status[1] == gds__lockmanerr)
|
||||
if (status[1] == gds_lockmanerr)
|
||||
dbb->dbb_flags |= DBB_bugcheck;
|
||||
ERR_punt();
|
||||
}
|
||||
@ -314,10 +315,10 @@ int LCK_convert_non_blocking(TDBB tdbb, LCK lock, USHORT level, SSHORT wait)
|
||||
AST_ENABLE;
|
||||
|
||||
if (!result) {
|
||||
if (status[1] == gds__deadlock ||
|
||||
status[1] == gds__lock_conflict || status[1] == gds__lock_timeout)
|
||||
if (status[1] == gds_deadlock ||
|
||||
status[1] == gds_lock_conflict || status[1] == gds_lock_timeout)
|
||||
return FALSE;
|
||||
if (status[1] == gds__lockmanerr)
|
||||
if (status[1] == gds_lockmanerr)
|
||||
dbb->dbb_flags |= DBB_bugcheck;
|
||||
ERR_punt();
|
||||
}
|
||||
@ -556,7 +557,7 @@ void LCK_init(TDBB tdbb, enum lck_owner_t owner_type)
|
||||
|
||||
if (LOCK_init(tdbb->tdbb_status_vector, TRUE,
|
||||
owner_id, owner_type, owner_handle_ptr)) {
|
||||
if (tdbb->tdbb_status_vector[1] == gds__lockmanerr)
|
||||
if (tdbb->tdbb_status_vector[1] == gds_lockmanerr)
|
||||
dbb->dbb_flags |= DBB_bugcheck;
|
||||
ERR_punt();
|
||||
}
|
||||
@ -591,12 +592,12 @@ int LCK_lock(TDBB tdbb, LCK lock, USHORT level, SSHORT wait)
|
||||
assert(LCK_CHECK_LOCK(lock));
|
||||
if (!lock->lck_id)
|
||||
if (!wait ||
|
||||
status[1] == gds__deadlock ||
|
||||
status[1] == gds__lock_conflict || status[1] == gds__lock_timeout) {
|
||||
status[1] == gds_deadlock ||
|
||||
status[1] == gds_lock_conflict || status[1] == gds_lock_timeout) {
|
||||
return FALSE;
|
||||
}
|
||||
else {
|
||||
if (status[1] == gds__lockmanerr)
|
||||
if (status[1] == gds_lockmanerr)
|
||||
dbb->dbb_flags |= DBB_bugcheck;
|
||||
ERR_punt();
|
||||
}
|
||||
@ -680,13 +681,13 @@ int LCK_lock_non_blocking(TDBB tdbb, LCK lock, USHORT level, SSHORT wait)
|
||||
/* If lock was rejected, there's trouble */
|
||||
|
||||
if (!lock->lck_id)
|
||||
if (status[1] == gds__deadlock ||
|
||||
status[1] == gds__lock_conflict ||
|
||||
status[1] == gds__lock_timeout) {
|
||||
if (status[1] == gds_deadlock ||
|
||||
status[1] == gds_lock_conflict ||
|
||||
status[1] == gds_lock_timeout) {
|
||||
return FALSE;
|
||||
}
|
||||
else {
|
||||
if (status[1] == gds__lockmanerr)
|
||||
if (status[1] == gds_lockmanerr)
|
||||
dbb->dbb_flags |= DBB_bugcheck;
|
||||
ERR_punt();
|
||||
}
|
||||
@ -938,7 +939,7 @@ static void bug_lck(TEXT * string)
|
||||
|
||||
sprintf(s, "Fatal lock interface error: %s", string);
|
||||
gds__log(s);
|
||||
ERR_post(gds__db_corrupt, gds_arg_string, string, 0);
|
||||
ERR_post(gds_db_corrupt, gds_arg_string, string, 0);
|
||||
}
|
||||
|
||||
|
||||
@ -1549,7 +1550,7 @@ static BOOLEAN internal_enqueue(
|
||||
do a wait on the other lock by setting some flag bit or some such */
|
||||
|
||||
status[0] = gds_arg_gds;
|
||||
status[1] = gds__lock_conflict;
|
||||
status[1] = gds_lock_conflict;
|
||||
status[2] = gds_arg_end;
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -55,6 +55,12 @@ enum lck_owner_t {
|
||||
LCK_OWNER_transaction /* A transaction is the owner of the lock */
|
||||
};
|
||||
|
||||
/* Blocking AST routine type. I've added this one so that all the
|
||||
reinterpret_cast messages casting functions to store in this struct
|
||||
can use the same type. Obviously storage of function pointers wants
|
||||
to be done in a nicer way in future so the types match. MOD 17-7-2001 */
|
||||
|
||||
typedef int (*lck_ast_t)();
|
||||
|
||||
typedef struct lck {
|
||||
struct blk lck_header;
|
||||
@ -71,7 +77,7 @@ typedef struct lck {
|
||||
struct blk *lck_compatible2; /* Sub-level for internal compatibility */
|
||||
struct att *lck_attachment; /* Attachment that owns lock */
|
||||
struct btb *lck_blocked_threads; /* Threads blocked by lock */
|
||||
int (*lck_ast)(void*); /* Blocking AST routine */
|
||||
lck_ast_t lck_ast; /* Blocking AST routine */
|
||||
SLONG lck_id; /* Lock id from lock manager */
|
||||
SLONG lck_owner_handle; /* Lock owner handle from the lock manager's point of view */
|
||||
USHORT lck_count; /* count of locks taken out by attachment */
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/common.h"
|
||||
#ifdef UNIX
|
||||
#include <signal.h>
|
||||
|
@ -21,12 +21,13 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/llio.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/iberr_proto.h"
|
||||
#include "../jrd/llio_proto.h"
|
||||
|
||||
|
@ -22,6 +22,7 @@
|
||||
*/
|
||||
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/common.h"
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <windows.h>
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/thd.h"
|
||||
|
@ -22,10 +22,11 @@
|
||||
*/
|
||||
|
||||
|
||||
#include "firebird.h"
|
||||
#include ssdef
|
||||
#include descrip
|
||||
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/gdsassert.h"
|
||||
#include "../jrd/gds_proto.h"
|
||||
|
@ -29,6 +29,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/math.h"
|
||||
|
||||
double _export MATH_multiply(double f1, double f2)
|
||||
|
@ -22,8 +22,9 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/mblr.h"
|
||||
#include "../jrd/mblr_proto.h"
|
||||
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/common.h"
|
||||
|
||||
|
||||
|
@ -38,6 +38,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <assert.h>
|
||||
#include "../jrd/mov.c"
|
||||
|
@ -21,13 +21,14 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: met.epp,v 1.1 2001-07-12 06:32:03 bellardo Exp $
|
||||
$Id: met.epp,v 1.2 2001-07-29 17:42:22 skywalker Exp $
|
||||
*/
|
||||
|
||||
#ifdef SHLIB_DEFS
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/ibsetjmp.h"
|
||||
@ -35,7 +36,7 @@ $Id: met.epp,v 1.1 2001-07-12 06:32:03 bellardo Exp $
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "../jrd/constants.h"
|
||||
#include "../include/jrd/gds.h"
|
||||
#include "../jrd/gds.h"
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/val.h"
|
||||
#include "../jrd/irq.h"
|
||||
@ -2075,9 +2076,9 @@ void MET_parse_sys_trigger(TDBB tdbb, REL relation)
|
||||
**************************************/
|
||||
DBB dbb;
|
||||
BLK* trigger; /* should really be "TRG**" */
|
||||
UCHAR* blr;
|
||||
const UCHAR* blr;
|
||||
UCHAR type;
|
||||
TEXT* name;
|
||||
const TEXT* name;
|
||||
VEC* ptr;
|
||||
REQ request;
|
||||
PLB old_pool;
|
||||
@ -2158,7 +2159,7 @@ void MET_parse_sys_trigger(TDBB tdbb, REL relation)
|
||||
tdbb->tdbb_default = ALL_pool();
|
||||
PAR_blr(tdbb,
|
||||
relation,
|
||||
blr,
|
||||
const_cast<UCHAR*>(blr),
|
||||
(CSB) NULL_PTR,
|
||||
(CSB*) NULL_PTR,
|
||||
&request,
|
||||
@ -2167,7 +2168,7 @@ void MET_parse_sys_trigger(TDBB tdbb, REL relation)
|
||||
|
||||
tdbb->tdbb_default = old_pool;
|
||||
|
||||
request->req_trg_name = name;
|
||||
request->req_trg_name = const_cast<TEXT*>(name);
|
||||
|
||||
request->req_flags |= req_sys_trigger;
|
||||
if (trig_flags & TRG_ignore_perm)
|
||||
@ -2377,7 +2378,7 @@ PRC MET_procedure(TDBB tdbb, int id, USHORT flags)
|
||||
lock->lck_owner_handle = LCK_get_owner_handle(tdbb, lock->lck_type);
|
||||
lock->lck_object = (BLK) procedure;
|
||||
/* TMN: Beware - this is a hairy AND UGLY cast */
|
||||
lock->lck_ast = (int (*)(void*)) blocking_ast_procedure;
|
||||
lock->lck_ast = reinterpret_cast<lck_ast_t>(blocking_ast_procedure);
|
||||
|
||||
LCK_lock(tdbb, procedure->prc_existence_lock, LCK_SR, TRUE);
|
||||
|
||||
@ -2586,7 +2587,7 @@ REL MET_relation(TDBB tdbb, USHORT id)
|
||||
lock->lck_owner_handle = LCK_get_owner_handle(tdbb, lock->lck_type);
|
||||
lock->lck_object = (BLK) relation;
|
||||
/* TMN: Beware - this is a hairy AND UGLY cast */
|
||||
lock->lck_ast = (int (*)(void*)) blocking_ast_relation;
|
||||
lock->lck_ast = reinterpret_cast<lck_ast_t>(blocking_ast_relation);
|
||||
|
||||
relation->rel_flags |= (REL_check_existence | REL_check_partners);
|
||||
return relation;
|
||||
|
@ -21,7 +21,8 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#ifdef NETWARE_386
|
||||
#ifdef N
|
||||
#include "firebird.h"ETWARE_386
|
||||
#include <sys/stat.h>
|
||||
#include <errno.h>
|
||||
#endif
|
||||
@ -68,15 +69,15 @@ SSHORT MISC_build_parameters_block(UCHAR * buffer, ...)
|
||||
pop the arguments off the call stack and put
|
||||
them into the passed buffer */
|
||||
|
||||
while (arg_type = va_arg(ptr, SCHAR))
|
||||
while (arg_type = va_arg(ptr, int))
|
||||
switch (arg_type) {
|
||||
case dtype_byte: /* byte */
|
||||
ch = va_arg(ptr, SCHAR);
|
||||
ch = (SCHAR) va_arg(ptr, int);
|
||||
STUFF(p, ch);
|
||||
break;
|
||||
|
||||
case dtype_short: /* short value */
|
||||
sh = va_arg(ptr, USHORT);
|
||||
sh = (USHORT) va_arg(ptr, int);
|
||||
STUFF_SHORT(p, sh);
|
||||
break;
|
||||
|
||||
@ -91,7 +92,7 @@ SSHORT MISC_build_parameters_block(UCHAR * buffer, ...)
|
||||
break;
|
||||
|
||||
case dtype_varying: /* short value followed by a value with that many bytes */
|
||||
sh = va_arg(ptr, USHORT);
|
||||
sh = (USHORT) va_arg(ptr, int);
|
||||
STUFF_SHORT(p, sh);
|
||||
q = va_arg(ptr, UCHAR *);
|
||||
STUFF_BYTES(p, q, sh);
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/gdsassert.h"
|
||||
#include "../jrd/time.h"
|
||||
#include "../jrd/jrd.h"
|
||||
|
@ -1,55 +0,0 @@
|
||||
/*
|
||||
* The contents of this file are subject to the Interbase Public
|
||||
* License Version 1.0 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy
|
||||
* of the License at http://www.Inprise.com/IPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an
|
||||
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
|
||||
* or implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code was created by Inprise Corporation
|
||||
* and its predecessors. Portions created by Inprise Corporation are
|
||||
* Copyright (C) Inprise Corporation.
|
||||
*
|
||||
* Copyright (C) 2000 Inprise Corporation
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
*
|
||||
* File generated by codes.e - do not edit!
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* MODULE: msg_facs.h
|
||||
* DESCRIPTION: ISC message facilities
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/******************************/
|
||||
/* ISC message facilities */
|
||||
/******************************/
|
||||
|
||||
#ifndef __cplusplus
|
||||
typedef
|
||||
#endif
|
||||
struct _facilities {
|
||||
int fac_code;
|
||||
char *facility;
|
||||
};
|
||||
|
||||
static CONST struct _facilities facilities[] = {
|
||||
0, "JRD ",
|
||||
3, "GFIX ",
|
||||
7, "DSQL ",
|
||||
8, "DYN ",
|
||||
12, "GBAK ",
|
||||
18, "GSEC ",
|
||||
19, "LICENSE ",
|
||||
21, "GSTAT ",
|
||||
0, NULL
|
||||
};
|
715
src/jrd/msgs.h
715
src/jrd/msgs.h
@ -1,715 +0,0 @@
|
||||
/*
|
||||
* The contents of this file are subject to the Interbase Public
|
||||
* License Version 1.0 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy
|
||||
* of the License at http://www.Inprise.com/IPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an
|
||||
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
|
||||
* or implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code was created by Inprise Corporation
|
||||
* and its predecessors. Portions created by Inprise Corporation are
|
||||
* Copyright (C) Inprise Corporation.
|
||||
*
|
||||
* Copyright (C) 2000 Inprise Corporation
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
*
|
||||
* File generated by codes.e - do not edit!
|
||||
*
|
||||
*/
|
||||
"unassigned code",
|
||||
"arithmetic exception, numeric overflow, or string truncation", /*1, arith_except */
|
||||
"invalid database key", /*2, bad_dbkey */
|
||||
"file %s is not a valid database", /*3, bad_db_format */
|
||||
"invalid database handle (no active connection)", /*4, bad_db_handle */
|
||||
"bad parameters on attach or create database", /*5, bad_dpb_content */
|
||||
"unrecognized database parameter block", /*6, bad_dpb_form */
|
||||
"invalid request handle", /*7, bad_req_handle */
|
||||
"invalid BLOB handle", /*8, bad_segstr_handle */
|
||||
"invalid BLOB ID", /*9, bad_segstr_id */
|
||||
"invalid parameter in transaction parameter block", /*10, bad_tpb_content */
|
||||
"invalid format for transaction parameter block", /*11, bad_tpb_form */
|
||||
"invalid transaction handle (expecting explicit transaction start)", /*12, bad_trans_handle */
|
||||
"internal gds software consistency check (%s)", /*13, bug_check */
|
||||
"conversion error from string \"%s\"", /*14, convert_error */
|
||||
"database file appears corrupt (%s)", /*15, db_corrupt */
|
||||
"deadlock", /*16, deadlock */
|
||||
"attempt to start more than %ld transactions", /*17, excess_trans */
|
||||
"no match for first value expression", /*18, from_no_match */
|
||||
"information type inappropriate for object specified", /*19, infinap */
|
||||
"no information of this type available for object specified", /*20, infona */
|
||||
"unknown information item", /*21, infunk */
|
||||
"action cancelled by trigger (%ld) to preserve data integrity", /*22, integ_fail */
|
||||
"invalid request BLR at offset %ld", /*23, invalid_blr */
|
||||
"I/O error for file %.0s\"%s\"", /*24, io_error */
|
||||
"lock conflict on no wait transaction", /*25, lock_conflict */
|
||||
"corrupt system table", /*26, metadata_corrupt */
|
||||
"validation error for column %s, value \"%s\"", /*27, not_valid */
|
||||
"no current record for fetch operation", /*28, no_cur_rec */
|
||||
"attempt to store duplicate value (visible to active transactions) in unique index \"%s\"", /*29, no_dup */
|
||||
"program attempted to exit without finishing database", /*30, no_finish */
|
||||
"unsuccessful metadata update", /*31, no_meta_update */
|
||||
"no permission for %s access to %s %s", /*32, no_priv */
|
||||
"transaction is not in limbo", /*33, no_recon */
|
||||
"invalid database key", /*34, no_record */
|
||||
"BLOB was not closed", /*35, no_segstr_close */
|
||||
"metadata is obsolete", /*36, obsolete_metadata */
|
||||
"cannot disconnect database with open transactions (%ld active)", /*37, open_trans */
|
||||
"message length error (encountered %ld, expected %ld)", /*38, port_len */
|
||||
"attempted update of read-only column", /*39, read_only_field */
|
||||
"attempted update of read-only table", /*40, read_only_rel */
|
||||
"attempted update during read-only transaction", /*41, read_only_trans */
|
||||
"cannot update read-only view %s", /*42, read_only_view */
|
||||
"no transaction for request", /*43, req_no_trans */
|
||||
"request synchronization error", /*44, req_sync */
|
||||
"request referenced an unavailable database", /*45, req_wrong_db */
|
||||
"segment buffer length shorter than expected", /*46, segment */
|
||||
"attempted retrieval of more segments than exist", /*47, segstr_eof */
|
||||
"attempted invalid operation on a BLOB", /*48, segstr_no_op */
|
||||
"attempted read of a new, open BLOB", /*49, segstr_no_read */
|
||||
"attempted action on blob outside transaction", /*50, segstr_no_trans */
|
||||
"attempted write to read-only BLOB", /*51, segstr_no_write */
|
||||
"attempted reference to BLOB in unavailable database", /*52, segstr_wrong_db */
|
||||
"operating system directive %s failed", /*53, sys_request */
|
||||
"attempt to fetch past the last record in a record stream", /*54, stream_eof */
|
||||
"unavailable database", /*55, unavailable */
|
||||
"table %s was omitted from the transaction reserving list", /*56, unres_rel */
|
||||
"request includes a DSRI extension not supported in this implementation", /*57, uns_ext */
|
||||
"feature is not supported", /*58, wish_list */
|
||||
"unsupported on-disk structure for file %s; found %ld, support %ld", /*59, wrong_ods */
|
||||
"wrong number of arguments on call", /*60, wronumarg */
|
||||
"Implementation limit exceeded", /*61, imp_exc */
|
||||
"%s", /*62, random */
|
||||
"unrecoverable conflict with limbo transaction %ld", /*63, fatal_conflict */
|
||||
"internal error", /*64, badblk */
|
||||
"internal error", /*65, invpoolcl */
|
||||
"too many requests", /*66, nopoolids */
|
||||
"internal error", /*67, relbadblk */
|
||||
"block size exceeds implementation restriction", /*68, blktoobig */
|
||||
"buffer exhausted", /*69, bufexh */
|
||||
"BLR syntax error: expected %s at offset %ld, encountered %ld", /*70, syntaxerr */
|
||||
"buffer in use", /*71, bufinuse */
|
||||
"internal error", /*72, bdbincon */
|
||||
"request in use", /*73, reqinuse */
|
||||
"incompatible version of on-disk structure", /*74, badodsver */
|
||||
"table %s is not defined", /*75, relnotdef */
|
||||
"column %s is not defined in table %s", /*76, fldnotdef */
|
||||
"internal error", /*77, dirtypage */
|
||||
"internal error", /*78, waifortra */
|
||||
"internal error", /*79, doubleloc */
|
||||
"internal error", /*80, nodnotfnd */
|
||||
"internal error", /*81, dupnodfnd */
|
||||
"internal error", /*82, locnotmar */
|
||||
"page %ld is of wrong type (expected %ld, found %ld)", /*83, badpagtyp */
|
||||
"database corrupted", /*84, corrupt */
|
||||
"checksum error on database page %ld", /*85, badpage */
|
||||
"index is broken", /*86, badindex */
|
||||
"database handle not zero", /*87, dbbnotzer */
|
||||
"transaction handle not zero", /*88, tranotzer */
|
||||
"transaction--request mismatch (synchronization error)", /*89, trareqmis */
|
||||
"bad handle count", /*90, badhndcnt */
|
||||
"wrong version of transaction parameter block", /*91, wrotpbver */
|
||||
"unsupported BLR version (expected %ld, encountered %ld)", /*92, wroblrver */
|
||||
"wrong version of database parameter block", /*93, wrodpbver */
|
||||
"BLOB and array data types are not supported for %s operation", /*94, blobnotsup */
|
||||
"database corrupted", /*95, badrelation */
|
||||
"internal error", /*96, nodetach */
|
||||
"internal error", /*97, notremote */
|
||||
"transaction in limbo", /*98, trainlim */
|
||||
"transaction not in limbo", /*99, notinlim */
|
||||
"transaction outstanding", /*100, traoutsta */
|
||||
"connection rejected by remote interface", /*101, connect_reject */
|
||||
"internal error", /*102, dbfile */
|
||||
"internal error", /*103, orphan */
|
||||
"no lock manager available", /*104, no_lock_mgr */
|
||||
"context already in use (BLR error)", /*105, ctxinuse */
|
||||
"context not defined (BLR error)", /*106, ctxnotdef */
|
||||
"data operation not supported", /*107, datnotsup */
|
||||
"undefined message number", /*108, badmsgnum */
|
||||
"bad parameter number", /*109, badparnum */
|
||||
"unable to allocate memory from operating system", /*110, virmemexh */
|
||||
"blocking signal has been received", /*111, blocking_signal */
|
||||
"lock manager error", /*112, lockmanerr */
|
||||
"communication error with journal \"%s\"", /*113, journerr */
|
||||
"key size exceeds implementation restriction for index \"%s\"", /*114, keytoobig */
|
||||
"null segment of UNIQUE KEY", /*115, nullsegkey */
|
||||
"SQL error code = %ld", /*116, sqlerr */
|
||||
"wrong DYN version", /*117, wrodynver */
|
||||
"function %s is not defined", /*118, funnotdef */
|
||||
"function %s could not be matched", /*119, funmismat */
|
||||
"", /*120, bad_msg_vec */
|
||||
"database detach completed with errors", /*121, bad_detach */
|
||||
"database system cannot read argument %ld", /*122, noargacc_read */
|
||||
"database system cannot write argument %ld", /*123, noargacc_write */
|
||||
"operation not supported", /*124, read_only */
|
||||
"%s extension error", /*125, ext_err */
|
||||
"not updatable", /*126, non_updatable */
|
||||
"no rollback performed", /*127, no_rollback */
|
||||
"", /*128, bad_sec_info */
|
||||
"", /*129, invalid_sec_info */
|
||||
"%s", /*130, misc_interpreted */
|
||||
"update conflicts with concurrent update", /*131, update_conflict */
|
||||
"product %s is not licensed", /*132, unlicensed */
|
||||
"object %s is in use", /*133, obj_in_use */
|
||||
"filter not found to convert type %ld to type %ld", /*134, nofilter */
|
||||
"cannot attach active shadow file", /*135, shadow_accessed */
|
||||
"invalid slice description language at offset %ld", /*136, invalid_sdl */
|
||||
"subscript out of bounds", /*137, out_of_bounds */
|
||||
"column not array or invalid dimensions (expected %ld, encountered %ld)", /*138, invalid_dimension */
|
||||
"record from transaction %ld is stuck in limbo", /*139, rec_in_limbo */
|
||||
"a file in manual shadow %ld is unavailable", /*140, shadow_missing */
|
||||
"secondary server attachments cannot validate databases", /*141, cant_validate */
|
||||
"secondary server attachments cannot start journaling", /*142, cant_start_journal */
|
||||
"generator %s is not defined", /*143, gennotdef */
|
||||
"secondary server attachments cannot start logging", /*144, cant_start_logging */
|
||||
"invalid BLOB type for operation", /*145, bad_segstr_type */
|
||||
"violation of FOREIGN KEY constraint \"%s\" on table \"%s\"", /*146, foreign_key */
|
||||
"minor version too high found %ld expected %ld", /*147, high_minor */
|
||||
"transaction %ld is %s", /*148, tra_state */
|
||||
"transaction marked invalid by I/O error", /*149, trans_invalid */
|
||||
"cache buffer for page %ld invalid", /*150, buf_invalid */
|
||||
"there is no index in table %s with id %d", /*151, indexnotdefined */
|
||||
"Your user name and password are not defined. Ask your database administrator to set up an InterBase login.", /*152, login */
|
||||
"invalid bookmark handle", /*153, invalid_bookmark */
|
||||
"invalid lock level %d", /*154, bad_lock_level */
|
||||
"lock on table %s conflicts with existing lock", /*155, relation_lock */
|
||||
"requested record lock conflicts with existing lock", /*156, record_lock */
|
||||
"maximum indexes per table (%d) exceeded", /*157, max_idx */
|
||||
"enable journal for database before starting online dump", /*158, jrn_enable */
|
||||
"online dump failure. Retry dump", /*159, old_failure */
|
||||
"an online dump is already in progress", /*160, old_in_progress */
|
||||
"no more disk/tape space. Cannot continue online dump", /*161, old_no_space */
|
||||
"journaling allowed only if database has Write-ahead Log", /*162, no_wal_no_jrn */
|
||||
"maximum number of online dump files that can be specified is 16", /*163, num_old_files */
|
||||
"error in opening Write-ahead Log file during recovery", /*164, wal_file_open */
|
||||
"invalid statement handle", /*165, bad_stmt_handle */
|
||||
"Write-ahead log subsystem failure", /*166, wal_failure */
|
||||
"WAL Writer error", /*167, walw_err */
|
||||
"Log file header of %s too small", /*168, logh_small */
|
||||
"Invalid version of log file %s", /*169, logh_inv_version */
|
||||
"Log file %s not latest in the chain but open flag still set", /*170, logh_open_flag */
|
||||
"Log file %s not closed properly; database recovery may be required", /*171, logh_open_flag2 */
|
||||
"Database name in the log file %s is different", /*172, logh_diff_dbname */
|
||||
"Unexpected end of log file %s at offset %ld", /*173, logf_unexpected_eof */
|
||||
"Incomplete log record at offset %ld in log file %s", /*174, logr_incomplete */
|
||||
"Log record header too small at offset %ld in log file %s", /*175, logr_header_small */
|
||||
"Log block too small at offset %ld in log file %s", /*176, logb_small */
|
||||
"Illegal attempt to attach to an uninitialized WAL segment for %s", /*177, wal_illegal_attach */
|
||||
"Invalid WAL parameter block option %s", /*178, wal_invalid_wpb */
|
||||
"Cannot roll over to the next log file %s", /*179, wal_err_rollover */
|
||||
"database does not use Write-ahead Log", /*180, no_wal */
|
||||
"cannot drop log file when journaling is enabled", /*181, drop_wal */
|
||||
"reference to invalid stream number", /*182, stream_not_defined */
|
||||
"WAL subsystem encountered error", /*183, wal_subsys_error */
|
||||
"WAL subsystem corrupted", /*184, wal_subsys_corrupt */
|
||||
"must specify archive file when enabling long term journal for databases with round-robin log files", /*185, no_archive */
|
||||
"database %s shutdown in progress", /*186, shutinprog */
|
||||
"refresh range number %ld already in use", /*187, range_in_use */
|
||||
"refresh range number %ld not found", /*188, range_not_found */
|
||||
"CHARACTER SET %s is not defined", /*189, charset_not_found */
|
||||
"lock time-out on wait transaction", /*190, lock_timeout */
|
||||
"procedure %s is not defined", /*191, prcnotdef */
|
||||
"parameter mismatch for procedure %s", /*192, prcmismat */
|
||||
"Database %s: WAL subsystem bug for pid %d\
|
||||
%s", /*193, wal_bugcheck */
|
||||
"Could not expand the WAL segment for database %s", /*194, wal_cant_expand */
|
||||
"status code %s unknown", /*195, codnotdef */
|
||||
"exception %s not defined", /*196, xcpnotdef */
|
||||
"exception %d", /*197, except */
|
||||
"restart shared cache manager", /*198, cache_restart */
|
||||
"invalid lock handle", /*199, bad_lock_handle */
|
||||
"long-term journaling already enabled", /*200, jrn_present */
|
||||
"Unable to roll over; please see InterBase log.", /*201, wal_err_rollover2 */
|
||||
"WAL I/O error. Please see InterBase log.", /*202, wal_err_logwrite */
|
||||
"WAL writer - Journal server communication error. Please see InterBase log.", /*203, wal_err_jrn_comm */
|
||||
"WAL buffers cannot be increased. Please see InterBase log.", /*204, wal_err_expansion */
|
||||
"WAL setup error. Please see InterBase log.", /*205, wal_err_setup */
|
||||
"WAL writer synchronization error for the database %s", /*206, wal_err_ww_sync */
|
||||
"Cannot start WAL writer for the database %s", /*207, wal_err_ww_start */
|
||||
"database %s shutdown", /*208, shutdown */
|
||||
"cannot modify an existing user privilege", /*209, existing_priv_mod */
|
||||
"Cannot delete PRIMARY KEY being used in FOREIGN KEY definition.", /*210, primary_key_ref */
|
||||
"Column used in a PRIMARY/UNIQUE constraint must be NOT NULL.", /*211, primary_key_notnull */
|
||||
"Name of Referential Constraint not defined in constraints table.", /*212, ref_cnstrnt_notfound */
|
||||
"Non-existent PRIMARY or UNIQUE KEY specified for FOREIGN KEY.", /*213, foreign_key_notfound */
|
||||
"Cannot update constraints (RDB$REF_CONSTRAINTS).", /*214, ref_cnstrnt_update */
|
||||
"Cannot update constraints (RDB$CHECK_CONSTRAINTS).", /*215, check_cnstrnt_update */
|
||||
"Cannot delete CHECK constraint entry (RDB$CHECK_CONSTRAINTS)", /*216, check_cnstrnt_del */
|
||||
"Cannot delete index segment used by an Integrity Constraint", /*217, integ_index_seg_del */
|
||||
"Cannot update index segment used by an Integrity Constraint", /*218, integ_index_seg_mod */
|
||||
"Cannot delete index used by an Integrity Constraint", /*219, integ_index_del */
|
||||
"Cannot modify index used by an Integrity Constraint", /*220, integ_index_mod */
|
||||
"Cannot delete trigger used by a CHECK Constraint", /*221, check_trig_del */
|
||||
"Cannot update trigger used by a CHECK Constraint", /*222, check_trig_update */
|
||||
"Cannot delete column being used in an Integrity Constraint.", /*223, cnstrnt_fld_del */
|
||||
"Cannot rename column being used in an Integrity Constraint.", /*224, cnstrnt_fld_rename */
|
||||
"Cannot update constraints (RDB$RELATION_CONSTRAINTS).", /*225, rel_cnstrnt_update */
|
||||
"Cannot define constraints on views", /*226, constaint_on_view */
|
||||
"internal gds software consistency check (invalid RDB$CONSTRAINT_TYPE)", /*227, invld_cnstrnt_type */
|
||||
"Attempt to define a second PRIMARY KEY for the same table", /*228, primary_key_exists */
|
||||
"cannot modify or erase a system trigger", /*229, systrig_update */
|
||||
"only the owner of a table may reassign ownership", /*230, not_rel_owner */
|
||||
"could not find table/procedure for GRANT", /*231, grant_obj_notfound */
|
||||
"could not find column for GRANT", /*232, grant_fld_notfound */
|
||||
"user does not have GRANT privileges for operation", /*233, grant_nopriv */
|
||||
"table/procedure has non-SQL security class defined", /*234, nonsql_security_rel */
|
||||
"column has non-SQL security class defined", /*235, nonsql_security_fld */
|
||||
"Write-ahead Log without shared cache configuration not allowed", /*236, wal_cache_err */
|
||||
"database shutdown unsuccessful", /*237, shutfail */
|
||||
"Operation violates CHECK constraint %s on view or table %s", /*238, check_constraint */
|
||||
"invalid service handle", /*239, bad_svc_handle */
|
||||
"database %s shutdown in %d seconds", /*240, shutwarn */
|
||||
"wrong version of service parameter block", /*241, wrospbver */
|
||||
"unrecognized service parameter block", /*242, bad_spb_form */
|
||||
"service %s is not defined", /*243, svcnotdef */
|
||||
"long-term journaling not enabled", /*244, no_jrn */
|
||||
"Cannot transliterate character between character sets", /*245, transliteration_failed */
|
||||
"WAL defined; Cache Manager must be started first", /*246, start_cm_for_wal */
|
||||
"Overflow log specification required for round-robin log", /*247, wal_ovflow_log_required */
|
||||
"Implementation of text subtype %d not located.", /*248, text_subtype */
|
||||
"Dynamic SQL Error", /*249, dsql_error */
|
||||
"Invalid command", /*250, dsql_command_err */
|
||||
"Data type for constant unknown", /*251, dsql_constant_err */
|
||||
"Cursor unknown", /*252, dsql_cursor_err */
|
||||
"Data type unknown", /*253, dsql_datatype_err */
|
||||
"Declared cursor already exists", /*254, dsql_decl_err */
|
||||
"Cursor not updatable", /*255, dsql_cursor_update_err */
|
||||
"Attempt to reopen an open cursor", /*256, dsql_cursor_open_err */
|
||||
"Attempt to reclose a closed cursor", /*257, dsql_cursor_close_err */
|
||||
"Column unknown", /*258, dsql_field_err */
|
||||
"Internal error", /*259, dsql_internal_err */
|
||||
"Table unknown", /*260, dsql_relation_err */
|
||||
"Procedure unknown", /*261, dsql_procedure_err */
|
||||
"Request unknown", /*262, dsql_request_err */
|
||||
"SQLDA missing or incorrect version, or incorrect number/type of variables", /*263, dsql_sqlda_err */
|
||||
"Count of columns does not equal count of values", /*264, dsql_var_count_err */
|
||||
"Invalid statement handle", /*265, dsql_stmt_handle */
|
||||
"Function unknown", /*266, dsql_function_err */
|
||||
"Column is not a BLOB", /*267, dsql_blob_err */
|
||||
"COLLATION %s is not defined", /*268, collation_not_found */
|
||||
"COLLATION %s is not valid for specified CHARACTER SET", /*269, collation_not_for_charset */
|
||||
"Option specified more than once", /*270, dsql_dup_option */
|
||||
"Unknown transaction option", /*271, dsql_tran_err */
|
||||
"Invalid array reference", /*272, dsql_invalid_array */
|
||||
"Array declared with too many dimensions", /*273, dsql_max_arr_dim_exceeded */
|
||||
"Illegal array dimension range", /*274, dsql_arr_range_error */
|
||||
"Trigger unknown", /*275, dsql_trigger_err */
|
||||
"Subselect illegal in this context", /*276, dsql_subselect_err */
|
||||
"Cannot prepare a CREATE DATABASE/SCHEMA statement", /*277, dsql_crdb_prepare_err */
|
||||
"must specify column name for view select expression", /*278, specify_field_err */
|
||||
"number of columns does not match select list", /*279, num_field_err */
|
||||
"Only simple column names permitted for VIEW WITH CHECK OPTION", /*280, col_name_err */
|
||||
"No WHERE clause for VIEW WITH CHECK OPTION", /*281, where_err */
|
||||
"Only one table allowed for VIEW WITH CHECK OPTION", /*282, table_view_err */
|
||||
"DISTINCT, GROUP or HAVING not permitted for VIEW WITH CHECK OPTION", /*283, distinct_err */
|
||||
"FOREIGN KEY column count does not match PRIMARY KEY", /*284, key_field_count_err */
|
||||
"No subqueries permitted for VIEW WITH CHECK OPTION", /*285, subquery_err */
|
||||
"expression evaluation not supported", /*286, expression_eval_err */
|
||||
"gen.c: node not supported", /*287, node_err */
|
||||
"Unexpected end of command", /*288, command_end_err */
|
||||
"INDEX %s", /*289, index_name */
|
||||
"EXCEPTION %s", /*290, exception_name */
|
||||
"COLUMN %s", /*291, field_name */
|
||||
"Token unknown", /*292, token_err */
|
||||
"union not supported", /*293, union_err */
|
||||
"Unsupported DSQL construct", /*294, dsql_construct_err */
|
||||
"column used with aggregate", /*295, field_aggregate_err */
|
||||
"invalid column reference", /*296, field_ref_err */
|
||||
"invalid ORDER BY clause", /*297, order_by_err */
|
||||
"Return mode by value not allowed for this data type", /*298, return_mode_err */
|
||||
" External functions cannot have more than 10 parameters", /*299, extern_func_err */
|
||||
"alias %s conflicts with an alias in the same statement", /*300, alias_conflict_err */
|
||||
"alias %s conflicts with a procedure in the same statement", /*301, procedure_conflict_error */
|
||||
"alias %s conflicts with a table in the same statement", /*302, relation_conflict_err */
|
||||
"Illegal use of keyword VALUE", /*303, dsql_domain_err */
|
||||
"segment count of 0 defined for index %s", /*304, idx_seg_err */
|
||||
"A node name is not permitted in a secondary, shadow, cache or log file name", /*305, node_name_err */
|
||||
"TABLE %s", /*306, table_name */
|
||||
"PROCEDURE %s", /*307, proc_name */
|
||||
"cannot create index %s", /*308, idx_create_err */
|
||||
"Write-ahead Log with shadowing configuration not allowed", /*309, wal_shadow_err */
|
||||
"there are %ld dependencies", /*310, dependency */
|
||||
"too many keys defined for index %s", /*311, idx_key_err */
|
||||
"Preceding file did not specify length, so %s must include starting page number", /*312, dsql_file_length_err */
|
||||
"Shadow number must be a positive integer", /*313, dsql_shadow_number_err */
|
||||
"Token unknown - line %ld, char %ld", /*314, dsql_token_unk_err */
|
||||
"there is no alias or table named %s at this scope level", /*315, dsql_no_relation_alias */
|
||||
"there is no index %s for table %s", /*316, indexname */
|
||||
"table %s is not referenced in plan", /*317, no_stream_plan */
|
||||
"table %s is referenced more than once in plan; use aliases to distinguish", /*318, stream_twice */
|
||||
"table %s is referenced in the plan but not the from list", /*319, stream_not_found */
|
||||
"Invalid use of CHARACTER SET or COLLATE", /*320, collation_requires_text */
|
||||
"Specified domain or source column does not exist", /*321, dsql_domain_not_found */
|
||||
"index %s cannot be used in the specified plan", /*322, index_unused */
|
||||
"the table %s is referenced twice; use aliases to differentiate", /*323, dsql_self_join */
|
||||
"illegal operation when at beginning of stream", /*324, stream_bof */
|
||||
"the current position is on a crack", /*325, stream_crack */
|
||||
"database or file exists", /*326, db_or_file_exists */
|
||||
"invalid comparison operator for find operation", /*327, invalid_operator */
|
||||
"Connection lost to pipe server", /*328, conn_lost */
|
||||
"bad checksum", /*329, bad_checksum */
|
||||
"wrong page type", /*330, page_type_err */
|
||||
"Cannot insert because the file is readonly or is on a read only medium.", /*331, ext_readonly_err */
|
||||
"multiple rows in singleton select", /*332, sing_select_err */
|
||||
"cannot attach to password database", /*333, psw_attach */
|
||||
"cannot start transaction for password database", /*334, psw_start_trans */
|
||||
"invalid direction for find operation", /*335, invalid_direction */
|
||||
"variable %s conflicts with parameter in same procedure", /*336, dsql_var_conflict */
|
||||
"Array/BLOB/DATE data types not allowed in arithmetic", /*337, dsql_no_blob_array */
|
||||
"%s is not a valid base table of the specified view", /*338, dsql_base_table */
|
||||
"table %s is referenced twice in view; use an alias to distinguish", /*339, duplicate_base_table */
|
||||
"view %s has more than one base table; use aliases to distinguish", /*340, view_alias */
|
||||
"cannot add index, index root page is full.", /*341, index_root_page_full */
|
||||
"BLOB SUB_TYPE %s is not defined", /*342, dsql_blob_type_unknown */
|
||||
"Too many concurrent executions of the same request", /*343, req_max_clones_exceeded */
|
||||
"duplicate specification of %s - not supported", /*344, dsql_duplicate_spec */
|
||||
"violation of PRIMARY or UNIQUE KEY constraint \"%s\" on table \"%s\"", /*345, unique_key_violation */
|
||||
"server version too old to support all CREATE DATABASE options", /*346, srvr_version_too_old */
|
||||
"drop database completed with errors", /*347, drdb_completed_with_errs */
|
||||
"procedure %s does not return any values", /*348, dsql_procedure_use_err */
|
||||
"count of column list and variable list do not match", /*349, dsql_count_mismatch */
|
||||
"attempt to index BLOB column in index %s", /*350, blob_idx_err */
|
||||
"attempt to index array column in index %s", /*351, array_idx_err */
|
||||
"too few key columns found for index %s (incorrect column name?)", /*352, key_field_err */
|
||||
"cannot delete", /*353, no_delete */
|
||||
"last column in a table cannot be deleted", /*354, del_last_field */
|
||||
"sort error", /*355, sort_err */
|
||||
"sort error: not enough memory", /*356, sort_mem_err */
|
||||
"too many versions", /*357, version_err */
|
||||
"invalid key position", /*358, inval_key_posn */
|
||||
"segments not allowed in expression index %s", /*359, no_segments_err */
|
||||
"sort error: corruption in data structure", /*360, crrp_data_err */
|
||||
"new record size of %ld bytes is too big", /*361, rec_size_err */
|
||||
"Inappropriate self-reference of column", /*362, dsql_field_ref */
|
||||
"request depth exceeded. (Recursive definition?)", /*363, req_depth_exceeded */
|
||||
"cannot access column %s in view %s", /*364, no_field_access */
|
||||
"dbkey not available for multi-table views", /*365, no_dbkey */
|
||||
"journal file wrong format", /*366, jrn_format_err */
|
||||
"intermediate journal file full", /*367, jrn_file_full */
|
||||
"The prepare statement identifies a prepare statement with an open cursor", /*368, dsql_open_cursor_request */
|
||||
"InterBase error", /*369, ib_error */
|
||||
"Cache redefined", /*370, cache_redef */
|
||||
"Insufficient memory to allocate page buffer cache", /*371, cache_too_small */
|
||||
"Log redefined", /*372, log_redef */
|
||||
"Log size too small", /*373, log_too_small */
|
||||
"Log partition size too small", /*374, partition_too_small */
|
||||
"Partitions not supported in series of log file specification", /*375, partition_not_supp */
|
||||
"Total length of a partitioned log must be specified", /*376, log_length_spec */
|
||||
"Precision must be from 1 to 18", /*377, precision_err */
|
||||
"Scale must be between zero and precision", /*378, scale_nogt */
|
||||
"Short integer expected", /*379, expec_short */
|
||||
"Long integer expected", /*380, expec_long */
|
||||
"Unsigned short integer expected", /*381, expec_ushort */
|
||||
"Invalid ESCAPE sequence", /*382, like_escape_invalid */
|
||||
"service %s does not have an associated executable", /*383, svcnoexe */
|
||||
"Failed to locate host machine.", /*384, net_lookup_err */
|
||||
"Undefined service %s/%s.", /*385, service_unknown */
|
||||
"The specified name was not found in the hosts file or Domain Name Services.", /*386, host_unknown */
|
||||
"user does not have GRANT privileges on base table/view for operation", /*387, grant_nopriv_on_base */
|
||||
"Ambiguous column reference.", /*388, dyn_fld_ambiguous */
|
||||
"Invalid aggregate reference", /*389, dsql_agg_ref_err */
|
||||
"navigational stream %ld references a view with more than one base table", /*390, complex_view */
|
||||
"Attempt to execute an unprepared dynamic SQL statement.", /*391, unprepared_stmt */
|
||||
"Positive value expected", /*392, expec_positive */
|
||||
"Incorrect values within SQLDA structure", /*393, dsql_sqlda_value_err */
|
||||
"invalid blob id", /*394, invalid_array_id */
|
||||
"Operation not supported for EXTERNAL FILE table %s", /*395, extfile_uns_op */
|
||||
"Service is currently busy: %s", /*396, svc_in_use */
|
||||
"stack size insufficent to execute current request", /*397, err_stack_limit */
|
||||
"Invalid key for find operation", /*398, invalid_key */
|
||||
"Error initializing the network software.", /*399, net_init_error */
|
||||
"Unable to load required library %s.", /*400, loadlib_failure */
|
||||
"Unable to complete network request to host \"%s\".", /*401, network_error */
|
||||
"Failed to establish a connection.", /*402, net_connect_err */
|
||||
"Error while listening for an incoming connection.", /*403, net_connect_listen_err */
|
||||
"Failed to establish a secondary connection for event processing.", /*404, net_event_connect_err */
|
||||
"Error while listening for an incoming event connection request.", /*405, net_event_listen_err */
|
||||
"Error reading data from the connection.", /*406, net_read_err */
|
||||
"Error writing data to the connection.", /*407, net_write_err */
|
||||
"Cannot deactivate index used by an Integrity Constraint", /*408, integ_index_deactivate */
|
||||
"Cannot deactivate primary index", /*409, integ_deactivate_primary */
|
||||
"Client/Server Express not supported in this release", /*410, cse_not_supported */
|
||||
"", /*411, tra_must_sweep */
|
||||
"Access to databases on file servers is not supported.", /*412, unsupported_network_drive */
|
||||
"Error while trying to create file", /*413, io_create_err */
|
||||
"Error while trying to open file", /*414, io_open_err */
|
||||
"Error while trying to close file", /*415, io_close_err */
|
||||
"Error while trying to read from file", /*416, io_read_err */
|
||||
"Error while trying to write to file", /*417, io_write_err */
|
||||
"Error while trying to delete file", /*418, io_delete_err */
|
||||
"Error while trying to access file", /*419, io_access_err */
|
||||
"A fatal exception occurred during the execution of a user defined function.", /*420, udf_exception */
|
||||
"connection lost to database", /*421, lost_db_connection */
|
||||
"User cannot write to RDB$USER_PRIVILEGES", /*422, no_write_user_priv */
|
||||
"token size exceeds limit", /*423, token_too_long */
|
||||
"Maximum user count exceeded. Contact your database administrator.", /*424, max_att_exceeded */
|
||||
"Your login %s is same as one of the SQL role name. Ask your database administrator to set up a valid InterBase login.", /*425, login_same_as_role_name */
|
||||
"\"REFERENCES table\" without \"(column)\" requires PRIMARY KEY on referenced table", /*426, reftable_requires_pk */
|
||||
"The username entered is too long. Maximum length is 31 bytes.", /*427, usrname_too_long */
|
||||
"The password specified is too long. Maximum length is 8 bytes.", /*428, password_too_long */
|
||||
"A username is required for this operation.", /*429, usrname_required */
|
||||
"A password is required for this operation", /*430, password_required */
|
||||
"The network protocol specified is invalid", /*431, bad_protocol */
|
||||
"A duplicate user name was found in the security database", /*432, dup_usrname_found */
|
||||
"The user name specified was not found in the security database", /*433, usrname_not_found */
|
||||
"An error occurred while attempting to add the user.", /*434, error_adding_sec_record */
|
||||
"An error occurred while attempting to modify the user record.", /*435, error_modifying_sec_record */
|
||||
"An error occurred while attempting to delete the user record.", /*436, error_deleting_sec_record */
|
||||
"An error occurred while updating the security database.", /*437, error_updating_sec_db */
|
||||
"sort record size of %ld bytes is too big", /*438, sort_rec_size_err */
|
||||
"can not define a not null column with NULL as default value", /*439, bad_default_value */
|
||||
"invalid clause --- '%s'", /*440, invalid_clause */
|
||||
"too many open handles to database", /*441, too_many_handles */
|
||||
"size of optimizer block exceeded", /*442, optimizer_blk_exc */
|
||||
"a string constant is delimited by double quotes", /*443, invalid_string_constant */
|
||||
"DATE must be changed to TIMESTAMP", /*444, transitional_date */
|
||||
"attempted update on read-only database", /*445, read_only_database */
|
||||
"SQL dialect %s is not supported in this database", /*446, must_be_dialect_2_and_up */
|
||||
"A fatal exception occurred during the execution of a blob filter.", /*447, blob_filter_exception */
|
||||
"Access violation. The code attempted to access a virtual address without privilege to do so.", /*448, exception_access_violation */
|
||||
"Datatype misalignment. The attempted to read or write a value that was not stored on a memory boundary.", /*449, exception_datatype_missalignment */
|
||||
"Array bounds exceeded. The code attempted to access an array element that is out of bounds.", /*450, exception_array_bounds_exceeded */
|
||||
"Float denormal operand. One of the floating-point operands is too small to represent a standard float value.", /*451, exception_float_denormal_operand */
|
||||
"Floating-point divide by zero. The code attempted to divide a floating-point value by zero.", /*452, exception_float_divide_by_zero */
|
||||
"Floating-point inexact result. The result of a floating-point operation cannot be represented as a deciaml fraction.", /*453, exception_float_inexact_result */
|
||||
"Floating-point invalid operand. An indeterminant error occurred during a floating-point operation.", /*454, exception_float_invalid_operand */
|
||||
"Floating-point overflow. The exponent of a floating-point operation is greater than the magnitude allowed.", /*455, exception_float_overflow */
|
||||
"Floating-point stack check. The stack overflowed or underflowed as the result of a floating-point operation.", /*456, exception_float_stack_check */
|
||||
"Floating-point underflow. The exponent of a floating-point operation is less than the magnitude allowed.", /*457, exception_float_underflow */
|
||||
"Integer divide by zero. The code attempted to divide an integer value by an integer divisor of zero.", /*458, exception_integer_divide_by_zero */
|
||||
"Integer overflow. The result of an integer operation caused the most significant bit of the result to carry.", /*459, exception_integer_overflow */
|
||||
"An exception occurred that does not have a description. Exception number %X.", /*460, exception_unknown */
|
||||
"Stack overflow. The resource requirements of the runtime stack have exceeded the memory available to it.", /*461, exception_stack_overflow */
|
||||
"Segmentation Fault. The code attempted to access memory without priviledges.", /*462, exception_sigsegv */
|
||||
"Illegal Instruction. The Code attempted to perfrom an illegal operation.", /*463, exception_sigill */
|
||||
"Bus Error. The Code caused a system bus error.", /*464, exception_sigbus */
|
||||
"Floating Point Error. The Code caused an Arithmetic Exception or a floating point exception.", /*465, exception_sigfpe */
|
||||
"Cannot delete rows from external files.", /*466, ext_file_delete */
|
||||
"Cannot update rows in external files.", /*467, ext_file_modify */
|
||||
"Unable to perform operation. You must be either SYSDBA or owner of the database", /*468, adm_task_denied */
|
||||
"Specified EXTRACT part does not exist in input datatype", /*469, extract_input_mismatch */
|
||||
"Service %s requires SYSDBA permissions. Reattach to the Service Manager using the SYSDBA account.", /*470, insufficient_svc_privileges */
|
||||
"The file %s is currently in use by another process. Try again later.", /*471, file_in_use */
|
||||
"Cannot attach to services manager", /*472, service_att_err */
|
||||
"Metadata update statement is not allowed by the current database SQL dialect %d", /*473, ddl_not_allowed_by_db_sql_dial */
|
||||
"operation was cancelled", /*474, cancelled */
|
||||
"unexpected item in service parameter block, expected %s", /*475, unexp_spb_form */
|
||||
"Client SQL dialect %d does not support reference to %s datatype", /*476, sql_dialect_datatype_unsupport */
|
||||
"user name and password are required while attaching to the services manager", /*477, svcnouser */
|
||||
"You created an indirect dependency on uncommitted metadata. You must roll back the current transaction.", /*478, depend_on_uncommitted_rel */
|
||||
"The service name was not specified.", /*479, svc_name_missing */
|
||||
"Too many Contexts of Relation/Procedure/Views. Maximum allowed is 127", /*480, too_many_contexts */
|
||||
"data type not supported for arithmetic", /*481, datype_notsup */
|
||||
"Database dialect being changed from 3 to 1", /*482, dialect_reset_warning */
|
||||
"Database dialect not changed.", /*483, dialect_not_changed */
|
||||
"Unable to create database %s", /*484, database_create_failed */
|
||||
"Database dialect %d is not a valid dialect.", /*485, inv_dialect_specified */
|
||||
"Valid database dialects are %s.", /*486, valid_db_dialects */
|
||||
"SQL warning code = %ld", /*487, sqlwarn */
|
||||
"DATE data type is now called TIMESTAMP", /*488, dtype_renamed */
|
||||
"Function %s is in %s, which is not in a permitted directory for external functions.", /*489, extern_func_dir_error */
|
||||
"value exceeds the range for valid dates", /*490, date_range_exceeded */
|
||||
"passed client dialect %d is not a valid dialect.", /*491, inv_client_dialect_specified */
|
||||
"Valid client dialects are %s.", /*492, valid_client_dialects */
|
||||
"Unsupported field type specified in BETWEEN predicate.", /*493, optimizer_between_err */
|
||||
"Services functionality will be supported in a later version of the product", /*494, service_not_supported */
|
||||
"data base file name (%s) already given", /*495, gfix_db_name */
|
||||
"invalid switch %s", /*496, gfix_invalid_sw */
|
||||
"incompatible switch combination", /*497, gfix_incmp_sw */
|
||||
"replay log pathname required", /*498, gfix_replay_req */
|
||||
"number of page buffers for cache required", /*499, gfix_pgbuf_req */
|
||||
"numeric value required", /*500, gfix_val_req */
|
||||
"positive numeric value required", /*501, gfix_pval_req */
|
||||
"number of transactions per sweep required", /*502, gfix_trn_req */
|
||||
"\"full\" or \"reserve\" required", /*503, gfix_full_req */
|
||||
"user name required", /*504, gfix_usrname_req */
|
||||
"password required", /*505, gfix_pass_req */
|
||||
"subsystem name", /*506, gfix_subs_name */
|
||||
"\"wal\" required", /*507, gfix_wal_req */
|
||||
"number of seconds required", /*508, gfix_sec_req */
|
||||
"numeric value between 0 and 32767 inclusive required", /*509, gfix_nval_req */
|
||||
"must specify type of shutdown", /*510, gfix_type_shut */
|
||||
"please retry, specifying an option", /*511, gfix_retry */
|
||||
"please retry, giving a database name", /*512, gfix_retry_db */
|
||||
"internal block exceeds maximum size", /*513, gfix_exceed_max */
|
||||
"corrupt pool", /*514, gfix_corrupt_pool */
|
||||
"virtual memory exhausted", /*515, gfix_mem_exhausted */
|
||||
"bad pool id", /*516, gfix_bad_pool */
|
||||
"Transaction state %d not in valid range.", /*517, gfix_trn_not_valid */
|
||||
"unexpected end of input", /*518, gfix_unexp_eoi */
|
||||
"failed to reconnect to a transaction in database %s", /*519, gfix_recon_fail */
|
||||
"Transaction description item unknown", /*520, gfix_trn_unknown */
|
||||
"\"read_only\" or \"read_write\" required", /*521, gfix_mode_req */
|
||||
" -sql_dialect set database dialect n", /*522, gfix_opt_SQL_dialect */
|
||||
"Cannot SELECT RDB$DB_KEY from a stored procedure.", /*523, dsql_dbkey_from_non_table */
|
||||
"Precision 10 to 18 changed from DOUBLE PRECISION in SQL dialect 1 to 64-bit scaled integer in SQL dialect 3", /*524, dsql_transitional_numeric */
|
||||
"Use of %s expression that returns different results in dialect 1 and dialect 3", /*525, dsql_dialect_warning_expr */
|
||||
"Database SQL dialect %d does not support reference to %s datatype", /*526, sql_db_dialect_dtype_unsupport */
|
||||
"DB dialect %d and client dialect %d conflict with respect to numeric precision %d.", /*527, isc_sql_dialect_conflict_num */
|
||||
"WARNING: Numeric literal %s is interpreted as a floating-point", /*528, dsql_warning_number_ambiguous */
|
||||
"value in SQL dialect 1, but as an exact numeric value in SQL dialect 3.", /*529, dsql_warning_number_ambiguous1 */
|
||||
"WARNING: NUMERIC and DECIMAL fields with precision 10 or greater are stored", /*530, dsql_warn_precision_ambiguous */
|
||||
"as approximate floating-point values in SQL dialect 1, but as 64-bit", /*531, dsql_warn_precision_ambiguous1 */
|
||||
"integers in SQL dialect 3.", /*532, dsql_warn_precision_ambiguous2 */
|
||||
"SQL role %s does not exist", /*533, dyn_role_does_not_exist */
|
||||
"user %s has no grant admin option on SQL role %s", /*534, dyn_no_grant_admin_opt */
|
||||
"user %s is not a member of SQL role %s", /*535, dyn_user_not_role_member */
|
||||
"%s is not the owner of SQL role %s", /*536, dyn_delete_role_failed */
|
||||
"%s is a SQL role and not a user", /*537, dyn_grant_role_to_user */
|
||||
"user name %s could not be used for SQL role", /*538, dyn_inv_sql_role_name */
|
||||
"SQL role %s already exists", /*539, dyn_dup_sql_role */
|
||||
"keyword %s can not be used as a SQL role name", /*540, dyn_kywd_spec_for_role */
|
||||
"SQL roles are not supported in on older versions of the database. A backup and restore of the database is required.", /*541, dyn_roles_not_supported */
|
||||
"Cannot rename domain %s to %s. A domain with that name already exists.", /*542, dyn_domain_name_exists */
|
||||
"Cannot rename column %s to %s. A column with that name already exists in table %s.", /*543, dyn_field_name_exists */
|
||||
"Column %s from table %s is referenced in %s", /*544, dyn_dependency_exists */
|
||||
"Cannot change datatype for column %s. Changing datatype is not supported for BLOB or ARRAY columns.", /*545, dyn_dtype_invalid */
|
||||
"New size specified for column %s must be at least %d characters.", /*546, dyn_char_fld_too_small */
|
||||
"Cannot change datatype for %s. Conversion from base type %s to %s is not supported.", /*547, dyn_invalid_dtype_conversion */
|
||||
"Cannot change datatype for column %s from a character type to a non-character type.", /*548, dyn_dtype_conv_invalid */
|
||||
"found unknown switch", /*549, gbak_unknown_switch */
|
||||
"page size parameter missing", /*550, gbak_page_size_missing */
|
||||
"Page size specified (%ld) greater than limit (8192 bytes)", /*551, gbak_page_size_toobig */
|
||||
"redirect location for output is not specified", /*552, gbak_redir_ouput_missing */
|
||||
"conflicting switches for backup/restore", /*553, gbak_switches_conflict */
|
||||
"device type %s not known", /*554, gbak_unknown_device */
|
||||
"protection is not there yet", /*555, gbak_no_protection */
|
||||
"page size is allowed only on restore or create", /*556, gbak_page_size_not_allowed */
|
||||
"multiple sources or destinations specified", /*557, gbak_multi_source_dest */
|
||||
"requires both input and output filenames", /*558, gbak_filename_missing */
|
||||
"input and output have the same name. Disallowed.", /*559, gbak_dup_inout_names */
|
||||
"expected page size, encountered \"%s\"", /*560, gbak_inv_page_size */
|
||||
"REPLACE specified, but the first file %s is a database", /*561, gbak_db_specified */
|
||||
"database %s already exists. To replace it, use the -R switch", /*562, gbak_db_exists */
|
||||
"device type not specified", /*563, gbak_unk_device */
|
||||
"gds_$blob_info failed", /*564, gbak_blob_info_failed */
|
||||
"do not understand BLOB INFO item %ld", /*565, gbak_unk_blob_item */
|
||||
"gds_$get_segment failed", /*566, gbak_get_seg_failed */
|
||||
"gds_$close_blob failed", /*567, gbak_close_blob_failed */
|
||||
"gds_$open_blob failed", /*568, gbak_open_blob_failed */
|
||||
"Failed in put_blr_gen_id", /*569, gbak_put_blr_gen_id_failed */
|
||||
"data type %ld not understood", /*570, gbak_unk_type */
|
||||
"gds_$compile_request failed", /*571, gbak_comp_req_failed */
|
||||
"gds_$start_request failed", /*572, gbak_start_req_failed */
|
||||
" gds_$receive failed", /*573, gbak_rec_failed */
|
||||
"gds_$release_request failed", /*574, gbak_rel_req_failed */
|
||||
" gds_$database_info failed", /*575, gbak_db_info_failed */
|
||||
"Expected database description record", /*576, gbak_no_db_desc */
|
||||
"failed to create database %s", /*577, gbak_db_create_failed */
|
||||
"RESTORE: decompression length error", /*578, gbak_decomp_len_error */
|
||||
"cannot find table %s", /*579, gbak_tbl_missing */
|
||||
"Cannot find column for BLOB", /*580, gbak_blob_col_missing */
|
||||
"gds_$create_blob failed", /*581, gbak_create_blob_failed */
|
||||
"gds_$put_segment failed", /*582, gbak_put_seg_failed */
|
||||
"expected record length", /*583, gbak_rec_len_exp */
|
||||
"wrong length record, expected %ld encountered %ld", /*584, gbak_inv_rec_len */
|
||||
"expected data attribute", /*585, gbak_exp_data_type */
|
||||
"Failed in store_blr_gen_id", /*586, gbak_gen_id_failed */
|
||||
"do not recognize record type %ld", /*587, gbak_unk_rec_type */
|
||||
"Expected backup version 1, 2, or 3. Found %ld", /*588, gbak_inv_bkup_ver */
|
||||
"expected backup description record", /*589, gbak_missing_bkup_desc */
|
||||
"string truncated", /*590, gbak_string_trunc */
|
||||
" warning -- record could not be restored", /*591, gbak_cant_rest_record */
|
||||
"gds_$send failed", /*592, gbak_send_failed */
|
||||
"no table name for data", /*593, gbak_no_tbl_name */
|
||||
"unexpected end of file on backup file", /*594, gbak_unexp_eof */
|
||||
"database format %ld is too old to restore to", /*595, gbak_db_format_too_old */
|
||||
"array dimension for column %s is invalid", /*596, gbak_inv_array_dim */
|
||||
"Expected XDR record length", /*597, gbak_xdr_len_expected */
|
||||
"cannot open backup file %s", /*598, gbak_open_bkup_error */
|
||||
"cannot open status and error output file %s", /*599, gbak_open_error */
|
||||
"blocking factor parameter missing", /*600, gbak_missing_block_fac */
|
||||
"expected blocking factor, encountered \"%s\"", /*601, gbak_inv_block_fac */
|
||||
"a blocking factor may not be used in conjunction with device CT", /*602, gbak_block_fac_specified */
|
||||
"user name parameter missing", /*603, gbak_missing_username */
|
||||
"password parameter missing", /*604, gbak_missing_password */
|
||||
" missing parameter for the number of bytes to be skipped", /*605, gbak_missing_skipped_bytes */
|
||||
"expected number of bytes to be skipped, encountered \"%s\"", /*606, gbak_inv_skipped_bytes */
|
||||
"Bad attribute for RDB$CHARACTER_SETS", /*607, gbak_err_restore_charset */
|
||||
"Bad attribute for RDB$COLLATIONS", /*608, gbak_err_restore_collation */
|
||||
"Unexpected I/O error while reading from backup file", /*609, gbak_read_error */
|
||||
"Unexpected I/O error while writing to backup file", /*610, gbak_write_error */
|
||||
"could not drop database %s (database might be in use)", /*611, gbak_db_in_use */
|
||||
"System memory exhausted", /*612, gbak_sysmemex */
|
||||
"Bad attributes for restoring SQL role", /*613, gbak_restore_role_failed */
|
||||
"SQL role parameter missing", /*614, gbak_role_op_missing */
|
||||
"page buffers parameter missing", /*615, gbak_page_buffers_missing */
|
||||
"expected page buffers, encountered \"%s\"", /*616, gbak_page_buffers_wrong_param */
|
||||
"page buffers is allowed only on restore or create", /*617, gbak_page_buffers_restore */
|
||||
"size specification either missing or incorrect for file %s", /*618, gbak_inv_size */
|
||||
"file %s out of sequence", /*619, gbak_file_outof_sequence */
|
||||
"can't join -- one of the files missing", /*620, gbak_join_file_missing */
|
||||
" standard input is not supported when using join operation", /*621, gbak_stdin_not_supptd */
|
||||
"standard output is not supported when using split operation", /*622, gbak_stdout_not_supptd */
|
||||
"backup file %s might be corrupt", /*623, gbak_bkup_corrupt */
|
||||
"database file specification missing", /*624, gbak_unk_db_file_spec */
|
||||
"can't write a header record to file %s", /*625, gbak_hdr_write_failed */
|
||||
"free disk space exhausted", /*626, gbak_disk_space_ex */
|
||||
"file size given (%d) is less than minimum allowed (%d)", /*627, gbak_size_lt_min */
|
||||
"service name parameter missing", /*628, gbak_svc_name_missing */
|
||||
"Cannot restore over current database, must be SYSDBA or owner of the existing database.", /*629, gbak_not_ownr */
|
||||
"\"read_only\" or \"read_write\" required", /*630, gbak_mode_req */
|
||||
"unable to open database", /*631, gsec_cant_open_db */
|
||||
"error in switch specifications", /*632, gsec_switches_error */
|
||||
"no operation specified", /*633, gsec_no_op_spec */
|
||||
"no user name specified", /*634, gsec_no_usr_name */
|
||||
"add record error", /*635, gsec_err_add */
|
||||
"modify record error", /*636, gsec_err_modify */
|
||||
"find/modify record error", /*637, gsec_err_find_mod */
|
||||
"record not found for user: %s", /*638, gsec_err_rec_not_found */
|
||||
"delete record error", /*639, gsec_err_delete */
|
||||
"find/delete record error", /*640, gsec_err_find_del */
|
||||
"find/display record error", /*641, gsec_err_find_disp */
|
||||
"invalid parameter, no switch defined", /*642, gsec_inv_param */
|
||||
"operation already specified", /*643, gsec_op_specified */
|
||||
"password already specified", /*644, gsec_pw_specified */
|
||||
"uid already specified", /*645, gsec_uid_specified */
|
||||
"gid already specified", /*646, gsec_gid_specified */
|
||||
"project already specified", /*647, gsec_proj_specified */
|
||||
"organization already specified", /*648, gsec_org_specified */
|
||||
"first name already specified", /*649, gsec_fname_specified */
|
||||
"middle name already specified", /*650, gsec_mname_specified */
|
||||
"last name already specified", /*651, gsec_lname_specified */
|
||||
"invalid switch specified", /*652, gsec_inv_switch */
|
||||
"ambiguous switch specified", /*653, gsec_amb_switch */
|
||||
"no operation specified for parameters", /*654, gsec_no_op_specified */
|
||||
"no parameters allowed for this operation", /*655, gsec_params_not_allowed */
|
||||
"incompatible switches specified", /*656, gsec_incompat_switch */
|
||||
"Invalid user name (maximum 31 bytes allowed)", /*657, gsec_inv_username */
|
||||
"Warning - maximum 8 significant bytes of password used", /*658, gsec_inv_pw_length */
|
||||
"database already specified", /*659, gsec_db_specified */
|
||||
"database administrator name already specified", /*660, gsec_db_admin_specified */
|
||||
"database administrator password already specified", /*661, gsec_db_admin_pw_specified */
|
||||
"SQL role name already specified", /*662, gsec_sql_role_specified */
|
||||
"The license file does not exist or could not be opened for read", /*663, license_no_file */
|
||||
"operation already specified", /*664, license_op_specified */
|
||||
"no operation specified", /*665, license_op_missing */
|
||||
"invalid switch", /*666, license_inv_switch */
|
||||
"invalid switch combination", /*667, license_inv_switch_combo */
|
||||
"illegal operation/switch combination", /*668, license_inv_op_combo */
|
||||
"ambiguous switch", /*669, license_amb_switch */
|
||||
"invalid parameter, no switch specified", /*670, license_inv_parameter */
|
||||
"switch does not take any parameter", /*671, license_param_specified */
|
||||
"switch requires a parameter", /*672, license_param_req */
|
||||
"syntax error in command line", /*673, license_syntx_error */
|
||||
"The certificate was not added. A duplicate ID exists in the license file.", /*674, license_dup_id */
|
||||
"The certificate was not added. Invalid certificate ID / Key combination.", /*675, license_inv_id_key */
|
||||
"The certificate was not removed. The key does not exist or corresponds to a temporary evaluation license.", /*676, license_err_remove */
|
||||
"An error occurred updating the license file. Operation cancelled.", /*677, license_err_update */
|
||||
"The certificate could not be validated based on the information given. Please recheck the ID and key information.", /*678, license_err_convert */
|
||||
"Operation failed. An unknown error occurred.", /*679, license_err_unk */
|
||||
"Add license operation failed, KEY: %s ID: %s", /*680, license_svc_err_add */
|
||||
"Remove license operation failed, KEY: %s", /*681, license_svc_err_remove */
|
||||
"The evaluation license has already been used on this server. You need to purchase a non-evaluation license.", /*682, license_eval_exists */
|
||||
"found unknown switch", /*683, gstat_unknown_switch */
|
||||
"please retry, giving a database name", /*684, gstat_retry */
|
||||
"Wrong ODS version, expected %d, encountered %d", /*685, gstat_wrong_ods */
|
||||
"Unexpected end of database file.", /*686, gstat_unexpected_eof */
|
||||
"Can't open database file %s", /*687, gstat_open_err */
|
||||
"Can't read a database page", /*688, gstat_read_err */
|
||||
"System memory exhausted", /*689, gstat_sysmemex */
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/jrd.h"
|
||||
#include "../jrd/ods.h"
|
||||
@ -30,7 +31,7 @@
|
||||
#include "../jrd/exe.h"
|
||||
#include "../jrd/sbm.h"
|
||||
#include "../jrd/rse.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../jrd/rng.h"
|
||||
#include "../jrd/lck.h"
|
||||
#include "../jrd/cch.h"
|
||||
|
@ -19,6 +19,7 @@
|
||||
* conditionals, as the engine now fully supports
|
||||
* readonly databases.
|
||||
*/
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <fcntl.h>
|
||||
#include <errno.h>
|
||||
@ -33,7 +34,7 @@
|
||||
#include "../jrd/ods.h"
|
||||
#include "../jrd/lck.h"
|
||||
#include "../jrd/cch.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
|
||||
|
||||
extern "C" {
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/dbg_proto.h"
|
||||
|
||||
|
@ -21,6 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <string.h>
|
||||
#include "../jrd/common.h"
|
||||
@ -31,7 +32,7 @@
|
||||
#include "../jrd/jrn.h"
|
||||
#include "../jrd/old.h"
|
||||
#include "../jrd/llio.h"
|
||||
#include "../jrd/codes.h"
|
||||
#include "gen/codes.h"
|
||||
#include "../wal/wal.h"
|
||||
#include "../jrd/ail.h"
|
||||
#include "../jrd/all_proto.h"
|
||||
@ -120,7 +121,7 @@ ULONG start_seqno, USHORT start_file, USHORT num_files, SCHAR ** files)
|
||||
journal_dir[jd_len] = 0;
|
||||
|
||||
if (!jd_len)
|
||||
ERR_post(gds__jrn_enable, 0);
|
||||
ERR_post(gds_jrn_enable, 0);
|
||||
|
||||
if ((ret_val = JRN_init(tdbb->tdbb_status_vector,
|
||||
&dbb->dbb_journal,
|
||||
@ -172,7 +173,7 @@ ULONG start_seqno, USHORT start_file, USHORT num_files, SCHAR ** files)
|
||||
start_seqno, start_file,
|
||||
JRND_SIZE + dbb->dbb_page_size, seqno, offset, p_offset)) {
|
||||
old_fini(&OLD_handle, 0);
|
||||
ERR_post(gds__old_failure, gds_arg_string,
|
||||
ERR_post(gds_old_failure, gds_arg_string,
|
||||
"Online Dump Initialize failed", 0);
|
||||
}
|
||||
|
||||
@ -225,7 +226,7 @@ ULONG start_seqno, USHORT start_file, USHORT num_files, SCHAR ** files)
|
||||
file_seqno = OLD_handle->old_file_seqno;
|
||||
block_seqno = OLD_handle->old_block->ob_cur_seqno;
|
||||
old_fini(&OLD_handle, OLD_EOF);
|
||||
ERR_post(gds__old_no_space,
|
||||
ERR_post(gds_old_no_space,
|
||||
gds_arg_number, (SLONG) dump_id,
|
||||
gds_arg_number, (SLONG) last_page,
|
||||
gds_arg_number, (SLONG) block_seqno,
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user