8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-02-02 09:20:39 +01:00

Changed a lot of isc_random messages to new gds codes

This commit is contained in:
AlexPeshkoff 2017-11-10 20:12:37 +03:00
parent 9c83689981
commit 044edb7068
38 changed files with 689 additions and 141 deletions

View File

@ -1726,6 +1726,98 @@ C --
PARAMETER (GDS__sysf_invalid_first_last_part = 335545156)
INTEGER*4 GDS__sysf_invalid_date_timestamp
PARAMETER (GDS__sysf_invalid_date_timestamp = 335545157)
INTEGER*4 GDS__precision_err2
PARAMETER (GDS__precision_err2 = 335545158)
INTEGER*4 GDS__bad_batch_handle
PARAMETER (GDS__bad_batch_handle = 335545159)
INTEGER*4 GDS__intl_char
PARAMETER (GDS__intl_char = 335545160)
INTEGER*4 GDS__null_block
PARAMETER (GDS__null_block = 335545161)
INTEGER*4 GDS__mixed_info
PARAMETER (GDS__mixed_info = 335545162)
INTEGER*4 GDS__unknown_info
PARAMETER (GDS__unknown_info = 335545163)
INTEGER*4 GDS__bpb_version
PARAMETER (GDS__bpb_version = 335545164)
INTEGER*4 GDS__user_manager
PARAMETER (GDS__user_manager = 335545165)
INTEGER*4 GDS__icu_entrypoint
PARAMETER (GDS__icu_entrypoint = 335545166)
INTEGER*4 GDS__icu_library
PARAMETER (GDS__icu_library = 335545167)
INTEGER*4 GDS__metadata_name
PARAMETER (GDS__metadata_name = 335545168)
INTEGER*4 GDS__tokens_parse
PARAMETER (GDS__tokens_parse = 335545169)
INTEGER*4 GDS__iconv_open
PARAMETER (GDS__iconv_open = 335545170)
INTEGER*4 GDS__batch_compl_range
PARAMETER (GDS__batch_compl_range = 335545171)
INTEGER*4 GDS__batch_compl_detail
PARAMETER (GDS__batch_compl_detail = 335545172)
INTEGER*4 GDS__deflate_init
PARAMETER (GDS__deflate_init = 335545173)
INTEGER*4 GDS__inflate_init
PARAMETER (GDS__inflate_init = 335545174)
INTEGER*4 GDS__big_segment
PARAMETER (GDS__big_segment = 335545175)
INTEGER*4 GDS__batch_policy
PARAMETER (GDS__batch_policy = 335545176)
INTEGER*4 GDS__batch_defbpb
PARAMETER (GDS__batch_defbpb = 335545177)
INTEGER*4 GDS__batch_align
PARAMETER (GDS__batch_align = 335545178)
INTEGER*4 GDS__multi_segment_dup
PARAMETER (GDS__multi_segment_dup = 335545179)
INTEGER*4 GDS__non_plugin_protocol
PARAMETER (GDS__non_plugin_protocol = 335545180)
INTEGER*4 GDS__message_format
PARAMETER (GDS__message_format = 335545181)
INTEGER*4 GDS__batch_param_version
PARAMETER (GDS__batch_param_version = 335545182)
INTEGER*4 GDS__batch_msg_long
PARAMETER (GDS__batch_msg_long = 335545183)
INTEGER*4 GDS__batch_open
PARAMETER (GDS__batch_open = 335545184)
INTEGER*4 GDS__batch_type
PARAMETER (GDS__batch_type = 335545185)
INTEGER*4 GDS__batch_param
PARAMETER (GDS__batch_param = 335545186)
INTEGER*4 GDS__batch_blobs
PARAMETER (GDS__batch_blobs = 335545187)
INTEGER*4 GDS__batch_blob_append
PARAMETER (GDS__batch_blob_append = 335545188)
INTEGER*4 GDS__batch_stream_align
PARAMETER (GDS__batch_stream_align = 335545189)
INTEGER*4 GDS__batch_rpt_blob
PARAMETER (GDS__batch_rpt_blob = 335545190)
INTEGER*4 GDS__batch_blob_buf
PARAMETER (GDS__batch_blob_buf = 335545191)
INTEGER*4 GDS__batch_small_data
PARAMETER (GDS__batch_small_data = 335545192)
INTEGER*4 GDS__batch_cont_bpb
PARAMETER (GDS__batch_cont_bpb = 335545193)
INTEGER*4 GDS__batch_big_bpb
PARAMETER (GDS__batch_big_bpb = 335545194)
INTEGER*4 GDS__batch_big_segment
PARAMETER (GDS__batch_big_segment = 335545195)
INTEGER*4 GDS__batch_big_seg2
PARAMETER (GDS__batch_big_seg2 = 335545196)
INTEGER*4 GDS__batch_blob_id
PARAMETER (GDS__batch_blob_id = 335545197)
INTEGER*4 GDS__batch_too_big
PARAMETER (GDS__batch_too_big = 335545198)
INTEGER*4 GDS__num_literal
PARAMETER (GDS__num_literal = 335545199)
INTEGER*4 GDS__map_event
PARAMETER (GDS__map_event = 335545200)
INTEGER*4 GDS__map_overflow
PARAMETER (GDS__map_overflow = 335545201)
INTEGER*4 GDS__hdr_overflow
PARAMETER (GDS__hdr_overflow = 335545202)
INTEGER*4 GDS__vld_plugins
PARAMETER (GDS__vld_plugins = 335545203)
INTEGER*4 GDS__gfix_db_name
PARAMETER (GDS__gfix_db_name = 335740929)
INTEGER*4 GDS__gfix_invalid_sw

View File

@ -1721,6 +1721,98 @@ const
gds_sysf_invalid_first_last_part = 335545156;
isc_sysf_invalid_date_timestamp = 335545157;
gds_sysf_invalid_date_timestamp = 335545157;
isc_precision_err2 = 335545158;
gds_precision_err2 = 335545158;
isc_bad_batch_handle = 335545159;
gds_bad_batch_handle = 335545159;
isc_intl_char = 335545160;
gds_intl_char = 335545160;
isc_null_block = 335545161;
gds_null_block = 335545161;
isc_mixed_info = 335545162;
gds_mixed_info = 335545162;
isc_unknown_info = 335545163;
gds_unknown_info = 335545163;
isc_bpb_version = 335545164;
gds_bpb_version = 335545164;
isc_user_manager = 335545165;
gds_user_manager = 335545165;
isc_icu_entrypoint = 335545166;
gds_icu_entrypoint = 335545166;
isc_icu_library = 335545167;
gds_icu_library = 335545167;
isc_metadata_name = 335545168;
gds_metadata_name = 335545168;
isc_tokens_parse = 335545169;
gds_tokens_parse = 335545169;
isc_iconv_open = 335545170;
gds_iconv_open = 335545170;
isc_batch_compl_range = 335545171;
gds_batch_compl_range = 335545171;
isc_batch_compl_detail = 335545172;
gds_batch_compl_detail = 335545172;
isc_deflate_init = 335545173;
gds_deflate_init = 335545173;
isc_inflate_init = 335545174;
gds_inflate_init = 335545174;
isc_big_segment = 335545175;
gds_big_segment = 335545175;
isc_batch_policy = 335545176;
gds_batch_policy = 335545176;
isc_batch_defbpb = 335545177;
gds_batch_defbpb = 335545177;
isc_batch_align = 335545178;
gds_batch_align = 335545178;
isc_multi_segment_dup = 335545179;
gds_multi_segment_dup = 335545179;
isc_non_plugin_protocol = 335545180;
gds_non_plugin_protocol = 335545180;
isc_message_format = 335545181;
gds_message_format = 335545181;
isc_batch_param_version = 335545182;
gds_batch_param_version = 335545182;
isc_batch_msg_long = 335545183;
gds_batch_msg_long = 335545183;
isc_batch_open = 335545184;
gds_batch_open = 335545184;
isc_batch_type = 335545185;
gds_batch_type = 335545185;
isc_batch_param = 335545186;
gds_batch_param = 335545186;
isc_batch_blobs = 335545187;
gds_batch_blobs = 335545187;
isc_batch_blob_append = 335545188;
gds_batch_blob_append = 335545188;
isc_batch_stream_align = 335545189;
gds_batch_stream_align = 335545189;
isc_batch_rpt_blob = 335545190;
gds_batch_rpt_blob = 335545190;
isc_batch_blob_buf = 335545191;
gds_batch_blob_buf = 335545191;
isc_batch_small_data = 335545192;
gds_batch_small_data = 335545192;
isc_batch_cont_bpb = 335545193;
gds_batch_cont_bpb = 335545193;
isc_batch_big_bpb = 335545194;
gds_batch_big_bpb = 335545194;
isc_batch_big_segment = 335545195;
gds_batch_big_segment = 335545195;
isc_batch_big_seg2 = 335545196;
gds_batch_big_seg2 = 335545196;
isc_batch_blob_id = 335545197;
gds_batch_blob_id = 335545197;
isc_batch_too_big = 335545198;
gds_batch_too_big = 335545198;
isc_num_literal = 335545199;
gds_num_literal = 335545199;
isc_map_event = 335545200;
gds_map_event = 335545200;
isc_map_overflow = 335545201;
gds_map_overflow = 335545201;
isc_hdr_overflow = 335545202;
gds_hdr_overflow = 335545202;
isc_vld_plugins = 335545203;
gds_vld_plugins = 335545203;
isc_gfix_db_name = 335740929;
gds_gfix_db_name = 335740929;
isc_gfix_invalid_sw = 335740930;

View File

@ -168,10 +168,8 @@ void IntlParametersBlock::processParametersBlock(ProcessString* processString, C
st.stuffException(&l);
if ((l.getState() & IStatus::STATE_ERRORS) && (l.getErrors()[1] == isc_bad_conn_str) && tagName)
{
Arg::Gds newErrors(isc_random);
string message("Bad international character in tag ");
message += tagName;
newErrors << message;
Arg::Gds newErrors(isc_intl_char);
newErrors << tagName;
const ISC_STATUS* errors = l.getErrors();
newErrors << Arg::StatusVector(errors + 2); // skip isc_bad_conn_str

View File

@ -198,7 +198,7 @@ void MetadataBuilder::moveNameToIndex(CheckStatusWrapper* status, const char* na
}
}
(Arg::Gds(isc_random) << (string("Name not found in IMetadataBuilder: ") + name)).raise();
(Arg::Gds(isc_metadata_name) << name).raise();
}
catch (const Exception& ex)
{

View File

@ -307,6 +307,12 @@ PrivateDyn::PrivateDyn(ISC_STATUS codeWithoutFacility) throw() :
Num::Num(ISC_STATUS s) throw() :
Base(isc_arg_number, s) { }
Quad::Quad(const ISC_QUAD* quad) throw() :
Str(text)
{
sprintf(text, "%x:%x", quad->gds_quad_high, quad->gds_quad_low);
}
Interpreted::Interpreted(const char* text) throw() :
StatusVector(isc_arg_interpreted, (ISC_STATUS)(IPTR) text) { }

View File

@ -245,6 +245,15 @@ public:
explicit Num(ISC_STATUS s) throw();
};
class Quad : public Str
{
public:
explicit Quad(const ISC_QUAD* quad) throw();
private:
// high : low \0
char text[8 + 1 + 8 + 1];
};
class Interpreted : public StatusVector
{
public:

View File

@ -212,7 +212,7 @@ void Tokens::error(const char* fmt, ...)
buffer.vprintf(fmt, params);
va_end(params);
(Arg::Gds(isc_random) << "Parse to tokens error" << Arg::Gds(isc_random) << buffer).raise();
(Arg::Gds(isc_tokens_parse) << Arg::Gds(isc_random) << buffer).raise();
}
string Tokens::Tok::stripped() const

View File

@ -103,8 +103,8 @@ namespace Firebird {
{
try
{
if (pos >= reccount)
(Arg::Gds(isc_random) << "Position is out of range").raise();
checkRange(pos);
if (array)
return (*array)[pos];
@ -138,8 +138,7 @@ namespace Firebird {
{
try
{
if (pos >= reccount)
(Arg::Gds(isc_random) << "Position is out of range").raise();
checkRange(pos);
ULONG index = find(pos);
if (index < rare.getCount() && rare[index].first == pos)
@ -150,7 +149,7 @@ namespace Firebird {
fb_utils::copyStatus(&w, rare[index].second);
return;
}
(Arg::Gds(isc_random) << "Detailed error info is missing in batch").raise();
(Arg::Gds(isc_batch_compl_detail) << Arg::Num(pos)).raise();
}
}
catch (const Exception& ex)
@ -181,5 +180,11 @@ namespace Firebird {
return low;
}
void checkRange(unsigned pos)
{
if (pos >= reccount)
(Arg::Gds(isc_batch_compl_range) << Arg::Num(pos) << Arg::Num(reccount)).raise();
}
};
}

View File

@ -1697,11 +1697,7 @@ private:
{
iconv_t ret = iconv_open(tocode, fromcode);
if (ret == (iconv_t) -1)
{
(Arg::Gds(isc_random) << "Error opening conversion descriptor" <<
Arg::Unix(errno)).raise();
// adding text "from @1 to @2" is good idea
}
(Arg::Gds(isc_iconv_open) << fromcode << tocode << Arg::Unix(errno)).raise();
return ret;
}

View File

@ -34,7 +34,7 @@ namespace {
void raise()
{
(Arg::Gds(isc_random) << "Missing user management plugin").raise();
Arg::Gds(isc_user_manager).raise();
}
} // anonymous namespace

View File

@ -108,8 +108,7 @@ public:
return;
}
(Arg::Gds(isc_random) << "Missing entrypoint in ICU library" <<
Arg::Gds(isc_random) << name).raise();
(Arg::Gds(isc_icu_entrypoint) << name).raise();
}
int majorVersion;
@ -1163,12 +1162,9 @@ UnicodeUtil::ConversionICU& UnicodeUtil::getConversionICU()
}
if (lastError.getState() & Firebird::IStatus::STATE_ERRORS)
{
(Arg::Gds(isc_random) << "Could not find acceptable ICU library"
<< Arg::StatusVector(lastError.getErrors())).raise();
}
(Arg::Gds(isc_icu_library) << Arg::StatusVector(lastError.getErrors())).raise();
else
(Arg::Gds(isc_random) << "Could not find acceptable ICU library").raise();
Arg::Gds(isc_icu_library).raise();
// compiler warning silencer
return *convIcu;

View File

@ -1373,7 +1373,7 @@ bool isRunningCheck(const UCHAR* items, unsigned int length)
{
if (!items)
{
(Firebird::Arg::Gds(isc_random) << "Missing info items block of non-zero length").raise();
Firebird::Arg::Gds(isc_null_block).raise();
}
switch (*items++)
@ -1396,7 +1396,7 @@ bool isRunningCheck(const UCHAR* items, unsigned int length)
case isc_info_svc_stdin:
if (state == S_INF)
{
(Firebird::Arg::Gds(isc_random) << "Wrong info items combination").raise();
Firebird::Arg::Gds(isc_mixed_info).raise();
}
state = S_RUN;
break;
@ -1416,13 +1416,13 @@ bool isRunningCheck(const UCHAR* items, unsigned int length)
case isc_info_svc_get_licensed_users:
if (state == S_RUN)
{
(Firebird::Arg::Gds(isc_random) << "Wrong info items combination").raise();
Firebird::Arg::Gds(isc_mixed_info).raise();
}
state = S_INF;
break;
default:
(Firebird::Arg::Gds(isc_random) << "Unknown info item").raise();
(Firebird::Arg::Gds(isc_unknown_info) << Firebird::Arg::Num(ULONG(items[-1]))).raise();
break;
}
}
@ -1630,11 +1630,14 @@ const char* dpbItemUpper(const char* s, FB_SIZE_T l, Firebird::string& buf)
bool isBpbSegmented(unsigned parLength, const unsigned char* par)
{
if (parLength && !par)
(Firebird::Arg::Gds(isc_random) << "Malformed BPB").raise();
Firebird::Arg::Gds(isc_null_block).raise();
Firebird::ClumpletReader bpb(Firebird::ClumpletReader::Tagged, par, parLength);
if (bpb.getBufferTag() != isc_bpb_version1)
(Firebird::Arg::Gds(isc_random) << "Malformed BPB").raise();
{
(Firebird::Arg::Gds(isc_bpb_version) << Firebird::Arg::Num(bpb.getBufferTag()) <<
Firebird::Arg::Num(isc_bpb_version1)).raise();
}
if (!bpb.find(isc_bpb_type))
return true;

View File

@ -90,7 +90,7 @@ DsqlBatch::DsqlBatch(dsql_req* req, const dsql_msg* /*message*/, IMessageMetadat
if (m_messageSize > RAM_BATCH) // hops - message does not fit in our buffer
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Message too long");
Arg::Gds(isc_batch_msg_long) << Arg::Num(m_messageSize) << Arg::Num(RAM_BATCH));
}
for (pb.rewind(); !pb.isEof(); pb.moveNext())
@ -205,7 +205,7 @@ DsqlBatch* DsqlBatch::open(thread_db* tdbb, dsql_req* req, IMessageMetadata* inM
if (req->req_batch)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-502) <<
Arg::Gds(isc_random) << "Request has active batch");
Arg::Gds(isc_batch_open));
}
// Sanity checks before creating batch
@ -235,21 +235,21 @@ DsqlBatch* DsqlBatch::open(thread_db* tdbb, dsql_req* req, IMessageMetadata* inM
default:
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-901) <<
Arg::Gds(isc_random) << "Invalid type of statement used in batch");
Arg::Gds(isc_batch_type));
}
const dsql_msg* message = statement->getSendMsg();
if (! (inMetadata && message && req->parseMetadata(inMetadata, message->msg_parameters)))
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-901) <<
Arg::Gds(isc_random) << "Statement used in batch must have parameters");
Arg::Gds(isc_batch_param));
}
// Open reader for parameters block
ClumpletReader pb(ClumpletReader::WideTagged, par, parLength);
if (pb.getBufferLength() && (pb.getBufferTag() != IBatch::VERSION1))
ERRD_post(Arg::Gds(isc_random) << "Invalid tag in parameters block");
ERRD_post(Arg::Gds(isc_batch_param_version));
// Create batch
@ -277,7 +277,7 @@ void DsqlBatch::blobCheckMeta()
if (!m_blobMeta.hasData())
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "There are no blobs in associated statement");
Arg::Gds(isc_batch_blobs));
}
}
@ -299,8 +299,7 @@ void DsqlBatch::blobCheckMode(bool stream, const char* fname)
}
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "This *** call can't be used with current blob policy" <<
Arg::Gds(isc_random) << fname);
Arg::Gds(isc_batch_policy) << fname);
}
void DsqlBatch::blobSetSize()
@ -328,7 +327,7 @@ void DsqlBatch::setDefaultBpb(thread_db* tdbb, unsigned parLength, const unsigne
if (m_blobs.getSize())
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "setDefaultBpb() call can be used only with empty batch (no blobs added)");
Arg::Gds(isc_batch_defbpb));
}
setDefBpb(parLength, par);
}
@ -378,8 +377,7 @@ void DsqlBatch::appendBlobData(thread_db* tdbb, ULONG length, const void* inBuff
if (m_lastBlob == MAX_ULONG)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "appendBlobData() is used to append data to last blob "
"but no such blob was added to the batch");
Arg::Gds(isc_batch_blob_append));
}
m_setBlobSize = true;
@ -393,7 +391,7 @@ void DsqlBatch::putSegment(ULONG length, const void* inBuffer)
if (length > MAX_USHORT)
{
ERR_post(Arg::Gds(isc_imp_exc) << Arg::Gds(isc_blobtoobig) <<
Arg::Gds(isc_random) << "Segment size >= 64Kb");
Arg::Gds(isc_big_segment) << Arg::Num(length));
}
USHORT l = length;
m_blobs.align(IBatch::BLOB_SEGHDR_ALIGN);
@ -411,8 +409,7 @@ void DsqlBatch::addBlobStream(thread_db* tdbb, unsigned length, const void* inBu
if (length % BLOB_STREAM_ALIGN)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Portions of data, passed as blob stream, should have size "
"multiple to the alignment required for blobs");
Arg::Gds(isc_batch_stream_align));
}
blobCheckMode(true, "addBlobStream");
@ -443,7 +440,7 @@ void DsqlBatch::registerBlob(const ISC_QUAD* engineBlob, const ISC_QUAD* batchBl
if (!idPtr)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Repeated BlobId in registerBlob(): is ***");
Arg::Gds(isc_batch_rpt_blob) << Arg::Quad(batchBlob));
}
*idPtr = *engineBlob;
@ -460,11 +457,7 @@ Firebird::IBatchCompletionState* DsqlBatch::execute(thread_db* tdbb)
thread_db::TimerGuard timerGuard(tdbb, m_request->setupTimer(tdbb), true);
// sync internal buffers
if (!m_messages.done())
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Internal message buffer overflow - batch too big");
}
m_messages.done();
// insert blobs here
if (m_blobMeta.hasData())
@ -472,13 +465,8 @@ Firebird::IBatchCompletionState* DsqlBatch::execute(thread_db* tdbb)
// This code expects the following to work correctly
fb_assert(RAM_BATCH % BLOB_STREAM_ALIGN == 0);
blobSetSize(); // Needed after appendBlobData()
if (!m_blobs.done())
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Internal BLOB buffer overflow - batch too big");
}
blobSetSize(); // needed after appendBlobData()
m_blobs.done(); // sync internal buffers
struct BlobFlow
{
@ -545,7 +533,8 @@ private:
if (flow.remains < SIZEOF_BLOB_HEAD)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Blob buffer format error: useless data remained in buffer");
Arg::Gds(isc_batch_blob_buf) <<
Arg::Gds(isc_batch_small_data) << "BLOB");
}
// parse blob header
@ -562,7 +551,7 @@ private:
if (*bpbSize)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Blob buffer format error: blob continuation should not contain BPB");
Arg::Gds(isc_batch_blob_buf) << Arg::Gds(isc_batch_cont_bpb));
}
}
else
@ -578,7 +567,8 @@ private:
if (currentBpbSize > flow.remains)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Blob buffer format error: size of BPB greater than remaining data"); // <<currentBpbSize
Arg::Gds(isc_batch_blob_buf) <<
Arg::Gds(isc_batch_big_bpb) << Arg::Num(currentBpbSize) << Arg::Num(flow.remains));
}
localBpb.add(flow.data, currentBpbSize);
bpb = &localBpb;
@ -622,7 +612,8 @@ private:
if (dataSize > flow.currentBlobSize)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Blob buffer format error: size of segment exceeds remaining data"); // <<dataSize, currentBlobSize
Arg::Gds(isc_batch_blob_buf) <<
Arg::Gds(isc_batch_big_segment) << Arg::Num(dataSize) << Arg::Num(flow.currentBlobSize));
}
if (dataSize > flow.remains)
{
@ -630,7 +621,8 @@ private:
if (dataSize > flow.remains)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Blob buffer format error: size of segment exceeds RAM buffer"); // <<dataSize, flow.remains
Arg::Gds(isc_batch_blob_buf) <<
Arg::Gds(isc_batch_big_seg2) << Arg::Num(dataSize) << Arg::Num(flow.remains));
}
}
}
@ -679,7 +671,8 @@ private:
if (remains < m_messageSize)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Internal error: useless data remained in batch buffer");
Arg::Gds(isc_batch_blob_buf) <<
Arg::Gds(isc_batch_small_data) << "messages");
}
while (remains >= m_messageSize)
@ -713,9 +706,7 @@ private:
if (!m_blobMap.get(*id, newId))
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Unknown blob ID in the message: is ***" <<
Arg::Gds(isc_random) << Arg::Num(id->gds_quad_high) <<
Arg::Gds(isc_random) << Arg::Num(id->gds_quad_low));
Arg::Gds(isc_batch_blob_id) << Arg::Quad(id));
}
m_blobMap.remove(*id);
@ -823,7 +814,7 @@ void DsqlBatch::DataCache::put(const void* d, ULONG dataSize)
if (m_used + (m_cache ? m_cache->getCount() : 0) + dataSize > m_limit)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-104) <<
Arg::Gds(isc_random) << "Internal buffer overflow - batch too big");
Arg::Gds(isc_batch_too_big));
}
const UCHAR* data = reinterpret_cast<const UCHAR*>(d);
@ -880,13 +871,10 @@ void DsqlBatch::DataCache::align(ULONG alignment)
}
}
bool DsqlBatch::DataCache::done()
void DsqlBatch::DataCache::done()
{
fb_assert(m_cache);
if (m_cache->getCount() == 0 && m_used == 0)
return true; // false?
if (m_cache->getCount() && m_used)
{
fb_assert(m_space);
@ -896,8 +884,6 @@ bool DsqlBatch::DataCache::done()
m_used += m_cache->getCount();
m_cache->clear();
}
return true;
}
ULONG DsqlBatch::DataCache::get(UCHAR** buffer)

View File

@ -116,7 +116,7 @@ private:
void put(const void* data, ULONG dataSize);
void put3(const void* data, ULONG dataSize, ULONG offset);
void align(ULONG alignment);
bool done();
void done();
ULONG get(UCHAR** buffer);
ULONG reget(ULONG size, UCHAR** buffer, ULONG alignment);
void remained(ULONG size, ULONG alignment = 0);

View File

@ -1297,3 +1297,21 @@ void Parser::yyabandon(const Position& position, SLONG sql_code, ISC_STATUS erro
Arg::Gds(isc_dsql_line_col_error) <<
Arg::Num(position.firstLine) << Arg::Num(position.firstColumn));
}
void Parser::yyabandon(const Position& position, SLONG sql_code, const Arg::StatusVector& status)
{
/**************************************
*
* y y a b a n d o n
*
**************************************
*
* Functional description
* Abandon the parsing outputting the supplied string
*
**************************************/
ERRD_post(
Arg::Gds(isc_sqlerr) << Arg::Num(sql_code) << status <<
Arg::Gds(isc_dsql_line_col_error) <<
Arg::Num(position.firstLine) << Arg::Num(position.firstColumn));
}

View File

@ -37,6 +37,12 @@
#include "gen/parse.h"
namespace Firebird {
namespace Arg {
class StatusVector;
} // namespace
} // namespace
namespace Jrd {
class CharSet;
@ -240,6 +246,7 @@ private:
void check_copy_incr(char*& to, const char ch, const char* const string);
void yyabandon(const Position& position, SLONG, ISC_STATUS);
void yyabandon(const Position& position, SLONG, const Firebird::Arg::StatusVector& status);
Firebird::MetaName optName(Firebird::MetaName* name)
{

View File

@ -221,7 +221,7 @@ DsqlCursor* DSQL_open(thread_db* tdbb,
if (request->req_batch)
{
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-502) <<
Arg::Gds(isc_random) << "Request has active batch");
Arg::Gds(isc_batch_open));
}
request->req_transaction = *tra_handle;

View File

@ -131,7 +131,7 @@ ValueExprNode* MAKE_constant(const char* str, dsql_constant_type numeric_flag)
size_t l = strlen(str);
if (l > MAX_SSHORT)
{
ERRD_post(Arg::Gds(isc_imp_exc) << Arg::Gds(isc_random) << "Numeric literal too long");
ERRD_post(Arg::Gds(isc_imp_exc) << Arg::Gds(isc_num_literal));
}
literal->litDesc.dsc_sub_type = static_cast<SSHORT>(l); // Keep length in sub_type which is unused
literal->litDesc.dsc_length = numeric_flag == CONSTANT_DOUBLE ? sizeof(double) : sizeof(Decimal128);

View File

@ -4845,7 +4845,8 @@ prec_scale
$$ = newNode<dsql_fld>();
if ($2 < 1 || $2 > 34)
yyabandon(YYPOSNARG(2), -842, isc_precision_err/*2!!!!!*/); // Precision must be between 1 and 34.
yyabandon(YYPOSNARG(2), -842, Arg::Gds(isc_precision_err2) << Arg::Num(1) << Arg::Num(34));
// Precision must be between 1 and 34
if ($2 > 18)
{
@ -4900,7 +4901,8 @@ prec_scale
$$ = newNode<dsql_fld>();
if ($2 < 1 || $2 > 34)
yyabandon(YYPOSNARG(2), -842, isc_precision_err/*2!!!!!*/); // Precision must be between 1 and 34.
yyabandon(YYPOSNARG(2), -842, Arg::Gds(isc_precision_err2) << Arg::Num(1) << Arg::Num(34));
// Precision must be between 1 and 34
if ($4 > $2 || $4 < 0)
yyabandon(YYPOSNARG(4), -842, isc_scale_nogt); // Scale must be between 0 and precision

View File

@ -859,6 +859,52 @@ static const struct {
{"decfloat_round", 335545155},
{"sysf_invalid_first_last_part", 335545156},
{"sysf_invalid_date_timestamp", 335545157},
{"precision_err2", 335545158},
{"bad_batch_handle", 335545159},
{"intl_char", 335545160},
{"null_block", 335545161},
{"mixed_info", 335545162},
{"unknown_info", 335545163},
{"bpb_version", 335545164},
{"user_manager", 335545165},
{"icu_entrypoint", 335545166},
{"icu_library", 335545167},
{"metadata_name", 335545168},
{"tokens_parse", 335545169},
{"iconv_open", 335545170},
{"batch_compl_range", 335545171},
{"batch_compl_detail", 335545172},
{"deflate_init", 335545173},
{"inflate_init", 335545174},
{"big_segment", 335545175},
{"batch_policy", 335545176},
{"batch_defbpb", 335545177},
{"batch_align", 335545178},
{"multi_segment_dup", 335545179},
{"non_plugin_protocol", 335545180},
{"message_format", 335545181},
{"batch_param_version", 335545182},
{"batch_msg_long", 335545183},
{"batch_open", 335545184},
{"batch_type", 335545185},
{"batch_param", 335545186},
{"batch_blobs", 335545187},
{"batch_blob_append", 335545188},
{"batch_stream_align", 335545189},
{"batch_rpt_blob", 335545190},
{"batch_blob_buf", 335545191},
{"batch_small_data", 335545192},
{"batch_cont_bpb", 335545193},
{"batch_big_bpb", 335545194},
{"batch_big_segment", 335545195},
{"batch_big_seg2", 335545196},
{"batch_blob_id", 335545197},
{"batch_too_big", 335545198},
{"num_literal", 335545199},
{"map_event", 335545200},
{"map_overflow", 335545201},
{"hdr_overflow", 335545202},
{"vld_plugins", 335545203},
{"gfix_db_name", 335740929},
{"gfix_invalid_sw", 335740930},
{"gfix_incmp_sw", 335740932},

View File

@ -893,6 +893,52 @@ const ISC_STATUS isc_decfloat_trap = 335545154L;
const ISC_STATUS isc_decfloat_round = 335545155L;
const ISC_STATUS isc_sysf_invalid_first_last_part = 335545156L;
const ISC_STATUS isc_sysf_invalid_date_timestamp = 335545157L;
const ISC_STATUS isc_precision_err2 = 335545158L;
const ISC_STATUS isc_bad_batch_handle = 335545159L;
const ISC_STATUS isc_intl_char = 335545160L;
const ISC_STATUS isc_null_block = 335545161L;
const ISC_STATUS isc_mixed_info = 335545162L;
const ISC_STATUS isc_unknown_info = 335545163L;
const ISC_STATUS isc_bpb_version = 335545164L;
const ISC_STATUS isc_user_manager = 335545165L;
const ISC_STATUS isc_icu_entrypoint = 335545166L;
const ISC_STATUS isc_icu_library = 335545167L;
const ISC_STATUS isc_metadata_name = 335545168L;
const ISC_STATUS isc_tokens_parse = 335545169L;
const ISC_STATUS isc_iconv_open = 335545170L;
const ISC_STATUS isc_batch_compl_range = 335545171L;
const ISC_STATUS isc_batch_compl_detail = 335545172L;
const ISC_STATUS isc_deflate_init = 335545173L;
const ISC_STATUS isc_inflate_init = 335545174L;
const ISC_STATUS isc_big_segment = 335545175L;
const ISC_STATUS isc_batch_policy = 335545176L;
const ISC_STATUS isc_batch_defbpb = 335545177L;
const ISC_STATUS isc_batch_align = 335545178L;
const ISC_STATUS isc_multi_segment_dup = 335545179L;
const ISC_STATUS isc_non_plugin_protocol = 335545180L;
const ISC_STATUS isc_message_format = 335545181L;
const ISC_STATUS isc_batch_param_version = 335545182L;
const ISC_STATUS isc_batch_msg_long = 335545183L;
const ISC_STATUS isc_batch_open = 335545184L;
const ISC_STATUS isc_batch_type = 335545185L;
const ISC_STATUS isc_batch_param = 335545186L;
const ISC_STATUS isc_batch_blobs = 335545187L;
const ISC_STATUS isc_batch_blob_append = 335545188L;
const ISC_STATUS isc_batch_stream_align = 335545189L;
const ISC_STATUS isc_batch_rpt_blob = 335545190L;
const ISC_STATUS isc_batch_blob_buf = 335545191L;
const ISC_STATUS isc_batch_small_data = 335545192L;
const ISC_STATUS isc_batch_cont_bpb = 335545193L;
const ISC_STATUS isc_batch_big_bpb = 335545194L;
const ISC_STATUS isc_batch_big_segment = 335545195L;
const ISC_STATUS isc_batch_big_seg2 = 335545196L;
const ISC_STATUS isc_batch_blob_id = 335545197L;
const ISC_STATUS isc_batch_too_big = 335545198L;
const ISC_STATUS isc_num_literal = 335545199L;
const ISC_STATUS isc_map_event = 335545200L;
const ISC_STATUS isc_map_overflow = 335545201L;
const ISC_STATUS isc_hdr_overflow = 335545202L;
const ISC_STATUS isc_vld_plugins = 335545203L;
const ISC_STATUS isc_gfix_db_name = 335740929L;
const ISC_STATUS isc_gfix_invalid_sw = 335740930L;
const ISC_STATUS isc_gfix_incmp_sw = 335740932L;
@ -1367,7 +1413,7 @@ const ISC_STATUS isc_trace_switch_user_only = 337182757L;
const ISC_STATUS isc_trace_switch_param_miss = 337182758L;
const ISC_STATUS isc_trace_param_act_notcompat = 337182759L;
const ISC_STATUS isc_trace_mandatory_switch_miss = 337182760L;
const ISC_STATUS isc_err_max = 1311;
const ISC_STATUS isc_err_max = 1357;
#else /* c definitions */
@ -2230,6 +2276,52 @@ const ISC_STATUS isc_err_max = 1311;
#define isc_decfloat_round 335545155L
#define isc_sysf_invalid_first_last_part 335545156L
#define isc_sysf_invalid_date_timestamp 335545157L
#define isc_precision_err2 335545158L
#define isc_bad_batch_handle 335545159L
#define isc_intl_char 335545160L
#define isc_null_block 335545161L
#define isc_mixed_info 335545162L
#define isc_unknown_info 335545163L
#define isc_bpb_version 335545164L
#define isc_user_manager 335545165L
#define isc_icu_entrypoint 335545166L
#define isc_icu_library 335545167L
#define isc_metadata_name 335545168L
#define isc_tokens_parse 335545169L
#define isc_iconv_open 335545170L
#define isc_batch_compl_range 335545171L
#define isc_batch_compl_detail 335545172L
#define isc_deflate_init 335545173L
#define isc_inflate_init 335545174L
#define isc_big_segment 335545175L
#define isc_batch_policy 335545176L
#define isc_batch_defbpb 335545177L
#define isc_batch_align 335545178L
#define isc_multi_segment_dup 335545179L
#define isc_non_plugin_protocol 335545180L
#define isc_message_format 335545181L
#define isc_batch_param_version 335545182L
#define isc_batch_msg_long 335545183L
#define isc_batch_open 335545184L
#define isc_batch_type 335545185L
#define isc_batch_param 335545186L
#define isc_batch_blobs 335545187L
#define isc_batch_blob_append 335545188L
#define isc_batch_stream_align 335545189L
#define isc_batch_rpt_blob 335545190L
#define isc_batch_blob_buf 335545191L
#define isc_batch_small_data 335545192L
#define isc_batch_cont_bpb 335545193L
#define isc_batch_big_bpb 335545194L
#define isc_batch_big_segment 335545195L
#define isc_batch_big_seg2 335545196L
#define isc_batch_blob_id 335545197L
#define isc_batch_too_big 335545198L
#define isc_num_literal 335545199L
#define isc_map_event 335545200L
#define isc_map_overflow 335545201L
#define isc_hdr_overflow 335545202L
#define isc_vld_plugins 335545203L
#define isc_gfix_db_name 335740929L
#define isc_gfix_invalid_sw 335740930L
#define isc_gfix_incmp_sw 335740932L
@ -2704,7 +2796,7 @@ const ISC_STATUS isc_err_max = 1311;
#define isc_trace_switch_param_miss 337182758L
#define isc_trace_param_act_notcompat 337182759L
#define isc_trace_mandatory_switch_miss 337182760L
#define isc_err_max 1311
#define isc_err_max 1357
#endif

View File

@ -862,6 +862,52 @@ Data source : @4"}, /* eds_statement */
{335545155, "Invalid decfloat rounding mode @1"}, /* decfloat_round */
{335545156, "Invalid part @1 to calculate the @1 of a DATE/TIMESTAMP"}, /* sysf_invalid_first_last_part */
{335545157, "Expected DATE/TIMESTAMP value in @1"}, /* sysf_invalid_date_timestamp */
{335545158, "Precision must be from @1 to @2"}, /* precision_err2 */
{335545159, "invalid batch handle"}, /* bad_batch_handle */
{335545160, "Bad international character in tag @1"}, /* intl_char */
{335545161, "Null data in parameters block with non-zero length"}, /* null_block */
{335545162, "Items working with running service and getting generic server information should not be mixed in single info block"}, /* mixed_info */
{335545163, "Unknown information item, code @1"}, /* unknown_info */
{335545164, "Wrong version of blob parameters block @1, should be @2"}, /* bpb_version */
{335545165, "User management plugin is missing or failed to load"}, /* user_manager */
{335545166, "Missing entrypoint @1 in ICU library"}, /* icu_entrypoint */
{335545167, "Could not find acceptable ICU library"}, /* icu_library */
{335545168, "Name @1 not found in system MetadataBuilder"}, /* metadata_name */
{335545169, "Parse to tokens error"}, /* tokens_parse */
{335545170, "Error opening international conversion descriptor from @1 to @2"}, /* iconv_open */
{335545171, "Message @1 is out of range, only @2 messages in batch"}, /* batch_compl_range */
{335545172, "Detailed error info for message @1 is missing in batch"}, /* batch_compl_detail */
{335545173, "Compression stream init error @1"}, /* deflate_init */
{335545174, "Decompression stream init error @1"}, /* inflate_init */
{335545175, "Segment size (@1) should not exceed 65535 (64K - 1) when using segmented blob"}, /* big_segment */
{335545176, "Invalid blob policy in the batch for @1() call"}, /* batch_policy */
{335545177, "Can't change default BPB after adding any data to batch"}, /* batch_defbpb */
{335545178, "Unexpected info buffer structure querying for default blob alignment"}, /* batch_align */
{335545179, "Duplicated segment @1 in multisegment connect block parameter"}, /* multi_segment_dup */
{335545180, "Plugin not supported by network protocol"}, /* non_plugin_protocol */
{335545181, "Error parsing message format"}, /* message_format */
{335545182, "Wrong version of batch parameters block @1, should be @2"}, /* batch_param_version */
{335545183, "Message size (@1) in batch exceeds internal buffer size (@2)"}, /* batch_msg_long */
{335545184, "Batch already opened for this statement"}, /* batch_open */
{335545185, "Invalid type of statement used in batch"}, /* batch_type */
{335545186, "Statement used in batch must have parameters"}, /* batch_param */
{335545187, "There are no blobs in associated with batch statement"}, /* batch_blobs */
{335545188, "appendBlobData() is used to append data to last blob but no such blob was added to the batch"}, /* batch_blob_append */
{335545189, "Portions of data, passed as blob stream, should have size multiple to the alignment required for blobs"}, /* batch_stream_align */
{335545190, "Repeated blob id @1 in registerBlob()"}, /* batch_rpt_blob */
{335545191, "Blob buffer format error"}, /* batch_blob_buf */
{335545192, "Unusable (too small) data remained in @1 buffer"}, /* batch_small_data */
{335545193, "Blob continuation should not contain BPB"}, /* batch_cont_bpb */
{335545194, "Size of BPB (@1) greater than remaining data (@2)"}, /* batch_big_bpb */
{335545195, "Size of segment (@1) greater than current BLOB data (@2)"}, /* batch_big_segment */
{335545196, "Size of segment (@1) greater than available data (@2)"}, /* batch_big_seg2 */
{335545197, "Unknown blob ID @1 in the batch message"}, /* batch_blob_id */
{335545198, "Internal buffer overflow - batch too big"}, /* batch_too_big */
{335545199, "Numeric literal too long"}, /* num_literal */
{335545200, "Error using events in mapping shared memory: @1"}, /* map_event */
{335545201, "Global mapping memory overflow"}, /* map_overflow */
{335545202, "Header page overflow - too many clumplets on it"}, /* hdr_overflow */
{335545203, "No matching client/server authentication plugins configured for execute statement in embedded datasource"}, /* vld_plugins */
{335740929, "data base file name (@1) already given"}, /* gfix_db_name */
{335740930, "invalid switch @1"}, /* gfix_invalid_sw */
{335740932, "incompatible switch combination"}, /* gfix_incmp_sw */

View File

@ -858,6 +858,52 @@ static const struct {
{335545155, -901}, /* 835 decfloat_round */
{335545156, -833}, /* 836 sysf_invalid_first_last_part */
{335545157, -833}, /* 837 sysf_invalid_date_timestamp */
{335545158, -842}, /* 838 precision_err2 */
{335545159, -901}, /* 839 bad_batch_handle */
{335545160, -901}, /* 840 intl_char */
{335545161, -901}, /* 841 null_block */
{335545162, -901}, /* 842 mixed_info */
{335545163, -901}, /* 843 unknown_info */
{335545164, -901}, /* 844 bpb_version */
{335545165, -901}, /* 845 user_manager */
{335545166, -902}, /* 846 icu_entrypoint */
{335545167, -902}, /* 847 icu_library */
{335545168, -901}, /* 848 metadata_name */
{335545169, -901}, /* 849 tokens_parse */
{335545170, -902}, /* 850 iconv_open */
{335545171, -901}, /* 851 batch_compl_range */
{335545172, -901}, /* 852 batch_compl_detail */
{335545173, -902}, /* 853 deflate_init */
{335545174, -902}, /* 854 inflate_init */
{335545175, -901}, /* 855 big_segment */
{335545176, -901}, /* 856 batch_policy */
{335545177, -901}, /* 857 batch_defbpb */
{335545178, -901}, /* 858 batch_align */
{335545179, -901}, /* 859 multi_segment_dup */
{335545180, -902}, /* 860 non_plugin_protocol */
{335545181, -901}, /* 861 message_format */
{335545182, -901}, /* 862 batch_param_version */
{335545183, -901}, /* 863 batch_msg_long */
{335545184, -901}, /* 864 batch_open */
{335545185, -901}, /* 865 batch_type */
{335545186, -901}, /* 866 batch_param */
{335545187, -901}, /* 867 batch_blobs */
{335545188, -901}, /* 868 batch_blob_append */
{335545189, -901}, /* 869 batch_stream_align */
{335545190, -901}, /* 870 batch_rpt_blob */
{335545191, -901}, /* 871 batch_blob_buf */
{335545192, -901}, /* 872 batch_small_data */
{335545193, -901}, /* 873 batch_cont_bpb */
{335545194, -901}, /* 874 batch_big_bpb */
{335545195, -901}, /* 875 batch_big_segment */
{335545196, -901}, /* 876 batch_big_seg2 */
{335545197, -901}, /* 877 batch_blob_id */
{335545198, -901}, /* 878 batch_too_big */
{335545199, -901}, /* 879 num_literal */
{335545200, -902}, /* 880 map_event */
{335545201, -902}, /* 881 map_overflow */
{335545202, -901}, /* 882 hdr_overflow */
{335545203, -901}, /* 883 vld_plugins */
{335740929, -901}, /* 1 gfix_db_name */
{335740930, -901}, /* 2 gfix_invalid_sw */
{335740932, -901}, /* 4 gfix_incmp_sw */

View File

@ -858,6 +858,52 @@ static const struct {
{335545155, "42000"}, // 835 decfloat_round
{335545156, "42000"}, // 836 sysf_invalid_first_last_part
{335545157, "42000"}, // 837 sysf_invalid_date_timestamp
{335545158, "HY104"}, // 838 precision_err2
{335545159, "08003"}, // 839 bad_batch_handle
{335545160, "22021"}, // 840 intl_char
{335545161, "22000"}, // 841 null_block
{335545162, "22000"}, // 842 mixed_info
{335545163, "22000"}, // 843 unknown_info
{335545164, "22000"}, // 844 bpb_version
{335545165, "28000"}, // 845 user_manager
{335545166, "XX000"}, // 846 icu_entrypoint
{335545167, "XX000"}, // 847 icu_library
{335545168, "02000"}, // 848 metadata_name
{335545169, "42000"}, // 849 tokens_parse
{335545170, "08006"}, // 850 iconv_open
{335545171, "07002"}, // 851 batch_compl_range
{335545172, "07002"}, // 852 batch_compl_detail
{335545173, "08006"}, // 853 deflate_init
{335545174, "08006"}, // 854 inflate_init
{335545175, "22026"}, // 855 big_segment
{335545176, "22000"}, // 856 batch_policy
{335545177, "22000"}, // 857 batch_defbpb
{335545178, "22000"}, // 858 batch_align
{335545179, "22000"}, // 859 multi_segment_dup
{335545180, "08004"}, // 860 non_plugin_protocol
{335545181, "22000"}, // 861 message_format
{335545182, "22000"}, // 862 batch_param_version
{335545183, "54000"}, // 863 batch_msg_long
{335545184, "08002"}, // 864 batch_open
{335545185, "07003"}, // 865 batch_type
{335545186, "07001"}, // 866 batch_param
{335545187, "07001"}, // 867 batch_blobs
{335545188, "22000"}, // 868 batch_blob_append
{335545189, "22000"}, // 869 batch_stream_align
{335545190, "22000"}, // 870 batch_rpt_blob
{335545191, "22000"}, // 871 batch_blob_buf
{335545192, "22000"}, // 872 batch_small_data
{335545193, "22000"}, // 873 batch_cont_bpb
{335545194, "22000"}, // 874 batch_big_bpb
{335545195, "22000"}, // 875 batch_big_segment
{335545196, "22000"}, // 876 batch_big_seg2
{335545197, "22000"}, // 877 batch_blob_id
{335545198, "54000"}, // 878 batch_too_big
{335545199, "54000"}, // 879 num_literal
{335545200, "XX000"}, // 880 map_event
{335545201, "54000"}, // 881 map_overflow
{335545202, "54000"}, // 882 hdr_overflow
{335545203, "28000"}, // 883 vld_plugins
{335740929, "00000"}, // 1 gfix_db_name
{335740930, "00000"}, // 2 gfix_invalid_sw
{335740932, "00000"}, // 4 gfix_incmp_sw

View File

@ -183,7 +183,7 @@ namespace Jrd {
const unsigned length = writer.getBufferLength();
fb_assert(length <= limit);
if (length > limit)
(Arg::Gds(isc_random) << "HDR page clumplets overflow").raise();
Arg::Gds(isc_hdr_overflow).raise();
memcpy(to, writer.getBuffer(), length);
to[length] = Ods::HDR_end;

View File

@ -732,7 +732,7 @@ public:
p->flags |= MappingHeader::FLAG_DELIVER;
if (sharedMemory->eventPost(&p->notifyEvent) != FB_SUCCESS)
{
(Arg::Gds(isc_random) << "Error posting notifyEvent in mapping shared memory").raise();
(Arg::Gds(isc_map_event) << "POST").raise();
}
while (sharedMemory->eventWait(&current->callbackEvent, value, 10000) != FB_SUCCESS)
{
@ -792,7 +792,7 @@ public:
if (((U_IPTR) &sMem->process[sMem->processes]) - ((U_IPTR) sMem) > DEFAULT_SIZE)
{
sMem->processes--;
(Arg::Gds(isc_random) << "Global mapping memory overflow").raise();
(Arg::Gds(isc_imp_exc) << Arg::Gds(isc_map_overflow)).raise();
}
}
@ -800,11 +800,11 @@ public:
sMem->process[process].flags = MappingHeader::FLAG_ACTIVE;
if (sharedMemory->eventInit(&sMem->process[process].notifyEvent) != FB_SUCCESS)
{
(Arg::Gds(isc_random) << "Error initializing notifyEvent in mapping shared memory").raise();
(Arg::Gds(isc_map_event) << "INIT").raise();
}
if (sharedMemory->eventInit(&sMem->process[process].callbackEvent) != FB_SUCCESS)
{
(Arg::Gds(isc_random) << "Error initializing callbackEvent in mapping shared memory").raise();
(Arg::Gds(isc_map_event) << "INIT").raise();
}
try
@ -843,7 +843,7 @@ private:
MappingHeader::Process* cur = &sMem->process[sMem->currentProcess];
if (sharedMemory->eventPost(&cur->callbackEvent) != FB_SUCCESS)
{
(Arg::Gds(isc_random) << "Error posting callbackEvent in mapping shared memory").raise();
(Arg::Gds(isc_map_event) << "POST").raise();
}
p->flags &= ~MappingHeader::FLAG_DELIVER;
}
@ -856,7 +856,7 @@ private:
if (sharedMemory->eventWait(&p->notifyEvent, value, 0) != FB_SUCCESS)
{
(Arg::Gds(isc_random) << "Error waiting for notifyEvent in mapping shared memory").raise();
(Arg::Gds(isc_map_event) << "WAIT").raise();
}
}
if (startup)

View File

@ -205,9 +205,7 @@ IManagement* UserManagement::getManager(const char* name)
}
}
if (!plugName.hasData())
{
(Arg::Gds(isc_random) << "Missing requested management plugin").raise();
}
Arg::Gds(isc_user_manager).raise();
// Search for it in cache of already loaded plugins
for (unsigned i = 0; i < managers.getCount(); ++i)
@ -298,7 +296,7 @@ USHORT UserManagement::put(Auth::DynamicUserData* userData)
const FB_SIZE_T ret = commands.getCount();
if (ret > MAX_USHORT)
{
status_exception::raise(Arg::Gds(isc_random) << "Too many user management DDL per transaction)");
status_exception::raise(Arg::Gds(isc_imp_exc) << Arg::Gds(isc_random) << "Too many user management DDL per transaction");
}
commands.push(userData);
return ret;

View File

@ -189,8 +189,7 @@ void validatePassword(thread_db* tdbb, const PathName& file, ClumpletWriter& dpb
if (!list.hasData())
{
Arg::Gds noPlugins(isc_random);
noPlugins << "No matching client/server authentication plugins configured for execute statement in embedded datasource";
Arg::Gds noPlugins(isc_vld_plugins);
iscLogStatus(NULL, noPlugins.value());
#ifdef DEV_BUILD

View File

@ -654,7 +654,7 @@ namespace
inline void validateHandle(thread_db* tdbb, DsqlBatch* const batch)
{
if (!batch)
status_exception::raise(Arg::Gds(isc_bad_req_handle)); // isc_bad_batch_handle !!!!!!!!!!
status_exception::raise(Arg::Gds(isc_bad_batch_handle));
validateHandle(tdbb, batch->getAttachment());
}
@ -3374,7 +3374,7 @@ void JBlob::putSegment(CheckStatusWrapper* user_status, unsigned int buffer_leng
else
{
ERR_post(Arg::Gds(isc_imp_exc) << Arg::Gds(isc_blobtoobig) <<
Arg::Gds(isc_random) << "Segment size >= 64Kb");
Arg::Gds(isc_big_segment) << Arg::Num(buffer_length));
}
}
catch (const Exception& ex)

View File

@ -65,21 +65,8 @@ namespace
void usage(UtilSvc* uSvc, const ISC_STATUS code, const char* msg1 = NULL, const char* msg2 = NULL)
{
/*
string msg;
va_list params;
if (message)
{
va_start(params, message);
msg.vprintf(message, params);
va_end(params);
}
*/
if (uSvc->isService())
{
//fb_assert(message != NULL);
//(Arg::Gds(isc_random) << msg).raise();
fb_assert(code);
Arg::Gds gds(code);
if (msg1)
@ -89,8 +76,6 @@ namespace
gds.raise();
}
//if (message)
// fprintf(stderr, "ERROR: %s.\n\n", msg.c_str());
if (code)
{
printMsg(2, false); // ERROR:

View File

@ -1,7 +1,7 @@
/* MAX_NUMBER is the next number to be used, always one more than the highest message number. */
set bulk_insert INSERT INTO FACILITIES (LAST_CHANGE, FACILITY, FAC_CODE, MAX_NUMBER) VALUES (?, ?, ?, ?);
--
('2017-11-01 12:40:00', 'JRD', 0, 838)
('2017-11-10 18:40:00', 'JRD', 0, 884)
('2015-03-17 18:33:00', 'QLI', 1, 533)
('2015-01-07 18:01:51', 'GFIX', 3, 134)
('1996-11-07 13:39:40', 'GPRE', 4, 1)

View File

@ -945,6 +945,52 @@ Data source : @4', NULL, NULL)
('decfloat_round', NULL, 'StmtNodes.cpp', NULL, 0, 835, NULL, 'Invalid decfloat rounding mode @1', NULL, NULL);
('sysf_invalid_first_last_part', 'evlFirstLastDay', 'SysFunction.cpp', NULL, 0, 836, NULL, 'Invalid part @1 to calculate the @1 of a DATE/TIMESTAMP', NULL, NULL)
('sysf_invalid_date_timestamp', 'evlFirstLastDay', 'SysFunction.cpp', NULL, 0, 837, NULL, 'Expected DATE/TIMESTAMP value in @1', NULL, NULL)
('precision_err2', NULL, 'dsql parse.y', NULL, 0, 838, NULL, 'Precision must be from @1 to @2', NULL, NULL);
('bad_batch_handle', NULL, 'jrd.cpp', NULL, 0, 839, NULL, 'invalid batch handle', NULL, NULL);
('intl_char', NULL, 'IntlParametersBlock.cpp', NULL, 0, 840, NULL, 'Bad international character in tag @1', NULL, NULL);
('null_block', NULL, 'utils.cpp', NULL, 0, 841, NULL, 'Null data in parameters block with non-zero length', NULL, NULL);
('mixed_info', NULL, 'utils.cpp', NULL, 0, 842, NULL, 'Items working with running service and getting generic server information should not be mixed in single info block', NULL, NULL);
('unknown_info', NULL, 'utils.cpp', NULL, 0, 843, NULL, 'Unknown information item, code @1', NULL, NULL);
('bpb_version', NULL, 'utils.cpp', NULL, 0, 844, NULL, 'Wrong version of blob parameters block @1, should be @2', NULL, NULL);
('user_manager', NULL, NULL, NULL, 0, 845, NULL, 'User management plugin is missing or failed to load', NULL, NULL);
('icu_entrypoint', NULL, 'unicode_util.cpp', NULL, 0, 846, NULL, 'Missing entrypoint @1 in ICU library', NULL, NULL);
('icu_library', NULL, 'unicode_util.cpp', NULL, 0, 847, NULL, 'Could not find acceptable ICU library', NULL, NULL);
('metadata_name', NULL, 'MsgMetadata.cpp', NULL, 0, 848, NULL, 'Name @1 not found in system MetadataBuilder', NULL, NULL);
('tokens_parse', NULL, 'Tokens.cpp', NULL, 0, 849, NULL, 'Parse to tokens error', NULL, NULL);
('iconv_open', NULL, 'isc_file.cpp', NULL, 0, 850, NULL, 'Error opening international conversion descriptor from @1 to @2', NULL, NULL);
('batch_compl_range', NULL, 'BatchCompletionState.h', NULL, 0, 851, NULL, 'Message @1 is out of range, only @2 messages in batch', NULL, NULL);
('batch_compl_detail', NULL, 'BatchCompletionState.h', NULL, 0, 852, NULL, 'Detailed error info for message @1 is missing in batch', NULL, NULL);
('deflate_init', NULL, 'remote.cpp', NULL, 0, 853, NULL, 'Compression stream init error @1', NULL, NULL);
('inflate_init', NULL, 'remote.cpp', NULL, 0, 854, NULL, 'Decompression stream init error @1', NULL, NULL);
('big_segment', NULL, NULL, NULL, 0, 855, NULL, 'Segment size (@1) should not exceed 65535 (64K - 1) when using segmented blob', NULL, NULL);
('batch_policy', NULL, NULL, NULL, 0, 856, NULL, 'Invalid blob policy in the batch for @1() call', NULL, NULL);
('batch_defbpb', NULL, NULL, NULL, 0, 857, NULL, 'Can''t change default BPB after adding any data to batch', NULL, NULL);
('batch_align', NULL, 'interface.cpp', NULL, 0, 858, NULL, 'Unexpected info buffer structure querying for default blob alignment', NULL, NULL);
('multi_segment_dup', 'getMultiPartConnectParameter', 'server.cpp', NULL, 0, 859, NULL, 'Duplicated segment @1 in multisegment connect block parameter', NULL, NULL);
('non_plugin_protocol', NULL, 'server.cpp', NULL, 0, 860, NULL, 'Plugin not supported by network protocol', NULL, NULL);
('message_format', NULL, 'server.cpp', NULL, 0, 861, NULL, 'Error parsing message format', NULL, NULL);
('batch_param_version', NULL, NULL, NULL, 0, 862, NULL, 'Wrong version of batch parameters block @1, should be @2', NULL, NULL);
('batch_msg_long', NULL, 'DsqlBatch.cpp', NULL, 0, 863, NULL, 'Message size (@1) in batch exceeds internal buffer size (@2)', NULL, NULL);
('batch_open', NULL, 'DsqlBatch.cpp', NULL, 0, 864, NULL, 'Batch already opened for this statement', NULL, NULL);
('batch_type', NULL, 'DsqlBatch.cpp', NULL, 0, 865, NULL, 'Invalid type of statement used in batch', NULL, NULL);
('batch_param', NULL, 'DsqlBatch.cpp', NULL, 0, 866, NULL, 'Statement used in batch must have parameters', NULL, NULL);
('batch_blobs', NULL, 'DsqlBatch.cpp', NULL, 0, 867, NULL, 'There are no blobs in associated with batch statement', NULL, NULL);
('batch_blob_append', NULL, 'DsqlBatch.cpp', NULL, 0, 868, NULL, 'appendBlobData() is used to append data to last blob but no such blob was added to the batch', NULL, NULL);
('batch_stream_align', NULL, 'DsqlBatch.cpp', NULL, 0, 869, NULL, 'Portions of data, passed as blob stream, should have size multiple to the alignment required for blobs', NULL, NULL);
('batch_rpt_blob', NULL, 'DsqlBatch.cpp', NULL, 0, 870, NULL, 'Repeated blob id @1 in registerBlob()', NULL, NULL);
('batch_blob_buf', NULL, 'DsqlBatch.cpp', NULL, 0, 871, NULL, 'Blob buffer format error', NULL, NULL);
('batch_small_data', NULL, 'DsqlBatch.cpp', NULL, 0, 872, NULL, 'Unusable (too small) data remained in @1 buffer', NULL, NULL);
('batch_cont_bpb', NULL, 'DsqlBatch.cpp', NULL, 0, 873, NULL, 'Blob continuation should not contain BPB', NULL, NULL);
('batch_big_bpb', NULL, 'DsqlBatch.cpp', NULL, 0, 874, NULL, 'Size of BPB (@1) greater than remaining data (@2)', NULL, NULL);
('batch_big_segment', NULL, 'DsqlBatch.cpp', NULL, 0, 875, NULL, 'Size of segment (@1) greater than current BLOB data (@2)', NULL, NULL);
('batch_big_seg2', NULL, 'DsqlBatch.cpp', NULL, 0, 876, NULL, 'Size of segment (@1) greater than available data (@2)', NULL, NULL);
('batch_blob_id', NULL, 'DsqlBatch.cpp', NULL, 0, 877, NULL, 'Unknown blob ID @1 in the batch message', NULL, NULL);
('batch_too_big', NULL, 'DsqlBatch.cpp', NULL, 0, 878, NULL, 'Internal buffer overflow - batch too big', NULL, NULL);
('num_literal', NULL, 'make.cpp', NULL, 0, 879, NULL, 'Numeric literal too long', NULL, NULL);
('map_event', NULL, 'Mapping.cpp', NULL, 0, 880, NULL, 'Error using events in mapping shared memory: @1', NULL, NULL);
('map_overflow', NULL, 'Mapping.cpp', NULL, 0, 881, NULL, 'Global mapping memory overflow', NULL, NULL);
('hdr_overflow', NULL, 'CryptoManager.cpp', NULL, 0, 882, NULL, 'Header page overflow - too many clumplets on it', NULL, NULL);
('vld_plugins', NULL, 'ValidatePassword.cpp', NULL, 0, 883, NULL, 'No matching client/server authentication plugins configured for execute statement in embedded datasource', NULL, NULL);
-- QLI
(NULL, NULL, NULL, NULL, 1, 0, NULL, 'expected type', NULL, NULL);
(NULL, NULL, NULL, NULL, 1, 1, NULL, 'bad block type', NULL, NULL);

View File

@ -844,6 +844,52 @@ set bulk_insert INSERT INTO SYSTEM_ERRORS (SQL_CODE, SQL_CLASS, SQL_SUBCLASS, FA
(-901, '42', '000', 0, 835, 'decfloat_round', NULL, NULL)
(-833, '42', '000', 0, 836, 'sysf_invalid_first_last_part', NULL, NULL)
(-833, '42', '000', 0, 837, 'sysf_invalid_date_timestamp', NULL, NULL)
(-842, 'HY', '104', 0, 838, 'precision_err2', NULL, NULL)
(-901, '08', '003', 0, 839, 'bad_batch_handle', NULL, NULL)
(-901, '22', '021', 0, 840, 'intl_char', NULL, NULL)
(-901, '22', '000', 0, 841, 'null_block', NULL, NULL)
(-901, '22', '000', 0, 842, 'mixed_info', NULL, NULL)
(-901, '22', '000', 0, 843, 'unknown_info', NULL, NULL)
(-901, '22', '000', 0, 844, 'bpb_version', NULL, NULL)
(-901, '28', '000', 0, 845, 'user_manager', NULL, NULL)
(-902, 'XX', '000', 0, 846, 'icu_entrypoint', NULL, NULL)
(-902, 'XX', '000', 0, 847, 'icu_library', NULL, NULL)
(-901, '02', '000', 0, 848, 'metadata_name', NULL, NULL)
(-901, '42', '000', 0, 849, 'tokens_parse', NULL, NULL)
(-902, '08', '006', 0, 850, 'iconv_open', NULL, NULL)
(-901, '07', '002', 0, 851, 'batch_compl_range', NULL, NULL)
(-901, '07', '002', 0, 852, 'batch_compl_detail', NULL, NULL)
(-902, '08', '006', 0, 853, 'deflate_init', NULL, NULL)
(-902, '08', '006', 0, 854, 'inflate_init', NULL, NULL)
(-901, '22', '026', 0, 855, 'big_segment', NULL, NULL)
(-901, '22', '000', 0, 856, 'batch_policy', NULL, NULL)
(-901, '22', '000', 0, 857, 'batch_defbpb', NULL, NULL)
(-901, '22', '000', 0, 858, 'batch_align', NULL, NULL)
(-901, '22', '000', 0, 859, 'multi_segment_dup', NULL, NULL)
(-902, '08', '004', 0, 860, 'non_plugin_protocol', NULL, NULL)
(-901, '22', '000', 0, 861, 'message_format', NULL, NULL)
(-901, '22', '000', 0, 862, 'batch_param_version', NULL, NULL)
(-901, '54', '000', 0, 863, 'batch_msg_long', NULL, NULL)
(-901, '08', '002', 0, 864, 'batch_open', NULL, NULL)
(-901, '07', '003', 0, 865, 'batch_type', NULL, NULL)
(-901, '07', '001', 0, 866, 'batch_param', NULL, NULL)
(-901, '07', '001', 0, 867, 'batch_blobs', NULL, NULL)
(-901, '22', '000', 0, 868, 'batch_blob_append', NULL, NULL)
(-901, '22', '000', 0, 869, 'batch_stream_align', NULL, NULL)
(-901, '22', '000', 0, 870, 'batch_rpt_blob', NULL, NULL)
(-901, '22', '000', 0, 871, 'batch_blob_buf', NULL, NULL)
(-901, '22', '000', 0, 872, 'batch_small_data', NULL, NULL)
(-901, '22', '000', 0, 873, 'batch_cont_bpb', NULL, NULL)
(-901, '22', '000', 0, 874, 'batch_big_bpb', NULL, NULL)
(-901, '22', '000', 0, 875, 'batch_big_segment', NULL, NULL)
(-901, '22', '000', 0, 876, 'batch_big_seg2', NULL, NULL)
(-901, '22', '000', 0, 877, 'batch_blob_id', NULL, NULL)
(-901, '54', '000', 0, 878, 'batch_too_big', NULL, NULL)
(-901, '54', '000', 0, 879, 'num_literal', NULL, NULL)
(-902, 'XX', '000', 0, 880, 'map_event', NULL, NULL)
(-902, '54', '000', 0, 881, 'map_overflow', NULL, NULL)
(-901, '54', '000', 0, 882, 'hdr_overflow', NULL, NULL)
(-901, '28', '000', 0, 883, 'vld_plugins', NULL, NULL)
-- GFIX
(-901, '00', '000', 3, 1, 'gfix_db_name', NULL, NULL)
(-901, '00', '000', 3, 2, 'gfix_invalid_sw', NULL, NULL)

View File

@ -451,7 +451,7 @@ private:
if (size > MAX_USHORT)
{
(Arg::Gds(isc_imp_exc) << Arg::Gds(isc_blobtoobig)
<< Arg::Gds(isc_random) << "Segment size >= 64Kb").raise();
<< Arg::Gds(isc_big_segment) << Arg::Num(size)).raise();
}
alignBlobBuffer(BLOB_SEGHDR_ALIGN, sizePointer);
@ -2369,7 +2369,7 @@ void Batch::addBlob(CheckStatusWrapper* status, unsigned length, const void* inB
case IBatch::BLOB_ID_USER:
break;
default:
(Arg::Gds(isc_random) << "Invalid blob policy for appendBlobData call").raise();
(Arg::Gds(isc_batch_policy) << "addBlob").raise();
}
// Build blob HDR in stream
@ -2410,7 +2410,7 @@ void Batch::appendBlobData(CheckStatusWrapper* status, unsigned length, const vo
case IBatch::BLOB_ID_ENGINE:
break;
default:
(Arg::Gds(isc_random) << "Invalid blob policy for appendBlobData call").raise();
(Arg::Gds(isc_batch_policy) << "appendBlobData").raise();
}
Rsr* statement = stmt->getStatement();
@ -2443,7 +2443,7 @@ void Batch::addBlobStream(CheckStatusWrapper* status, unsigned length, const voi
// Policy check
if (blobPolicy != IBatch::BLOB_STREAM)
{
(Arg::Gds(isc_random) << "Invalid blob policy for addBlobStream() call").raise();
(Arg::Gds(isc_batch_policy) << "addBlobStream").raise();
}
Rsr* statement = stmt->getStatement();
@ -2503,7 +2503,7 @@ void Batch::setDefaultBpb(CheckStatusWrapper* status, unsigned parLength, const
// Check for presence of any data in batch buffers
if (batchHasData())
(Arg::Gds(isc_random) << "Can't change default BPB after adding any data to batch").raise();
Arg::Gds(isc_batch_defbpb).raise();
// Set default segmentation flag
defSegmented = fb_utils::isBpbSegmented(parLength, par);
@ -2570,7 +2570,7 @@ void Batch::setBlobAlignment()
// Extract from buffer
if (buffer[0] != item)
(Arg::Gds(isc_random) << "Unexpected info buffer structure").raise();
Arg::Gds(isc_batch_align).raise();
int len = gds__vax_integer(&buffer[1], 2);
statement->rsr_batch_stream.alignment = blobAlign = gds__vax_integer(&buffer[3], len);
@ -2670,19 +2670,10 @@ IBatchCompletionState* Batch::execute(CheckStatusWrapper* status, ITransaction*
receive_packet(port, packet);
statement->rsr_batch_cs = nullptr;
switch (packet->p_operation)
{
case op_response:
REMOTE_check_response(status, rdb, packet);
break;
case op_batch_cs:
if (packet->p_operation == op_batch_cs)
return cs.release();
default:
(Arg::Gds(isc_random) << "Unexpected packet type").raise();
break;
}
REMOTE_check_response(status, rdb, packet);
}
catch (const Exception& ex)
{

View File

@ -1590,7 +1590,7 @@ void rem_port::initCompression()
port_send_stream.opaque = Z_NULL;
int ret = zlib().deflateInit(&port_send_stream, Z_DEFAULT_COMPRESSION);
if (ret != Z_OK)
(Firebird::Arg::Gds(isc_random) << "compression stream init error").raise(); // add error code
(Firebird::Arg::Gds(isc_deflate_init) << Firebird::Arg::Num(ret)).raise();
port_send_stream.next_out = NULL;
port_recv_stream.zalloc = allocFunc;
@ -1602,7 +1602,7 @@ void rem_port::initCompression()
if (ret != Z_OK)
{
zlib().deflateEnd(&port_send_stream);
(Firebird::Arg::Gds(isc_random) << "decompression stream init error").raise(); // add error code
(Firebird::Arg::Gds(isc_inflate_init) << Firebird::Arg::Num(ret)).raise();
}
try

View File

@ -431,7 +431,7 @@ static void getMultiPartConnectParameter(T& putTo, Firebird::ClumpletReader& id,
top = offset + 1;
if (checkBytes[offset])
{
(Arg::Gds(isc_random) << "Invalid CNCT block: repeated data").raise(); // print offset No here
(Arg::Gds(isc_multi_segment_dup) << Arg::Num(offset)).raise();
}
checkBytes[offset] = 1;
@ -641,7 +641,7 @@ public:
{
authServer = NULL;
working = false;
(Arg::Gds(isc_random) << "Plugin not supported by network protocol").copyTo(&st); // add port_protocol parameter
Arg::Gds(isc_non_plugin_protocol).copyTo(&st);
break;
}
@ -677,7 +677,7 @@ public:
{
authServer = NULL;
working = false;
(Arg::Gds(isc_random) << "Plugin not supported by network protocol").copyTo(&st); // add port_protocol parameter
Arg::Gds(isc_non_plugin_protocol).copyTo(&st);
break;
}
}
@ -2062,7 +2062,7 @@ void Rsr::checkCursor()
void Rsr::checkBatch()
{
if (!rsr_batch)
(Arg::Gds(isc_random) << "Batch is not created").raise();
Arg::Gds(isc_bad_batch_handle).raise();
}
@ -3336,7 +3336,7 @@ void rem_port::batch_create(P_BATCH_CREATE* batch, PACKET* sendL)
const ULONG blr_length = batch->p_batch_blr.cstr_length;
const UCHAR* blr = batch->p_batch_blr.cstr_address;
if (!blr)
(Arg::Gds(isc_random) << "Missing required format info in createBatch()").raise();
(Arg::Gds(isc_random) << "Missing required format info in createBatch()").raise(); // signals internal protocol error
InternalMessageBuffer msgBuffer(blr_length, blr, batch->p_batch_msglen, NULL);
// Flush out any previous format information
@ -3373,7 +3373,7 @@ void rem_port::batch_create(P_BATCH_CREATE* batch, PACKET* sendL)
ClumpletWriter wrt(ClumpletReader::WideTagged, MAX_DPB_SIZE,
batch->p_batch_pb.cstr_address, batch->p_batch_pb.cstr_length);
if (wrt.getBufferLength() && (wrt.getBufferTag() != IBatch::VERSION1))
(Arg::Gds(isc_random) << "Invalid tag in parameters block").raise();
(Arg::Gds(isc_batch_param_version) << Arg::Num(wrt.getBufferTag()) << Arg::Num(IBatch::VERSION1)).raise();
statement->rsr_batch_flags = (wrt.find(IBatch::TAG_RECORD_COUNTS) && wrt.getInt()) ?
(1 << IBatch::TAG_RECORD_COUNTS) : 0;
if (wrt.find(IBatch::TAG_BLOB_POLICY) && (wrt.getInt() != IBatch::BLOB_STREAM))
@ -4871,7 +4871,7 @@ static bool continue_authentication(rem_port* port, PACKET* send, PACKET* receiv
receive->p_operation == op_trusted_auth && port->port_protocol >= PROTOCOL_VERSION13 ||
receive->p_operation == op_cont_auth && port->port_protocol < PROTOCOL_VERSION13)
{
send_error(port, send, (Arg::Gds(isc_random) << "Operation not supported for network protocol"));
send_error(port, send, Arg::Gds(isc_non_plugin_protocol));
}
else
{

View File

@ -475,8 +475,7 @@ int gsec(Firebird::UtilSvc* uSvc)
manager = getPlugin.plugin();
if (!manager)
{
GSEC_error_redirect((Firebird::Arg::Gds(isc_random) <<
"Management plugin is missing or failed to load").value(), GsecMsg15);
GSEC_error_redirect(Firebird::Arg::Gds(isc_user_manager).value(), GsecMsg15);
}
GsecInfo info(user_data->dba.get(), user_data->role.get(),

View File

@ -123,8 +123,6 @@ namespace
if (uSvc->isService())
{
//fb_assert(message != NULL);
//(Arg::Gds(isc_random) << msg).raise();
fb_assert(code);
Arg::Gds gds(code);
if (message)