|
From: <fir...@us...> - 2011-07-03 03:16:49
|
Revision: 53277
http://firebird.svn.sourceforge.net/firebird/?rev=53277&view=rev
Author: firebirds
Date: 2011-07-03 03:16:43 +0000 (Sun, 03 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-02 22:10:07 UTC (rev 53276)
+++ firebird/trunk/ChangeLog 2011-07-03 03:16:43 UTC (rev 53277)
@@ -1,3 +1,12 @@
+ 2011-07-02 22:10 asfernandes
+ M src/common/StatusHolder.cpp
+ M src/jrd/jrd.cpp
+ M src/remote/client/interface.cpp
+ M src/remote/protocol.cpp
+ M src/remote/server/server.cpp
+ M src/yvalve/why.cpp
+Misc.
+
2011-07-01 16:15 dimitr
A builds/win32/msvc8/legacy_usermanager.vcproj (from /firebird/trunk/builds/win32/msvc8/legacy_usermanager.vcxproj:53272)
D builds/win32/msvc8/legacy_usermanager.vcxproj
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-02 22:10:07 UTC (rev 53276)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-03 03:16:43 UTC (rev 53277)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29482
+ FORMAL BUILD NUMBER:29483
*/
-#define PRODUCT_VER_STRING "3.0.0.29482"
-#define FILE_VER_STRING "WI-T3.0.0.29482"
-#define LICENSE_VER_STRING "WI-T3.0.0.29482"
-#define FILE_VER_NUMBER 3, 0, 0, 29482
+#define PRODUCT_VER_STRING "3.0.0.29483"
+#define FILE_VER_STRING "WI-T3.0.0.29483"
+#define LICENSE_VER_STRING "WI-T3.0.0.29483"
+#define FILE_VER_NUMBER 3, 0, 0, 29483
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29482"
+#define FB_BUILD_NO "29483"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-02 22:10:07 UTC (rev 53276)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-03 03:16:43 UTC (rev 53277)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29482
+BuildNum=29483
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-08 03:19:10
|
Revision: 53280
http://firebird.svn.sourceforge.net/firebird/?rev=53280&view=rev
Author: firebirds
Date: 2011-07-08 03:19:03 +0000 (Fri, 08 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-07 16:24:27 UTC (rev 53279)
+++ firebird/trunk/ChangeLog 2011-07-08 03:19:03 UTC (rev 53280)
@@ -1,3 +1,10 @@
+ 2011-07-07 07:58 robocop
+ M src/common/StatusHolder.cpp
+ M src/common/StatusHolder.h
+ M src/include/firebird/Message.h
+ M src/remote/server/server.cpp
+Misc.
+
2011-07-02 22:10 asfernandes
M src/common/StatusHolder.cpp
M src/jrd/jrd.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-07 16:24:27 UTC (rev 53279)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-08 03:19:03 UTC (rev 53280)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29483
+ FORMAL BUILD NUMBER:29484
*/
-#define PRODUCT_VER_STRING "3.0.0.29483"
-#define FILE_VER_STRING "WI-T3.0.0.29483"
-#define LICENSE_VER_STRING "WI-T3.0.0.29483"
-#define FILE_VER_NUMBER 3, 0, 0, 29483
+#define PRODUCT_VER_STRING "3.0.0.29484"
+#define FILE_VER_STRING "WI-T3.0.0.29484"
+#define LICENSE_VER_STRING "WI-T3.0.0.29484"
+#define FILE_VER_NUMBER 3, 0, 0, 29484
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29483"
+#define FB_BUILD_NO "29484"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-07 16:24:27 UTC (rev 53279)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-08 03:19:03 UTC (rev 53280)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29483
+BuildNum=29484
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <asf...@us...> - 2011-07-10 01:24:02
|
Revision: 53285
http://firebird.svn.sourceforge.net/firebird/?rev=53285&view=rev
Author: asfernandes
Date: 2011-07-10 01:23:53 +0000 (Sun, 10 Jul 2011)
Log Message:
-----------
Use the BLR message definition of external procedures and functions.
Modified Paths:
--------------
firebird/trunk/examples/udr/UdrCppExample.cpp
firebird/trunk/lang_helpers/gds_codes.ftn
firebird/trunk/lang_helpers/gds_codes.pas
firebird/trunk/src/dsql/DdlNodes.epp
firebird/trunk/src/include/firebird/ExternalEngine.h
firebird/trunk/src/include/firebird/Message.h
firebird/trunk/src/include/firebird/UdrCppEngine.h
firebird/trunk/src/include/firebird/UdrEngine.h
firebird/trunk/src/include/gen/codetext.h
firebird/trunk/src/include/gen/iberror.h
firebird/trunk/src/include/gen/msgs.h
firebird/trunk/src/include/gen/sql_code.h
firebird/trunk/src/include/gen/sql_state.h
firebird/trunk/src/jrd/BlrReader.h
firebird/trunk/src/jrd/ExtEngineManager.cpp
firebird/trunk/src/jrd/ExtEngineManager.h
firebird/trunk/src/jrd/Function.epp
firebird/trunk/src/jrd/Function.h
firebird/trunk/src/jrd/exe.cpp
firebird/trunk/src/jrd/exe.h
firebird/trunk/src/jrd/met.epp
firebird/trunk/src/jrd/par.cpp
firebird/trunk/src/jrd/par_proto.h
firebird/trunk/src/msgs/facilities2.sql
firebird/trunk/src/msgs/messages2.sql
firebird/trunk/src/msgs/system_errors2.sql
firebird/trunk/src/plugins/udr_engine/UdrEngine.cpp
Modified: firebird/trunk/examples/udr/UdrCppExample.cpp
===================================================================
--- firebird/trunk/examples/udr/UdrCppExample.cpp 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/examples/udr/UdrCppExample.cpp 2011-07-10 01:23:53 UTC (rev 53285)
@@ -289,7 +289,7 @@
blrLength = 0;
blr = blrPos = new ISC_UCHAR[sizeof(HEADER) + 10 * itemCount + 2];
bufferLength = 0;
- buffer = (ISC_UCHAR*) aBuffer;
+ buffer = static_cast<ISC_UCHAR*>(aBuffer);
memcpy(blrPos, HEADER, sizeof(HEADER));
blrPos += sizeof(HEADER);
@@ -795,6 +795,7 @@
FB_UDR_END_PROCEDURE
+//// TODO: Rework triggers.
/***
Sample usage:
Modified: firebird/trunk/lang_helpers/gds_codes.ftn
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.ftn 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/lang_helpers/gds_codes.ftn 2011-07-10 01:23:53 UTC (rev 53285)
@@ -1462,6 +1462,10 @@
PARAMETER (GDS__sysf_argscant_both_be_zero = 335545024)
INTEGER*4 GDS__spb_no_id
PARAMETER (GDS__spb_no_id = 335545025)
+ INTEGER*4 GDS__ee_blr_mismatch_null
+ PARAMETER (GDS__ee_blr_mismatch_null = 335545026)
+ INTEGER*4 GDS__ee_blr_mismatch_length
+ PARAMETER (GDS__ee_blr_mismatch_length = 335545027)
INTEGER*4 GDS__gfix_db_name
PARAMETER (GDS__gfix_db_name = 335740929)
INTEGER*4 GDS__gfix_invalid_sw
Modified: firebird/trunk/lang_helpers/gds_codes.pas
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.pas 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/lang_helpers/gds_codes.pas 2011-07-10 01:23:53 UTC (rev 53285)
@@ -738,6 +738,8 @@
gds_invalid_boolean_usage = 335545023;
gds_sysf_argscant_both_be_zero = 335545024;
gds_spb_no_id = 335545025;
+ gds_ee_blr_mismatch_null = 335545026;
+ gds_ee_blr_mismatch_length = 335545027;
gds_gfix_db_name = 335740929;
gds_gfix_invalid_sw = 335740930;
gds_gfix_incmp_sw = 335740932;
Modified: firebird/trunk/src/dsql/DdlNodes.epp
===================================================================
--- firebird/trunk/src/dsql/DdlNodes.epp 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/dsql/DdlNodes.epp 2011-07-10 01:23:53 UTC (rev 53285)
@@ -1448,7 +1448,7 @@
ARG.RDB$COLLATION_ID.NULL = TRUE;
ARG.RDB$ARGUMENT_MECHANISM.NULL = FALSE;
- ARG.RDB$ARGUMENT_MECHANISM = (USHORT) (parameter.fullDomain || parameter.typeOfName.isEmpty() ?
+ ARG.RDB$ARGUMENT_MECHANISM = (USHORT) (parameter.fullDomain ?
prm_mech_normal : prm_mech_type_of);
if (parameter.notNull)
@@ -2226,7 +2226,7 @@
PRM.RDB$PARAMETER_TYPE = type;
PRM.RDB$PARAMETER_MECHANISM.NULL = FALSE;
- PRM.RDB$PARAMETER_MECHANISM = (USHORT) (parameter.fullDomain || parameter.typeOfName.isEmpty() ?
+ PRM.RDB$PARAMETER_MECHANISM = (USHORT) (parameter.fullDomain ?
prm_mech_normal : prm_mech_type_of);
PRM.RDB$NULL_FLAG.NULL = !parameter.notNull;
Modified: firebird/trunk/src/include/firebird/ExternalEngine.h
===================================================================
--- firebird/trunk/src/include/firebird/ExternalEngine.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/include/firebird/ExternalEngine.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -43,6 +43,14 @@
const int EXTERNAL_VERSION_1 = 1;
+struct BlrMessage
+{
+ const unsigned char* blr;
+ unsigned int blrLength;
+ unsigned int bufferLength;
+};
+
+
// Connection to current database in external engine.
// Context passed to ExternalEngine has SYSDBA privileges.
// Context passed to ExternalFunction, ExternalProcedure and ExternalTrigger
@@ -97,7 +105,7 @@
Utf8* name, uint nameSize) = 0;
virtual void FB_CALL execute(Error* error, ExternalContext* context,
- UCHAR* inMsg, UCHAR* outMsg) = 0;
+ void* inMsg, void* outMsg) = 0;
};
@@ -114,7 +122,7 @@
// Returning NULL results in a result set of one record.
// Procedures without output parameters should return NULL.
virtual ExternalResultSet* FB_CALL open(Error* error, ExternalContext* context,
- UCHAR* inMsg, UCHAR* outMsg) = 0;
+ void* inMsg, void* outMsg) = 0;
};
@@ -149,7 +157,7 @@
Utf8* name, uint nameSize) = 0;
virtual void FB_CALL execute(Error* error, ExternalContext* context,
- Action action, UCHAR* oldMsg, UCHAR* newMsg) = 0;
+ Action action, void* oldMsg, void* newMsg) = 0;
};
@@ -192,9 +200,9 @@
// Called when engine wants to load object in the cache. Objects are disposed when
// going out of the cache.
virtual ExternalFunction* FB_CALL makeFunction(Error* error, ExternalContext* context,
- const IRoutineMetadata* metadata) = 0;
+ const IRoutineMetadata* metadata, BlrMessage* inBlr, BlrMessage* outBlr) = 0;
virtual ExternalProcedure* FB_CALL makeProcedure(Error* error, ExternalContext* context,
- const IRoutineMetadata* metadata) = 0;
+ const IRoutineMetadata* metadata, BlrMessage* inBlr, BlrMessage* outBlr) = 0;
virtual ExternalTrigger* FB_CALL makeTrigger(Error* error, ExternalContext* context,
const IRoutineMetadata* metadata) = 0;
};
Modified: firebird/trunk/src/include/firebird/Message.h
===================================================================
--- firebird/trunk/src/include/firebird/Message.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/include/firebird/Message.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -37,8 +37,7 @@
#define FB_MESSAGE_I(name, fields) \
struct name \
{ \
- /* TODO: use it */ \
- static const unsigned char* BLR() \
+ static const unsigned char* getBlr(unsigned* length) \
{ \
static const unsigned char blr[] = { \
blr_version5, \
@@ -50,10 +49,11 @@
blr_end, \
blr_eoc \
}; \
+ *length = sizeof(blr); \
return blr; \
} \
\
- static unsigned SIZE() \
+ static unsigned getSize() \
{ \
return (unsigned)(size_t) (&((name*) 0)->FB_BOOST_PP_CAT( \
FB_BOOST_PP_TUPLE_ELEM(2, 1, \
@@ -79,7 +79,7 @@
#define FB_BLR_FB_SMALLINT FB_BLR_FB_SCALED_SMALLINT(0)
#define FB_BLR_FB_INTEGER FB_BLR_FB_SCALED_INTEGER(0)
#define FB_BLR_FB_BIGINT FB_BLR_FB_SCALED_BIGINT(0)
-#define FB_BLR_FB_VARCHAR(len) blr_varying, (len) & 0xFF, (len) >> 8
+#define FB_BLR_FB_VARCHAR(len) blr_varying2, 0, 0, (len) & 0xFF, (len) >> 8
#define FB_TYPE_FB_SCALED_SMALLINT(x) ISC_SHORT
#define FB_TYPE_FB_SCALED_INTEGER(x) ISC_LONG
@@ -87,7 +87,7 @@
#define FB_TYPE_FB_SMALLINT ISC_SHORT
#define FB_TYPE_FB_INTEGER ISC_LONG
#define FB_TYPE_FB_BIGINT ISC_INT64
-#define FB_TYPE_FB_VARCHAR(len) FbVarChar<(len)>
+#define FB_TYPE_FB_VARCHAR(len) ::Firebird::FbVarChar<(len)>
namespace Firebird {
Modified: firebird/trunk/src/include/firebird/UdrCppEngine.h
===================================================================
--- firebird/trunk/src/include/firebird/UdrCppEngine.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/include/firebird/UdrCppEngine.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -75,7 +75,7 @@
#define FB_UDR_EXECUTE__FUNCTION \
virtual void FB_CALL execute(::Firebird::Error* error, ::Firebird::ExternalContext* context, \
- UCHAR* inMsg, UCHAR* outMsg) \
+ void* inMsg, void* outMsg) \
{ \
try \
{ \
@@ -131,7 +131,7 @@
#define FB_UDR_EXECUTE__PROCEDURE \
virtual ::Firebird::ExternalResultSet* FB_CALL open(::Firebird::Error* error, \
- ::Firebird::ExternalContext* context, UCHAR* inMsg, UCHAR* outMsg) \
+ ::Firebird::ExternalContext* context, void* inMsg, void* outMsg) \
{ \
try \
{ \
@@ -192,7 +192,7 @@
{ \
public: \
virtual void FB_CALL execute(::Firebird::Error* error, ::Firebird::ExternalContext* context, \
- ::Firebird::ExternalTrigger::Action action, UCHAR* oldMsg, UCHAR* newMsg);
+ ::Firebird::ExternalTrigger::Action action, void* oldMsg, void* newMsg);
#define FB_UDR_END_DECLARE_TRIGGER(name) \
};
@@ -204,7 +204,7 @@
#define FB_UDR_BEGIN_TRIGGER(name) \
void FB_CALL FB_UDR_TRIGGER(name)::execute(::Firebird::Error* error, \
::Firebird::ExternalContext* context, ::Firebird::ExternalTrigger::Action action, \
- UCHAR* oldMsg, UCHAR* newMsg) \
+ void* oldMsg, void* newMsg) \
{ \
try \
{
@@ -459,11 +459,6 @@
ThrowError::check(status);
return handle;
}
-
- static void* getEntryPoint(ExternalContext* /*context*/, const char* entryPoint)
- {
- return fbUdrGetFunction(entryPoint);
- }
};
@@ -602,16 +597,15 @@
template <typename T> class FunctionFactoryImpl : public FunctionFactory
{
public:
- explicit FunctionFactoryImpl(const char* aName)
- : name(aName)
+ explicit FunctionFactoryImpl(const char* name)
{
- fbUdrRegFunction(this);
+ fbUdrRegFunction(name, this);
}
-public:
- virtual const char* FB_CALL getName()
+ virtual void setup(const IRoutineMetadata* /*metadata*/, BlrMessage* inBlr, BlrMessage* outBlr)
{
- return name;
+ setBlr(inBlr, (typename T::InMessage*) 0);
+ setBlr(outBlr, (typename T::OutMessage*) 0);
}
virtual ExternalFunction* FB_CALL newItem(const IRoutineMetadata* metadata)
@@ -620,23 +614,30 @@
}
private:
- const char* name;
+ template <typename MessageType> void setBlr(BlrMessage* blrMessage, MessageType*)
+ {
+ blrMessage->blr = MessageType::getBlr(&blrMessage->blrLength);
+ blrMessage->bufferLength = MessageType::getSize();
+ }
+
+ void setBlr(BlrMessage* blrMessage, void**)
+ {
+ }
};
template <typename T> class ProcedureFactoryImpl : public ProcedureFactory
{
public:
- explicit ProcedureFactoryImpl(const char* aName)
- : name(aName)
+ explicit ProcedureFactoryImpl(const char* name)
{
- fbUdrRegProcedure(this);
+ fbUdrRegProcedure(name, this);
}
-public:
- virtual const char* FB_CALL getName()
+ virtual void setup(const IRoutineMetadata* /*metadata*/, BlrMessage* inBlr, BlrMessage* outBlr)
{
- return name;
+ setBlr(inBlr, (typename T::InMessage*) 0);
+ setBlr(outBlr, (typename T::OutMessage*) 0);
}
virtual ExternalProcedure* FB_CALL newItem(const IRoutineMetadata* metadata)
@@ -645,32 +646,34 @@
}
private:
- const char* name;
+ template <typename MessageType> void setBlr(BlrMessage* blrMessage, MessageType*)
+ {
+ blrMessage->blr = MessageType::getBlr(&blrMessage->blrLength);
+ blrMessage->bufferLength = MessageType::getSize();
+ }
+
+ void setBlr(BlrMessage* blrMessage, void**)
+ {
+ }
};
template <typename T> class TriggerFactoryImpl : public TriggerFactory
{
public:
- explicit TriggerFactoryImpl(const char* aName)
- : name(aName)
+ explicit TriggerFactoryImpl(const char* name)
{
- fbUdrRegTrigger(this);
+ fbUdrRegTrigger(name, this);
}
-public:
- virtual const char* FB_CALL getName()
+ virtual void setup(const IRoutineMetadata* /*metadata*/)
{
- return name;
}
virtual ExternalTrigger* FB_CALL newItem(const IRoutineMetadata* metadata)
{
return new(metadata) Routine<T>;
}
-
-private:
- const char* name;
};
Modified: firebird/trunk/src/include/firebird/UdrEngine.h
===================================================================
--- firebird/trunk/src/include/firebird/UdrEngine.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/include/firebird/UdrEngine.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -39,30 +39,29 @@
class FunctionFactory
{
public:
- virtual const char* FB_CALL getName() = 0;
+ virtual void setup(const IRoutineMetadata* metadata, BlrMessage* inBlr, BlrMessage* outBlr) = 0;
virtual ExternalFunction* FB_CALL newItem(const IRoutineMetadata* metadata) = 0;
};
class ProcedureFactory
{
public:
- virtual const char* FB_CALL getName() = 0;
+ virtual void setup(const IRoutineMetadata* metadata, BlrMessage* inBlr, BlrMessage* outBlr) = 0;
virtual ExternalProcedure* FB_CALL newItem(const IRoutineMetadata* metadata) = 0;
};
class TriggerFactory
{
public:
- virtual const char* FB_CALL getName() = 0;
+ virtual void setup(const IRoutineMetadata* metadata) = 0;
virtual ExternalTrigger* FB_CALL newItem(const IRoutineMetadata* metadata) = 0;
};
// Routine registration functions.
-extern "C" void fbUdrRegFunction(FunctionFactory* factory);
-extern "C" void fbUdrRegProcedure(ProcedureFactory* factory);
-extern "C" void fbUdrRegTrigger(TriggerFactory* factory);
-extern "C" void* fbUdrGetFunction(const char* symbol);
+extern "C" void fbUdrRegFunction(const char* name, FunctionFactory* factory);
+extern "C" void fbUdrRegProcedure(const char* name, ProcedureFactory* factory);
+extern "C" void fbUdrRegTrigger(const char* name, TriggerFactory* factory);
//------------------------------------------------------------------------------
Modified: firebird/trunk/src/include/gen/codetext.h
===================================================================
--- firebird/trunk/src/include/gen/codetext.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/include/gen/codetext.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -727,6 +727,8 @@
{"invalid_boolean_usage", 335545023},
{"sysf_argscant_both_be_zero", 335545024},
{"spb_no_id", 335545025},
+ {"ee_blr_mismatch_null", 335545026},
+ {"ee_blr_mismatch_length", 335545027},
{"gfix_db_name", 335740929},
{"gfix_invalid_sw", 335740930},
{"gfix_incmp_sw", 335740932},
Modified: firebird/trunk/src/include/gen/iberror.h
===================================================================
--- firebird/trunk/src/include/gen/iberror.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/include/gen/iberror.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -761,6 +761,8 @@
const ISC_STATUS isc_invalid_boolean_usage = 335545023L;
const ISC_STATUS isc_sysf_argscant_both_be_zero = 335545024L;
const ISC_STATUS isc_spb_no_id = 335545025L;
+const ISC_STATUS isc_ee_blr_mismatch_null = 335545026L;
+const ISC_STATUS isc_ee_blr_mismatch_length = 335545027L;
const ISC_STATUS isc_gfix_db_name = 335740929L;
const ISC_STATUS isc_gfix_invalid_sw = 335740930L;
const ISC_STATUS isc_gfix_incmp_sw = 335740932L;
@@ -1180,7 +1182,7 @@
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 = 1124;
+const ISC_STATUS isc_err_max = 1126;
#else /* c definitions */
@@ -1911,6 +1913,8 @@
#define isc_invalid_boolean_usage 335545023L
#define isc_sysf_argscant_both_be_zero 335545024L
#define isc_spb_no_id 335545025L
+#define isc_ee_blr_mismatch_null 335545026L
+#define isc_ee_blr_mismatch_length 335545027L
#define isc_gfix_db_name 335740929L
#define isc_gfix_invalid_sw 335740930L
#define isc_gfix_incmp_sw 335740932L
@@ -2330,7 +2334,7 @@
#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 1124
+#define isc_err_max 1126
#endif
Modified: firebird/trunk/src/include/gen/msgs.h
===================================================================
--- firebird/trunk/src/include/gen/msgs.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/include/gen/msgs.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -730,6 +730,8 @@
{335545023, "Invalid usage of boolean expression"}, /* invalid_boolean_usage */
{335545024, "Arguments for @1 cannot both be zero"}, /* sysf_argscant_both_be_zero */
{335545025, "missing service ID in spb"}, /* spb_no_id */
+ {335545026, "External BLR message mismatch: invalid null descriptor at field @1"}, /* ee_blr_mismatch_null */
+ {335545027, "External BLR message mismatch: length = @1, expected @2"}, /* ee_blr_mismatch_length */
{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 */
Modified: firebird/trunk/src/include/gen/sql_code.h
===================================================================
--- firebird/trunk/src/include/gen/sql_code.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/include/gen/sql_code.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -726,6 +726,8 @@
{335545023, -104}, /* 703 invalid_boolean_usage */
{335545024, -833}, /* 704 sysf_argscant_both_be_zero */
{335545025, -901}, /* 705 spb_no_id */
+ {335545026, -901}, /* 706 ee_blr_mismatch_null */
+ {335545027, -901}, /* 707 ee_blr_mismatch_length */
{335740929, -901}, /* 1 gfix_db_name */
{335740930, -901}, /* 2 gfix_invalid_sw */
{335740932, -901}, /* 4 gfix_incmp_sw */
Modified: firebird/trunk/src/include/gen/sql_state.h
===================================================================
--- firebird/trunk/src/include/gen/sql_state.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/include/gen/sql_state.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -726,6 +726,8 @@
{335545023, "22000"}, // 703 invalid_boolean_usage
{335545024, "42000"}, // 704 sysf_argscant_both_be_zero
{335545025, "HY000"}, // 705 spb_no_id
+ {335545026, "42000"}, // 706 ee_blr_mismatch_null
+ {335545027, "42000"}, // 707 ee_blr_mismatch_length
{335740929, "00000"}, // 1 gfix_db_name
{335740930, "00000"}, // 2 gfix_invalid_sw
{335740932, "00000"}, // 4 gfix_incmp_sw
Modified: firebird/trunk/src/jrd/BlrReader.h
===================================================================
--- firebird/trunk/src/jrd/BlrReader.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/jrd/BlrReader.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -103,6 +103,40 @@
return high * 256 + low;
}
+ UCHAR checkByte(UCHAR expected)
+ {
+ using namespace Firebird;
+
+ UCHAR byte = getByte();
+
+ if (byte != expected)
+ {
+ status_exception::raise(Arg::Gds(isc_syntaxerr) <<
+ Arg::Num(expected) <<
+ Arg::Num(getOffset() - 1) <<
+ Arg::Num(byte));
+ }
+
+ return byte;
+ }
+
+ USHORT checkWord(USHORT expected)
+ {
+ using namespace Firebird;
+
+ USHORT word = getWord();
+
+ if (word != expected)
+ {
+ status_exception::raise(Arg::Gds(isc_syntaxerr) <<
+ Arg::Num(expected) <<
+ Arg::Num(getOffset() - 2) <<
+ Arg::Num(word));
+ }
+
+ return word;
+ }
+
private:
const UCHAR* start;
const UCHAR* end;
Modified: firebird/trunk/src/jrd/ExtEngineManager.cpp
===================================================================
--- firebird/trunk/src/jrd/ExtEngineManager.cpp 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/jrd/ExtEngineManager.cpp 2011-07-10 01:23:53 UTC (rev 53285)
@@ -594,7 +594,8 @@
ExtEngineManager::Function* ExtEngineManager::makeFunction(thread_db* tdbb, const Jrd::Function* udf,
- const MetaName& engine, const string& entryPoint, const string& body)
+ const MetaName& engine, const string& entryPoint, const string& body,
+ BlrMessage* inBlr, BlrMessage* outBlr)
{
string entryPointTrimmed = entryPoint;
entryPointTrimmed.trim();
@@ -640,7 +641,8 @@
{ // scope
Attachment::Checkout attCout(tdbb->getAttachment());
- externalFunction = attInfo->engine->makeFunction(RaiseError(), attInfo->context, metadata);
+ externalFunction = attInfo->engine->makeFunction(RaiseError(), attInfo->context, metadata,
+ inBlr, outBlr);
if (!externalFunction)
{
@@ -665,7 +667,8 @@
ExtEngineManager::Procedure* ExtEngineManager::makeProcedure(thread_db* tdbb, const jrd_prc* prc,
- const MetaName& engine, const string& entryPoint, const string& body)
+ const MetaName& engine, const string& entryPoint, const string& body,
+ BlrMessage* inBlr, BlrMessage* outBlr)
{
string entryPointTrimmed = entryPoint;
entryPointTrimmed.trim();
@@ -716,7 +719,8 @@
{ // scope
Attachment::Checkout attCout(tdbb->getAttachment());
- externalProcedure = attInfo->engine->makeProcedure(RaiseError(), attInfo->context, metadata);
+ externalProcedure = attInfo->engine->makeProcedure(RaiseError(), attInfo->context, metadata,
+ inBlr, outBlr);
if (!externalProcedure)
{
Modified: firebird/trunk/src/jrd/ExtEngineManager.h
===================================================================
--- firebird/trunk/src/jrd/ExtEngineManager.h 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/jrd/ExtEngineManager.h 2011-07-10 01:23:53 UTC (rev 53285)
@@ -304,10 +304,10 @@
Function* makeFunction(thread_db* tdbb, const Jrd::Function* udf,
const Firebird::MetaName& engine, const Firebird::string& entryPoint,
- const Firebird::string& body);
+ const Firebird::string& body, Firebird::BlrMessage* inBlr, Firebird::BlrMessage* outBlr);
Procedure* makeProcedure(thread_db* tdbb, const jrd_prc* prc,
const Firebird::MetaName& engine, const Firebird::string& entryPoint,
- const Firebird::string& body);
+ const Firebird::string& body, Firebird::BlrMessage* inBlr, Firebird::BlrMessage* outBlr);
Trigger* makeTrigger(thread_db* tdbb, const Jrd::Trigger* trg,
const Firebird::MetaName& engine, const Firebird::string& entryPoint,
const Firebird::string& body, Firebird::ExternalTrigger::Type type);
Modified: firebird/trunk/src/jrd/Function.epp
===================================================================
--- firebird/trunk/src/jrd/Function.epp 2011-07-09 04:17:52 UTC (rev 53284)
+++ firebird/trunk/src/jrd/Function.epp 2011-07-10 01:23:53 UTC (rev 53285)
@@ -386,16 +386,25 @@
body.getBuffer(1)[0] = 0;
}
+ BlrMessage inBlr;
+ inBlr.blr = NULL;
+ inBlr.blrLength = 0;
+ inBlr.bufferLength = 0;
+
+ BlrMessage outBlr;
+ outBlr.blr = NULL;
+ outBlr.blrLength = 0;
+ outBlr.bufferLength = 0;
+
function->fun_external =
dbb->dbb_extManager.makeFunction(tdbb, function, X.RDB$ENGINE_NAME,
- (X.RDB$ENTRYPOINT.NULL ? "" : X.RDB$ENTRYPOINT), (char*) body.begin());
+ (X.RDB$ENTRYPOINT.NULL ? "" : X.RDB$ENTRYPOINT), (char*) body.begin(),
+ &inBlr, &outBlr);
if (!function->fun_external)
- {
function->setImplemented(false);
- }
- function->makeFormat();
+ function->makeFormat(tdbb, (inBlr.blr ? &inBlr : NULL), (outBlr.blr ? &outBlr : NULL));
}
else if (!X.RDB$FUNCTION_BLR.NULL)
{
@@ -427,7 +436,7 @@
throw;
}
- function->makeFormat();
+ function->makeFormat(tdbb, NULL, NULL);
}
else if (!X.RDB$MODULE_NAME.NULL && !X.RDB$ENTRYPOINT.NULL)
{
@@ -566,6 +575,23 @@
fb_assert(fun_out_msg_format.fmt_count == 2);
fb_assert(fun_out_msg_format.fmt_length);
CMP_impure(csb, fun_out_msg_format.fmt_length);
+
+ if (fun_in_msg_format2.fmt_count)
+ {
+ fb_assert(fun_in_msg_format2.fmt_length);
+ CMP_impure(csb, fun_in_msg_format2.fmt_length);
+ }
+
+ fb_assert(fun_out_msg_format2.fmt_count == 2 ||
+ (fun_out_msg_format2.fmt_length == 0 && fun_out_msg_format2.fmt_count == 0));
+
+ if (fun_out_msg_format2.fmt_length)
+ {
+ fb_assert(fun_out_msg_format2.fmt_count == 2);
+ CMP_impure(csb, fun_out_msg_format2.fmt_length);
+ }
+ else
+ fb_assert(fun_out_msg_format2.fmt_count == 0);
}
return impure;
@@ -719,34 +745,77 @@
Jrd::Attachment* attachment = tdbb->getAttachment();
- const ULONG in_msg_length = fun_in_msg_format.fmt_length;
- const ULONG out_msg_length = fun_out_msg_format.fmt_length;
+ const ULONG inMsgLength = fun_in_msg_format.fmt_length;
+ const ULONG outMsgLength = fun_out_msg_format.fmt_length;
UCHAR* const impure = reinterpret_cast<UCHAR*>(value);
- UCHAR* const in_msg = (UCHAR*) FB_ALIGN((IPTR) impure + sizeof(impure_value), FB_ALIGNMENT);
- UCHAR* const out_msg = (UCHAR*) FB_ALIGN((IPTR) in_msg + in_msg_length, FB_ALIGNMENT);
+ UCHAR* const inMsg = (UCHAR*) FB_ALIGN((IPTR) impure + sizeof(impure_value), FB_ALIGNMENT);
+ UCHAR* const outMsg = (UCHAR*) FB_ALIGN((IPTR) inMsg + inMsgLength, FB_ALIGNMENT);
+ const ULONG inMsgLength2 = fun_in_msg_format2.fmt_length;
+ const ULONG outMsgLength2 = fun_out_msg_format2.fmt_length;
+ UCHAR* const inMsg2 = inMsgLength2 ?
+ (UCHAR*) FB_ALIGN((IPTR) outMsg + outMsgLength, FB_ALIGNMENT) : inMsg;
+ UCHAR* const outMsg2 = outMsgLength2 ?
+ (UCHAR*) FB_ALIGN((IPTR) inMsg2 + inMsgLength2, FB_ALIGNMENT) : outMsg;
+
for (USHORT i = 0; i < fun_inputs; i++)
{
- const ULONG arg_offset = (IPTR) fun_in_msg_format.fmt_desc[i * 2].dsc_address;
- const ULONG null_offset = (IPTR) fun_in_msg_format.fmt_desc[i * 2 + 1].dsc_address;
- UCHAR* const null_ptr = in_msg + null_offset;
+ const ULONG argOffset = (IPTR) fun_in_msg_format.fmt_desc[i * 2].dsc_address;
+ const ULONG nullOffset = (IPTR) fun_in_msg_format.fmt_desc[i * 2 + 1].dsc_address;
+ SSHORT* const nullPtr = reinterpret_cast<SSHORT*>(inMsg + nullOffset);
+ dsc argDesc = fun_args[i + 1].fun_parameter->prm_desc;
+ argDesc.dsc_address = inMsg + argOffset;
- dsc* const src_desc = EVL_expr(tdbb, request, args[i]);
- if (src_desc && !(request->req_flags & req_null))
+ //// TODO: Validate constraints for external.
+ dsc* const srcDesc = EVL_expr(tdbb, request, args[i]);
+ if (srcDesc && !(request->req_flags & req_null))
{
- *reinterpret_cast<SSHORT*>(null_ptr) = FALSE;
+ *nullPtr = FALSE;
+ MOV_move(tdbb, srcDesc, &argDesc);
+ }
+ else
+ *nullPtr = TRUE;
- dsc arg_desc = fun_args[i + 1].fun_parameter->prm_desc;
- arg_desc.dsc_address = in_msg + arg_offset;
- MOV_move(tdbb, src_desc, &arg_desc);
+ if (fun_external && inMsgLength2)
+ {
+ const ULONG argOffset2 = (IPTR) fun_in_msg_format2.fmt_desc[i * 2].dsc_address;
+ const ULONG nullOffset2 = (IPTR) fun_in_msg_format2.fmt_desc[i * 2 + 1].dsc_address;
+ SSHORT* const nullPtr2 = reinterpret_cast<SSHORT*>(inMsg2 + nullOffset2);
+
+ if (!(*nullPtr2 = *nullPtr))
+ {
+ dsc argDesc2 = fun_in_msg_format2.fmt_desc[i * 2];
+ argDesc2.dsc_address = inMsg2 + argOffset2;
+ MOV_move(tdbb, &argDesc, &argDesc2);
+ }
}
- else
- *reinterpret_cast<SSHORT*>(null_ptr) = TRUE;
}
+ const ULONG argOffset = (IPTR) fun_out_msg_format.fmt_desc[0].dsc_address;
+ const ULONG nullOffset = (IPTR) fun_out_msg_format.fmt_desc[1].dsc_address;
+ SSHORT* const nullPtr = reinterpret_cast<SSHORT*>(outMsg + nullOffset);
+ dsc argDesc = fun_args[fun_return_arg].fun_parameter->prm_desc;
+ argDesc.dsc_address = outMsg + argOffset;
+
if (fun_external)
- fun_external->execute(tdbb, in_msg, out_msg);
+ {
+ fun_external->execute(tdbb, inMsg2, outMsg2);
+
+ if (outMsgLength2)
+ {
+ const ULONG argOffset2 = (IPTR) fun_out_msg_format2.fmt_desc[0].dsc_address;
+ const ULONG nullOffset2 = (IPTR) fun_out_msg_format2.fmt_desc[1].dsc_address;
+ SSHORT* const nullPtr2 = reinterpret_cast<SSHORT*>(outMsg2 + nullOffset2);
+
+ if (!(*nullPtr = *nullPtr2))
+ {
+ dsc argDesc2 = fun_out_msg_format2.fmt_desc[0];
+ argDesc2.dsc_address = outMsg2 + argOffset2;
+ MOV_move(tdbb, &argDesc2, &argDesc);
+ }
+ }
+ }
else
{
jrd_req* const new_request = getStatement()->findRequest(tdbb);
@@ -764,13 +833,11 @@
EXE_start(tdbb, new_request, transaction);
- if (in_msg_length)
- {
- EXE_send(tdbb, new_request, 0, in_msg_length, in_msg);
- }
+ if (inMsgLength)
+ EXE_send(tdbb, new_request, 0, inMsgLength, inMsg);
- fb_assert(out_msg_length);
- EXE_receive(tdbb, new_request, 1, out_msg_length, out_msg);
+ fb_assert(outMsgLength);
+ EXE_receive(tdbb, new_request, 1, outMsgLength, outMsg);
// Clean up all savepoints started during execution of the function
@@ -799,18 +866,13 @@
new_request->req_flags &= ~req_in_use;
}
- const ULONG arg_offset = (IPTR) fun_out_msg_format.fmt_desc[0].dsc_address;
- const ULONG null_offset = (IPTR) fun_out_msg_format.fmt_desc[1].dsc_address;
-
- UCHAR* const null_ptr = out_msg + null_offset;
- if (*reinterpret_cast<SSHORT*>(null_ptr))
+ //// TODO: Validate constraints for external.
+ if (*nullPtr)
request->req_flags |= req_null;
else
{
- dsc arg_desc = fun_args[fun_return_arg].fun_parameter->prm_desc;
- arg_desc.dsc_address = out_msg + arg_offset;
request->req_flags &= ~req_null;
- MOV_move(tdbb, &arg_desc, &value->vlu_desc);
+ MOV_move(tdbb, &argDesc, &value->vlu_desc);
}
}
else
@@ -841,15 +903,105 @@
return ++fun_alter_count;
}
-void Function::makeFormat()
+void Function::makeFormat(thread_db* tdbb,...
[truncated message content] |
|
From: <fir...@us...> - 2011-07-10 03:22:59
|
Revision: 53286
http://firebird.svn.sourceforge.net/firebird/?rev=53286&view=rev
Author: firebirds
Date: 2011-07-10 03:22:52 +0000 (Sun, 10 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-10 01:23:53 UTC (rev 53285)
+++ firebird/trunk/ChangeLog 2011-07-10 03:22:52 UTC (rev 53286)
@@ -1,3 +1,33 @@
+ 2011-07-10 01:23 asfernandes
+ M examples/udr/UdrCppExample.cpp
+ M lang_helpers/gds_codes.ftn
+ M lang_helpers/gds_codes.pas
+ M src/dsql/DdlNodes.epp
+ M src/include/firebird/ExternalEngine.h
+ M src/include/firebird/Message.h
+ M src/include/firebird/UdrCppEngine.h
+ M src/include/firebird/UdrEngine.h
+ M src/include/gen/codetext.h
+ M src/include/gen/iberror.h
+ M src/include/gen/msgs.h
+ M src/include/gen/sql_code.h
+ M src/include/gen/sql_state.h
+ M src/jrd/BlrReader.h
+ M src/jrd/ExtEngineManager.cpp
+ M src/jrd/ExtEngineManager.h
+ M src/jrd/Function.epp
+ M src/jrd/Function.h
+ M src/jrd/exe.cpp
+ M src/jrd/exe.h
+ M src/jrd/met.epp
+ M src/jrd/par.cpp
+ M src/jrd/par_proto.h
+ M src/msgs/facilities2.sql
+ M src/msgs/messages2.sql
+ M src/msgs/system_errors2.sql
+ M src/plugins/udr_engine/UdrEngine.cpp
+Use the BLR message definition of external procedures and functions.
+
2011-07-07 07:58 robocop
M src/common/StatusHolder.cpp
M src/common/StatusHolder.h
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-10 01:23:53 UTC (rev 53285)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-10 03:22:52 UTC (rev 53286)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29484
+ FORMAL BUILD NUMBER:29485
*/
-#define PRODUCT_VER_STRING "3.0.0.29484"
-#define FILE_VER_STRING "WI-T3.0.0.29484"
-#define LICENSE_VER_STRING "WI-T3.0.0.29484"
-#define FILE_VER_NUMBER 3, 0, 0, 29484
+#define PRODUCT_VER_STRING "3.0.0.29485"
+#define FILE_VER_STRING "WI-T3.0.0.29485"
+#define LICENSE_VER_STRING "WI-T3.0.0.29485"
+#define FILE_VER_NUMBER 3, 0, 0, 29485
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29484"
+#define FB_BUILD_NO "29485"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-10 01:23:53 UTC (rev 53285)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-10 03:22:52 UTC (rev 53286)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29484
+BuildNum=29485
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-13 03:17:13
|
Revision: 53290
http://firebird.svn.sourceforge.net/firebird/?rev=53290&view=rev
Author: firebirds
Date: 2011-07-13 03:17:02 +0000 (Wed, 13 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-13 02:10:28 UTC (rev 53289)
+++ firebird/trunk/ChangeLog 2011-07-13 03:17:02 UTC (rev 53290)
@@ -1,3 +1,21 @@
+ 2011-07-13 02:10 asfernandes
+ M src/include/firebird/ExternalEngine.h
+ M src/jrd/ExtEngineManager.cpp
+ M src/plugins/udr_engine/UdrEngine.cpp
+Remove the old getVersion method from external engines.
+
+ 2011-07-12 16:07 asfernandes
+ M src/dsql/sqlda_pub.h
+ M src/include/fb_types.h
+ M src/include/firebird/ExternalEngine.h
+ M src/include/firebird/Interface.h
+ M src/include/firebird/Message.h
+ M src/include/firebird/Provider.h
+ M src/include/ibase.h
+ M src/include/types_pub.h
+ M src/yvalve/why.cpp
+Fixed problems in public headers.
+
2011-07-10 01:23 asfernandes
M examples/udr/UdrCppExample.cpp
M lang_helpers/gds_codes.ftn
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-13 02:10:28 UTC (rev 53289)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-13 03:17:02 UTC (rev 53290)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29485
+ FORMAL BUILD NUMBER:29487
*/
-#define PRODUCT_VER_STRING "3.0.0.29485"
-#define FILE_VER_STRING "WI-T3.0.0.29485"
-#define LICENSE_VER_STRING "WI-T3.0.0.29485"
-#define FILE_VER_NUMBER 3, 0, 0, 29485
+#define PRODUCT_VER_STRING "3.0.0.29487"
+#define FILE_VER_STRING "WI-T3.0.0.29487"
+#define LICENSE_VER_STRING "WI-T3.0.0.29487"
+#define FILE_VER_NUMBER 3, 0, 0, 29487
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29485"
+#define FB_BUILD_NO "29487"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-13 02:10:28 UTC (rev 53289)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-13 03:17:02 UTC (rev 53290)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29485
+BuildNum=29487
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-14 03:17:11
|
Revision: 53296
http://firebird.svn.sourceforge.net/firebird/?rev=53296&view=rev
Author: firebirds
Date: 2011-07-14 03:16:59 +0000 (Thu, 14 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-13 15:15:34 UTC (rev 53295)
+++ firebird/trunk/ChangeLog 2011-07-14 03:16:59 UTC (rev 53296)
@@ -1,3 +1,13 @@
+ 2011-07-13 15:15 dimitr
+ M src/jrd/btr.cpp
+ M src/jrd/sort.cpp
+ M src/jrd/sort.h
+Front ported CORE-3547: Floating-point negative zero doesn't match positive zero in the index.
+
+ 2011-07-13 14:50 dimitr
+ M src/dsql/ExprNodes.cpp
+Poor man's attempt to fix the expression indices. In the old code, we didn't require node1->stream and node2->stream to be the same, we just needed node2->stream to be the one we considered for index matching. Different contexts don't necessarily mean different nodes, the relation could still be the same.
+
2011-07-13 02:10 asfernandes
M src/include/firebird/ExternalEngine.h
M src/jrd/ExtEngineManager.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-13 15:15:34 UTC (rev 53295)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-14 03:16:59 UTC (rev 53296)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29487
+ FORMAL BUILD NUMBER:29489
*/
-#define PRODUCT_VER_STRING "3.0.0.29487"
-#define FILE_VER_STRING "WI-T3.0.0.29487"
-#define LICENSE_VER_STRING "WI-T3.0.0.29487"
-#define FILE_VER_NUMBER 3, 0, 0, 29487
+#define PRODUCT_VER_STRING "3.0.0.29489"
+#define FILE_VER_STRING "WI-T3.0.0.29489"
+#define LICENSE_VER_STRING "WI-T3.0.0.29489"
+#define FILE_VER_NUMBER 3, 0, 0, 29489
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29487"
+#define FB_BUILD_NO "29489"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-13 15:15:34 UTC (rev 53295)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-14 03:16:59 UTC (rev 53296)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29487
+BuildNum=29489
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-15 03:24:20
|
Revision: 53305
http://firebird.svn.sourceforge.net/firebird/?rev=53305&view=rev
Author: firebirds
Date: 2011-07-15 03:24:13 +0000 (Fri, 15 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-14 15:56:40 UTC (rev 53304)
+++ firebird/trunk/ChangeLog 2011-07-15 03:24:13 UTC (rev 53305)
@@ -1,3 +1,35 @@
+ 2011-07-14 15:56 asfernandes
+ M src/common/config/config_file.cpp
+ M src/include/gen/ids.h
+Correction and improvement to the config system.
+
+ 2011-07-14 15:34 dimitr
+ M src/include/gen/ids.h
+ M src/jrd/names.h
+ M src/jrd/relations.h
+Removed the accidentally committed lines.
+
+ 2011-07-14 15:27 dimitr
+ M src/burp/backup.epp
+ M src/burp/burp.h
+ M src/burp/restore.epp
+ M src/dsql/DdlNodes.epp
+ M src/dsql/DdlNodes.h
+ M src/dsql/Nodes.h
+ M src/include/gen/ids.h
+ M src/jrd/names.h
+ M src/jrd/relations.h
+Added the missing RDB$SYSTEM_FLAG and RDB$DESCRIPTION columns into RDB$FUNCTION_ARGUMENTS.
+
+ 2011-07-14 12:31 dimitr
+ M src/jrd/btr.cpp
+Fixed CORE-2709: Many indexed reads in a compound index with NULLs. Note that it's an ODS change, so nullable compound indices may require recreation.
+
+ 2011-07-14 11:54 dimitr
+ M src/dsql/ExprNodes.cpp
+ M src/jrd/Optimizer.cpp
+Methinks this is a more correct logic than the one committed yesterday. Also, fixed the stream comparison for views.
+
2011-07-13 15:15 dimitr
M src/jrd/btr.cpp
M src/jrd/sort.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-14 15:56:40 UTC (rev 53304)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-15 03:24:13 UTC (rev 53305)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29489
+ FORMAL BUILD NUMBER:29494
*/
-#define PRODUCT_VER_STRING "3.0.0.29489"
-#define FILE_VER_STRING "WI-T3.0.0.29489"
-#define LICENSE_VER_STRING "WI-T3.0.0.29489"
-#define FILE_VER_NUMBER 3, 0, 0, 29489
+#define PRODUCT_VER_STRING "3.0.0.29494"
+#define FILE_VER_STRING "WI-T3.0.0.29494"
+#define LICENSE_VER_STRING "WI-T3.0.0.29494"
+#define FILE_VER_NUMBER 3, 0, 0, 29494
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29489"
+#define FB_BUILD_NO "29494"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-14 15:56:40 UTC (rev 53304)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-15 03:24:13 UTC (rev 53305)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29489
+BuildNum=29494
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <di...@us...> - 2011-07-15 08:54:07
|
Revision: 53307
http://firebird.svn.sourceforge.net/firebird/?rev=53307&view=rev
Author: dimitr
Date: 2011-07-15 08:54:00 +0000 (Fri, 15 Jul 2011)
Log Message:
-----------
Implemented COMMENT for function arguments.
Modified Paths:
--------------
firebird/trunk/lang_helpers/gds_codes.ftn
firebird/trunk/lang_helpers/gds_codes.pas
firebird/trunk/src/dsql/DdlNodes.epp
firebird/trunk/src/dsql/dsql.h
firebird/trunk/src/dsql/parse.y
firebird/trunk/src/include/gen/codetext.h
firebird/trunk/src/include/gen/iberror.h
firebird/trunk/src/include/gen/msgs.h
firebird/trunk/src/include/gen/sql_code.h
firebird/trunk/src/include/gen/sql_state.h
firebird/trunk/src/msgs/facilities2.sql
firebird/trunk/src/msgs/messages2.sql
firebird/trunk/src/msgs/system_errors2.sql
Modified: firebird/trunk/lang_helpers/gds_codes.ftn
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.ftn 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/lang_helpers/gds_codes.ftn 2011-07-15 08:54:00 UTC (rev 53307)
@@ -1710,6 +1710,12 @@
PARAMETER (GDS__dyn_invalid_ddl_func = 336068878)
INTEGER*4 GDS__dyn_newfc_oldsyntax
PARAMETER (GDS__dyn_newfc_oldsyntax = 336068879)
+ INTEGER*4 GDS__dyn_func_param_not_found
+ PARAMETER (GDS__dyn_func_param_not_found = 336068886)
+ INTEGER*4 GDS__dyn_routine_param_not_found
+ PARAMETER (GDS__dyn_routine_param_not_found = 336068887)
+ INTEGER*4 GDS__dyn_routine_param_ambiguous
+ PARAMETER (GDS__dyn_routine_param_ambiguous = 336068888)
INTEGER*4 GDS__gbak_unknown_switch
PARAMETER (GDS__gbak_unknown_switch = 336330753)
INTEGER*4 GDS__gbak_page_size_missing
Modified: firebird/trunk/lang_helpers/gds_codes.pas
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.pas 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/lang_helpers/gds_codes.pas 2011-07-15 08:54:00 UTC (rev 53307)
@@ -862,6 +862,9 @@
gds_dyn_package_body_exists = 336068877;
gds_dyn_invalid_ddl_func = 336068878;
gds_dyn_newfc_oldsyntax = 336068879;
+ gds_dyn_func_param_not_found = 336068886;
+ gds_dyn_routine_param_not_found = 336068887;
+ gds_dyn_routine_param_ambiguous = 336068888;
gds_gbak_unknown_switch = 336330753;
gds_gbak_page_size_missing = 336330754;
gds_gbak_page_size_toobig = 336330755;
Modified: firebird/trunk/src/dsql/DdlNodes.epp
===================================================================
--- firebird/trunk/src/dsql/DdlNodes.epp 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/dsql/DdlNodes.epp 2011-07-15 08:54:00 UTC (rev 53307)
@@ -38,6 +38,7 @@
#include "../common/os/path_utils.h"
#include "../jrd/IntlManager.h"
#include "../jrd/PreparedStatement.h"
+#include "../jrd/ResultSet.h"
#include "../jrd/blb_proto.h"
#include "../jrd/cmp_proto.h"
#include "../common/dsc_proto.h"
@@ -881,6 +882,54 @@
const char* addWhereClause = NULL;
Arg::StatusVector status;
+ if (objType == ddl_unknown)
+ {
+ fb_assert(subName.hasData());
+
+ PreparedStatement::Builder sql;
+ sql << "select 1 from rdb$procedures p join rdb$procedure_parameters pp using (rdb$procedure_name)" <<
+ "where p.rdb$procedure_name =" << objName <<
+ "and pp.rdb$parameter_name =" << subName <<
+ "union all" <<
+ "select 2 from rdb$functions f join rdb$function_arguments fa using (rdb$function_name)" <<
+ "where f.rdb$function_name =" << objName <<
+ "and fa.rdb$argument_name =" << subName;
+
+ AutoPreparedStatement ps(attachment->prepareStatement(tdbb, transaction, sql));
+ AutoResultSet rs(ps->executeQuery(tdbb, transaction));
+
+ if (!rs->fetch(tdbb))
+ {
+ status_exception::raise(Arg::Gds(isc_dyn_routine_param_not_found) <<
+ Arg::Str(subName) << Arg::Str(objName));
+ }
+
+ fb_assert(!rs->isNull(1));
+ dsc& desc = rs->getDesc(1);
+ fb_assert(desc.dsc_dtype == dtype_long);
+ const SLONG result = *reinterpret_cast<SLONG*>(desc.dsc_address);
+
+ switch (result)
+ {
+ case 1:
+ objType = ddl_procedure;
+ break;
+
+ case 2:
+ objType = ddl_udf;
+ break;
+
+ default:
+ fb_assert(false);
+ }
+
+ if (rs->fetch(tdbb))
+ {
+ status_exception::raise(Arg::Gds(isc_dyn_routine_param_ambiguous) <<
+ Arg::Str(subName) << Arg::Str(objName));
+ }
+ }
+
switch (objType)
{
case ddl_database:
@@ -942,10 +991,21 @@
break;
case ddl_udf:
- tableClause = "rdb$functions";
+ if (subName.hasData())
+ {
+ tableClause = "rdb$function_arguments";
+ subColumnClause = "rdb$argument_name";
+ status << Arg::Gds(isc_dyn_func_param_not_found) <<
+ Arg::Str(subName) << Arg::Str(objName);
+ }
+ else
+ {
+ tableClause = "rdb$functions";
+ status << Arg::Gds(isc_dyn_func_not_found) << Arg::Str(objName);
+ }
+
+ addWhereClause = "rdb$package_name is null";
columnClause = "rdb$function_name";
- addWhereClause = "rdb$package_name is null";
- status << Arg::Gds(isc_dyn_func_not_found) << Arg::Str(objName);
break;
case ddl_blob_filter:
Modified: firebird/trunk/src/dsql/dsql.h
===================================================================
--- firebird/trunk/src/dsql/dsql.h 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/dsql/dsql.h 2011-07-15 08:54:00 UTC (rev 53307)
@@ -787,6 +787,7 @@
// CVC: Enumeration used for the COMMENT command.
enum
{
+ ddl_unknown,
ddl_database, ddl_domain, ddl_relation, ddl_view, ddl_procedure, ddl_trigger,
ddl_udf, ddl_blob_filter, ddl_exception, ddl_generator, ddl_index, ddl_role,
ddl_charset, ddl_collation, ddl_package, ddl_schema,
Modified: firebird/trunk/src/dsql/parse.y
===================================================================
--- firebird/trunk/src/dsql/parse.y 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/dsql/parse.y 2011-07-15 08:54:00 UTC (rev 53307)
@@ -867,7 +867,7 @@
// New nodes
-%type <intVal> ddl_type0 ddl_type1 ddl_type2
+%type <intVal> ddl_type0 ddl_type1 ddl_type2 ddl_param_opt
%type <boolVal> release_only_opt
@@ -4220,9 +4220,15 @@
ddl_type2
: COLUMN { $$ = ddl_relation; }
- | PARAMETER { $$ = ddl_procedure; }
+ | ddl_param_opt PARAMETER { $$ = $1; }
;
+ddl_param_opt
+ : { $$ = ddl_unknown; }
+ | PROCEDURE { $$ = ddl_procedure; }
+ | FUNCTION { $$ = ddl_udf; }
+ ;
+
ddl_subname
: '.' symbol_ddl_name { $$ = $2; }
;
Modified: firebird/trunk/src/include/gen/codetext.h
===================================================================
--- firebird/trunk/src/include/gen/codetext.h 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/include/gen/codetext.h 2011-07-15 08:54:00 UTC (rev 53307)
@@ -851,6 +851,9 @@
{"dyn_package_body_exists", 336068877},
{"dyn_invalid_ddl_func", 336068878},
{"dyn_newfc_oldsyntax", 336068879},
+ {"dyn_func_param_not_found", 336068886},
+ {"dyn_routine_param_not_found", 336068887},
+ {"dyn_routine_param_ambiguous", 336068888},
{"gbak_unknown_switch", 336330753},
{"gbak_page_size_missing", 336330754},
{"gbak_page_size_toobig", 336330755},
Modified: firebird/trunk/src/include/gen/iberror.h
===================================================================
--- firebird/trunk/src/include/gen/iberror.h 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/include/gen/iberror.h 2011-07-15 08:54:00 UTC (rev 53307)
@@ -885,6 +885,9 @@
const ISC_STATUS isc_dyn_package_body_exists = 336068877L;
const ISC_STATUS isc_dyn_invalid_ddl_func = 336068878L;
const ISC_STATUS isc_dyn_newfc_oldsyntax = 336068879L;
+const ISC_STATUS isc_dyn_func_param_not_found = 336068886L;
+const ISC_STATUS isc_dyn_routine_param_not_found = 336068887L;
+const ISC_STATUS isc_dyn_routine_param_ambiguous = 336068888L;
const ISC_STATUS isc_gbak_unknown_switch = 336330753L;
const ISC_STATUS isc_gbak_page_size_missing = 336330754L;
const ISC_STATUS isc_gbak_page_size_toobig = 336330755L;
@@ -1182,7 +1185,7 @@
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 = 1126;
+const ISC_STATUS isc_err_max = 1129;
#else /* c definitions */
@@ -2037,6 +2040,9 @@
#define isc_dyn_package_body_exists 336068877L
#define isc_dyn_invalid_ddl_func 336068878L
#define isc_dyn_newfc_oldsyntax 336068879L
+#define isc_dyn_func_param_not_found 336068886L
+#define isc_dyn_routine_param_not_found 336068887L
+#define isc_dyn_routine_param_ambiguous 336068888L
#define isc_gbak_unknown_switch 336330753L
#define isc_gbak_page_size_missing 336330754L
#define isc_gbak_page_size_toobig 336330755L
@@ -2334,7 +2340,7 @@
#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 1126
+#define isc_err_max 1129
#endif
Modified: firebird/trunk/src/include/gen/msgs.h
===================================================================
--- firebird/trunk/src/include/gen/msgs.h 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/include/gen/msgs.h 2011-07-15 08:54:00 UTC (rev 53307)
@@ -854,6 +854,9 @@
{336068877, "Package body @1 already exists"}, /* dyn_package_body_exists */
{336068878, "Invalid DDL statement for function @1"}, /* dyn_invalid_ddl_func */
{336068879, "Cannot alter new style function @1 with ALTER EXTERNAL FUNCTION. Use ALTER FUNCTION instead."}, /* dyn_newfc_oldsyntax */
+ {336068886, "Parameter @1 in function @2 is not found"}, /* dyn_func_param_not_found */
+ {336068887, "Parameter @1 of routine @2 is not found"}, /* dyn_routine_param_not_found */
+ {336068888, "Parameter @1 of routine @2 is ambiguous (found in both procedures and functions). Use a specifier keyword."}, /* dyn_routine_param_ambiguous */
{336330753, "found unknown switch"}, /* gbak_unknown_switch */
{336330754, "page size parameter missing"}, /* gbak_page_size_missing */
{336330755, "Page size specified (@1) greater than limit (16384 bytes)"}, /* gbak_page_size_toobig */
Modified: firebird/trunk/src/include/gen/sql_code.h
===================================================================
--- firebird/trunk/src/include/gen/sql_code.h 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/include/gen/sql_code.h 2011-07-15 08:54:00 UTC (rev 53307)
@@ -850,6 +850,9 @@
{336068877, -901}, /* 269 dyn_package_body_exists */
{336068878, -607}, /* 270 dyn_invalid_ddl_func */
{336068879, -901}, /* 271 dyn_newfc_oldsyntax */
+ {336068886, -901}, /* 278 dyn_func_param_not_found */
+ {336068887, -901}, /* 279 dyn_routine_param_not_found */
+ {336068888, -901}, /* 280 dyn_routine_param_ambiguous */
{336330753, -901}, /* 1 gbak_unknown_switch */
{336330754, -901}, /* 2 gbak_page_size_missing */
{336330755, -901}, /* 3 gbak_page_size_toobig */
Modified: firebird/trunk/src/include/gen/sql_state.h
===================================================================
--- firebird/trunk/src/include/gen/sql_state.h 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/include/gen/sql_state.h 2011-07-15 08:54:00 UTC (rev 53307)
@@ -850,6 +850,9 @@
{336068877, "42000"}, // 269 dyn_package_body_exists
{336068878, "HY000"}, // 270 dyn_invalid_ddl_func
{336068879, "42000"}, // 271 dyn_newfc_oldsyntax
+ {336068886, "42000"}, // 278 dyn_func_param_not_found
+ {336068887, "42000"}, // 279 dyn_routine_param_not_found
+ {336068888, "42000"}, // 280 dyn_routine_param_ambiguous
{336330753, "00000"}, // 1 gbak_unknown_switch
{336330754, "00000"}, // 2 gbak_page_size_missing
{336330755, "00000"}, // 3 gbak_page_size_toobig
Modified: firebird/trunk/src/msgs/facilities2.sql
===================================================================
--- firebird/trunk/src/msgs/facilities2.sql 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/msgs/facilities2.sql 2011-07-15 08:54:00 UTC (rev 53307)
@@ -13,7 +13,7 @@
--('1996-11-07 13:39:40', 'GRST', 6, 1)
--
('2005-11-05 13:09:00', 'DSQL', 7, 32)
-('2010-06-26 01:52:06', 'DYN', 8, 278)
+('2011-07-15 12:08:00', 'DYN', 8, 281)
--
--('1996-11-07 13:39:40', 'FRED', 9, 1)
--
Modified: firebird/trunk/src/msgs/messages2.sql
===================================================================
--- firebird/trunk/src/msgs/messages2.sql 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/msgs/messages2.sql 2011-07-15 08:54:00 UTC (rev 53307)
@@ -1851,6 +1851,9 @@
(NULL, 'DYN_modify_sql_field', 'dyn_mod.epp', NULL, 8, 275, NULL, 'Identity column @1 of table @2 cannot have default value', NULL, NULL);
(NULL, 'DYN_modify_global_field', 'dyn_mod.epp', NULL, 8, 276, NULL, 'Domain @1 must be of exact number type with zero scale because it''s used in an identity column', NULL, NULL);
(NULL, 'DYN_UTIL_generate_generator_name', 'dyn_util.epp', NULL, 8, 277, NULL, 'Generation of generator name failed', NULL, NULL);
+('dyn_func_param_not_found', 'OnCommentNode::execute', 'DdlNodes.epp', NULL, 8, 278, NULL, 'Parameter @1 in function @2 not found', NULL, NULL);
+('dyn_routine_param_not_found', 'OnCommentNode::execute', 'DdlNodes.epp', NULL, 8, 279, NULL, 'Parameter @1 of routine @2 not found', NULL, NULL);
+('dyn_routine_param_ambiguous', 'OnCommentNode::execute', 'DdlNodes.epp', NULL, 8, 280, NULL, 'Parameter @1 of routine @2 is ambiguous (found in both procedures and functions). Use a specifier keyword.', NULL, NULL);
COMMIT WORK;
-- TEST
(NULL, 'main', 'test.c', NULL, 11, 0, NULL, 'This is a modified text message', NULL, NULL);
Modified: firebird/trunk/src/msgs/system_errors2.sql
===================================================================
--- firebird/trunk/src/msgs/system_errors2.sql 2011-07-15 03:50:12 UTC (rev 53306)
+++ firebird/trunk/src/msgs/system_errors2.sql 2011-07-15 08:54:00 UTC (rev 53307)
@@ -838,6 +838,9 @@
(-901, '42', '000', 8, 269, 'dyn_package_body_exists', NULL, NULL)
(-607, 'HY', '000', 8, 270, 'dyn_invalid_ddl_func' NULL, NULL)
(-901, '42', '000', 8, 271, 'dyn_newfc_oldsyntax', NULL, NULL)
+(-901, '42', '000', 8, 278, 'dyn_func_param_not_found', NULL, NULL)
+(-901, '42', '000', 8, 279, 'dyn_routine_param_not_found', NULL, NULL)
+(-901, '42', '000', 8, 280, 'dyn_routine_param_ambiguous', NULL, NULL)
-- GBAK
(-901, '00', '000', 12, 1, 'gbak_unknown_switch', NULL, NULL)
(-901, '00', '000', 12, 2, 'gbak_page_size_missing', NULL, NULL)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <di...@us...> - 2011-07-15 11:52:23
|
Revision: 53313
http://firebird.svn.sourceforge.net/firebird/?rev=53313&view=rev
Author: dimitr
Date: 2011-07-15 11:52:16 +0000 (Fri, 15 Jul 2011)
Log Message:
-----------
Completed some missing parts of the PSQL functions implementation. Adriano, please review.
Modified Paths:
--------------
firebird/trunk/lang_helpers/gds_codes.ftn
firebird/trunk/lang_helpers/gds_codes.pas
firebird/trunk/src/dsql/DdlNodes.epp
firebird/trunk/src/dsql/PackageNodes.epp
firebird/trunk/src/include/gen/codetext.h
firebird/trunk/src/include/gen/iberror.h
firebird/trunk/src/include/gen/msgs.h
firebird/trunk/src/include/gen/sql_code.h
firebird/trunk/src/include/gen/sql_state.h
firebird/trunk/src/jrd/drq.h
firebird/trunk/src/msgs/facilities2.sql
firebird/trunk/src/msgs/messages2.sql
firebird/trunk/src/msgs/system_errors2.sql
Modified: firebird/trunk/lang_helpers/gds_codes.ftn
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.ftn 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/lang_helpers/gds_codes.ftn 2011-07-15 11:52:16 UTC (rev 53313)
@@ -1716,6 +1716,10 @@
PARAMETER (GDS__dyn_routine_param_not_found = 336068887)
INTEGER*4 GDS__dyn_routine_param_ambiguous
PARAMETER (GDS__dyn_routine_param_ambiguous = 336068888)
+ INTEGER*4 GDS__dyn_coll_used_function
+ PARAMETER (GDS__dyn_coll_used_function = 336068889)
+ INTEGER*4 GDS__dyn_domain_used_function
+ PARAMETER (GDS__dyn_domain_used_function = 336068890)
INTEGER*4 GDS__gbak_unknown_switch
PARAMETER (GDS__gbak_unknown_switch = 336330753)
INTEGER*4 GDS__gbak_page_size_missing
Modified: firebird/trunk/lang_helpers/gds_codes.pas
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.pas 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/lang_helpers/gds_codes.pas 2011-07-15 11:52:16 UTC (rev 53313)
@@ -865,6 +865,8 @@
gds_dyn_func_param_not_found = 336068886;
gds_dyn_routine_param_not_found = 336068887;
gds_dyn_routine_param_ambiguous = 336068888;
+ gds_dyn_coll_used_function = 336068889;
+ gds_dyn_domain_used_function = 336068890;
gds_gbak_unknown_switch = 336330753;
gds_gbak_page_size_missing = 336330754;
gds_gbak_page_size_toobig = 336330755;
Modified: firebird/trunk/src/dsql/DdlNodes.epp
===================================================================
--- firebird/trunk/src/dsql/DdlNodes.epp 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/dsql/DdlNodes.epp 2011-07-15 11:52:16 UTC (rev 53313)
@@ -3433,6 +3433,25 @@
}
END_FOR
+ request2.reset(tdbb, drq_l_arg_coll, DYN_REQUESTS);
+
+ FOR (REQUEST_HANDLE request2 TRANSACTION_HANDLE transaction)
+ ARG IN RDB$FUNCTION_ARGUMENTS CROSS F IN RDB$FIELDS
+ WITH ARG.RDB$FIELD_SOURCE EQ F.RDB$FIELD_NAME AND
+ F.RDB$CHARACTER_SET_ID EQ COLL.RDB$CHARACTER_SET_ID AND
+ ARG.RDB$COLLATION_ID EQ COLL.RDB$COLLATION_ID
+ {
+ fb_utils::exact_name_limit(ARG.RDB$ARGUMENT_NAME, sizeof(ARG.RDB$ARGUMENT_NAME));
+
+ status_exception::raise(
+ Arg::Gds(isc_dyn_coll_used_function) <<
+ COLL.RDB$COLLATION_NAME <<
+ QualifiedName(ARG.RDB$FUNCTION_NAME,
+ (ARG.RDB$PACKAGE_NAME.NULL ? NULL : ARG.RDB$PACKAGE_NAME)).toString().c_str() <<
+ ARG.RDB$ARGUMENT_NAME);
+ }
+ END_FOR
+
request2.reset(tdbb, drq_l_fld_coll, DYN_REQUESTS);
FOR (REQUEST_HANDLE request2 TRANSACTION_HANDLE transaction)
@@ -4408,7 +4427,24 @@
}
END_FOR
- //// FIXME: Check domain usage in functions.
+ request.reset(tdbb, drq_l_arg_src, DYN_REQUESTS);
+
+ FOR(REQUEST_HANDLE request TRANSACTION_HANDLE transaction)
+ X IN RDB$FUNCTION_ARGUMENTS
+ WITH X.RDB$FIELD_SOURCE EQ name.c_str()
+ {
+ fb_utils::exact_name_limit(X.RDB$FIELD_SOURCE, sizeof(X.RDB$FIELD_SOURCE));
+ fb_utils::exact_name_limit(X.RDB$FUNCTION_NAME, sizeof(X.RDB$FUNCTION_NAME));
+ fb_utils::exact_name_limit(X.RDB$ARGUMENT_NAME, sizeof(X.RDB$ARGUMENT_NAME));
+
+ // msg 239: "Domain %s is used in function %s (parameter name %s) and cannot be dropped"
+ status_exception::raise(
+ Arg::Gds(isc_dyn_domain_used_function) << X.RDB$FIELD_SOURCE <<
+ QualifiedName(X.RDB$FUNCTION_NAME,
+ (X.RDB$PACKAGE_NAME.NULL ? NULL : X.RDB$PACKAGE_NAME)).toString().c_str() <<
+ X.RDB$ARGUMENT_NAME);
+ }
+ END_FOR
}
@@ -6970,7 +7006,19 @@
}
END_FOR
- //// FIXME: Check usage in functions.
+ request2.reset();
+
+ FOR(REQUEST_HANDLE request2 TRANSACTION_HANDLE transaction)
+ ARG IN RDB$FUNCTION_ARGUMENTS
+ WITH ARG.RDB$RELATION_NAME = name.c_str() AND
+ ARG.RDB$FIELD_NAME = field->fld_name.c_str()
+ {
+ MODIFY ARG USING
+ strcpy(ARG.RDB$FIELD_SOURCE, RFR.RDB$FIELD_SOURCE);
+ END_MODIFY
+ }
+ END_FOR
+
}
END_FOR
@@ -7013,8 +7061,10 @@
FLD.RDB$FIELD_NAME STARTING WITH IMPLICIT_DOMAIN_PREFIX AND
(NOT ANY RFR IN RDB$RELATION_FIELDS WITH
RFR.RDB$FIELD_SOURCE EQ FLD.RDB$FIELD_NAME) AND
- (NOT ANY PRC IN RDB$PROCEDURE_PARAMETERS WITH
- PRC.RDB$FIELD_SOURCE EQ FLD.RDB$FIELD_NAME)
+ (NOT ANY PRM IN RDB$PROCEDURE_PARAMETERS WITH
+ PRM.RDB$FIELD_SOURCE EQ FLD.RDB$FIELD_NAME) AND
+ (NOT ANY ARG IN RDB$FUNCTION_ARGUMENTS WITH
+ ARG.RDB$FIELD_SOURCE EQ FLD.RDB$FIELD_NAME)
{
DropDomainNode::deleteDimensionRecords(tdbb, transaction, globalName);
ERASE FLD;
Modified: firebird/trunk/src/dsql/PackageNodes.epp
===================================================================
--- firebird/trunk/src/dsql/PackageNodes.epp 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/dsql/PackageNodes.epp 2011-07-15 11:52:16 UTC (rev 53313)
@@ -960,7 +960,7 @@
}
}
- // Lets recreate default of public procedure parameters
+ // Lets recreate default of public procedure/function parameters
requestHandle.reset(tdbb, drq_m_pkg_prm_defs, DYN_REQUESTS);
@@ -993,6 +993,36 @@
}
END_FOR
+ requestHandle.reset(tdbb, drq_m_pkg_arg_defs, DYN_REQUESTS);
+
+ FOR (REQUEST_HANDLE requestHandle TRANSACTION_HANDLE transaction)
+ ARG IN RDB$FUNCTION_ARGUMENTS
+ WITH ARG.RDB$PACKAGE_NAME EQ name.c_str()
+ {
+ size_t pos;
+ if (existingFuncs.find(Signature(getPool(), MetaName(ARG.RDB$FUNCTION_NAME)), pos))
+ {
+ const Signature& func = existingFuncs[pos];
+
+ ParameterInfo paramKey(getPool());
+ paramKey.number = ARG.RDB$ARGUMENT_POSITION;
+
+ if (func.parameters.find(paramKey, pos))
+ {
+ const ParameterInfo& param = func.parameters[pos];
+
+ MODIFY ARG
+ ARG.RDB$DEFAULT_SOURCE = param.defaultSource;
+ ARG.RDB$DEFAULT_SOURCE.NULL = param.defaultSource.isEmpty();
+
+ ARG.RDB$DEFAULT_VALUE = param.defaultValue;
+ ARG.RDB$DEFAULT_VALUE.NULL = param.defaultValue.isEmpty();
+ END_MODIFY
+ }
+ }
+ }
+ END_FOR
+
executeDdlTrigger(tdbb, dsqlScratch, transaction, DTW_AFTER,
DDL_TRIGGER_CREATE_PACKAGE_BODY, name);
Modified: firebird/trunk/src/include/gen/codetext.h
===================================================================
--- firebird/trunk/src/include/gen/codetext.h 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/include/gen/codetext.h 2011-07-15 11:52:16 UTC (rev 53313)
@@ -854,6 +854,8 @@
{"dyn_func_param_not_found", 336068886},
{"dyn_routine_param_not_found", 336068887},
{"dyn_routine_param_ambiguous", 336068888},
+ {"dyn_coll_used_function", 336068889},
+ {"dyn_domain_used_function", 336068890},
{"gbak_unknown_switch", 336330753},
{"gbak_page_size_missing", 336330754},
{"gbak_page_size_toobig", 336330755},
Modified: firebird/trunk/src/include/gen/iberror.h
===================================================================
--- firebird/trunk/src/include/gen/iberror.h 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/include/gen/iberror.h 2011-07-15 11:52:16 UTC (rev 53313)
@@ -888,6 +888,8 @@
const ISC_STATUS isc_dyn_func_param_not_found = 336068886L;
const ISC_STATUS isc_dyn_routine_param_not_found = 336068887L;
const ISC_STATUS isc_dyn_routine_param_ambiguous = 336068888L;
+const ISC_STATUS isc_dyn_coll_used_function = 336068889L;
+const ISC_STATUS isc_dyn_domain_used_function = 336068890L;
const ISC_STATUS isc_gbak_unknown_switch = 336330753L;
const ISC_STATUS isc_gbak_page_size_missing = 336330754L;
const ISC_STATUS isc_gbak_page_size_toobig = 336330755L;
@@ -1185,7 +1187,7 @@
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 = 1129;
+const ISC_STATUS isc_err_max = 1131;
#else /* c definitions */
@@ -2043,6 +2045,8 @@
#define isc_dyn_func_param_not_found 336068886L
#define isc_dyn_routine_param_not_found 336068887L
#define isc_dyn_routine_param_ambiguous 336068888L
+#define isc_dyn_coll_used_function 336068889L
+#define isc_dyn_domain_used_function 336068890L
#define isc_gbak_unknown_switch 336330753L
#define isc_gbak_page_size_missing 336330754L
#define isc_gbak_page_size_toobig 336330755L
@@ -2340,7 +2344,7 @@
#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 1129
+#define isc_err_max 1131
#endif
Modified: firebird/trunk/src/include/gen/msgs.h
===================================================================
--- firebird/trunk/src/include/gen/msgs.h 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/include/gen/msgs.h 2011-07-15 11:52:16 UTC (rev 53313)
@@ -854,9 +854,11 @@
{336068877, "Package body @1 already exists"}, /* dyn_package_body_exists */
{336068878, "Invalid DDL statement for function @1"}, /* dyn_invalid_ddl_func */
{336068879, "Cannot alter new style function @1 with ALTER EXTERNAL FUNCTION. Use ALTER FUNCTION instead."}, /* dyn_newfc_oldsyntax */
- {336068886, "Parameter @1 in function @2 is not found"}, /* dyn_func_param_not_found */
- {336068887, "Parameter @1 of routine @2 is not found"}, /* dyn_routine_param_not_found */
+ {336068886, "Parameter @1 in function @2 not found"}, /* dyn_func_param_not_found */
+ {336068887, "Parameter @1 of routine @2 not found"}, /* dyn_routine_param_not_found */
{336068888, "Parameter @1 of routine @2 is ambiguous (found in both procedures and functions). Use a specifier keyword."}, /* dyn_routine_param_ambiguous */
+ {336068889, "Collation @1 is used in function @2 (parameter name @3) and cannot be dropped"}, /* dyn_coll_used_function */
+ {336068890, "Domain @1 is used in function @2 (parameter name @3) and cannot be dropped"}, /* dyn_domain_used_function */
{336330753, "found unknown switch"}, /* gbak_unknown_switch */
{336330754, "page size parameter missing"}, /* gbak_page_size_missing */
{336330755, "Page size specified (@1) greater than limit (16384 bytes)"}, /* gbak_page_size_toobig */
Modified: firebird/trunk/src/include/gen/sql_code.h
===================================================================
--- firebird/trunk/src/include/gen/sql_code.h 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/include/gen/sql_code.h 2011-07-15 11:52:16 UTC (rev 53313)
@@ -853,6 +853,8 @@
{336068886, -901}, /* 278 dyn_func_param_not_found */
{336068887, -901}, /* 279 dyn_routine_param_not_found */
{336068888, -901}, /* 280 dyn_routine_param_ambiguous */
+ {336068889, -901}, /* 281 dyn_coll_used_function */
+ {336068890, -901}, /* 282 dyn_domain_used_function */
{336330753, -901}, /* 1 gbak_unknown_switch */
{336330754, -901}, /* 2 gbak_page_size_missing */
{336330755, -901}, /* 3 gbak_page_size_toobig */
Modified: firebird/trunk/src/include/gen/sql_state.h
===================================================================
--- firebird/trunk/src/include/gen/sql_state.h 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/include/gen/sql_state.h 2011-07-15 11:52:16 UTC (rev 53313)
@@ -853,6 +853,8 @@
{336068886, "42000"}, // 278 dyn_func_param_not_found
{336068887, "42000"}, // 279 dyn_routine_param_not_found
{336068888, "42000"}, // 280 dyn_routine_param_ambiguous
+ {336068889, "HY000"}, // 281 dyn_coll_used_function
+ {336068890, "HY000"}, // 282 dyn_domain_used_function
{336330753, "00000"}, // 1 gbak_unknown_switch
{336330754, "00000"}, // 2 gbak_page_size_missing
{336330755, "00000"}, // 3 gbak_page_size_toobig
Modified: firebird/trunk/src/jrd/drq.h
===================================================================
--- firebird/trunk/src/jrd/drq.h 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/jrd/drq.h 2011-07-15 11:52:16 UTC (rev 53313)
@@ -162,7 +162,9 @@
drq_l_rfld_coll, // lookup relation field collation
drq_l_fld_coll, // lookup field collation
drq_l_prp_src, // lookup a procedure parameter source
+ drq_l_arg_src, // lookup a function argument source
drq_l_prm_coll, // lookup procedure parameter collation
+ drq_l_arg_coll, // lookup function argument collation
drq_m_map, // modify os=>db names mapping
drq_l_idx_name, // lookup index name
drq_l_collation, // DSQL/DdlNodes: lookup collation
@@ -206,6 +208,7 @@
drq_s_pkg_usr_prvs, // store package privileges
drq_e_pkg_prv, // erase package privileges
drq_m_pkg_prm_defs, // modify packaged procedure parameters defaults
+ drq_m_pkg_arg_defs, // modify packaged function arguments defaults
drq_s2_difference, // Store backup difference file, DYN_mod's change_backup_mode
drq_l_relation, // lookup relation before erase
drq_l_fun_name, // lookup function name
Modified: firebird/trunk/src/msgs/facilities2.sql
===================================================================
--- firebird/trunk/src/msgs/facilities2.sql 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/msgs/facilities2.sql 2011-07-15 11:52:16 UTC (rev 53313)
@@ -13,7 +13,7 @@
--('1996-11-07 13:39:40', 'GRST', 6, 1)
--
('2005-11-05 13:09:00', 'DSQL', 7, 32)
-('2011-07-15 12:08:00', 'DYN', 8, 281)
+('2011-07-15 12:08:00', 'DYN', 8, 283)
--
--('1996-11-07 13:39:40', 'FRED', 9, 1)
--
Modified: firebird/trunk/src/msgs/messages2.sql
===================================================================
--- firebird/trunk/src/msgs/messages2.sql 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/msgs/messages2.sql 2011-07-15 11:52:16 UTC (rev 53313)
@@ -1854,6 +1854,8 @@
('dyn_func_param_not_found', 'OnCommentNode::execute', 'DdlNodes.epp', NULL, 8, 278, NULL, 'Parameter @1 in function @2 not found', NULL, NULL);
('dyn_routine_param_not_found', 'OnCommentNode::execute', 'DdlNodes.epp', NULL, 8, 279, NULL, 'Parameter @1 of routine @2 not found', NULL, NULL);
('dyn_routine_param_ambiguous', 'OnCommentNode::execute', 'DdlNodes.epp', NULL, 8, 280, NULL, 'Parameter @1 of routine @2 is ambiguous (found in both procedures and functions). Use a specifier keyword.', NULL, NULL);
+('dyn_coll_used_function', 'DropCollationNode::execute', 'DdlNodes.epp', NULL, 8, 281, NULL, 'Collation @1 is used in function @2 (parameter name @3) and cannot be dropped', NULL, NULL);
+('dyn_domain_used_function', 'DropDomainNode', 'DdlNodes.epp', NULL, 8, 282, NULL, 'Domain @1 is used in function @2 (parameter name @3) and cannot be dropped', NULL, NULL);
COMMIT WORK;
-- TEST
(NULL, 'main', 'test.c', NULL, 11, 0, NULL, 'This is a modified text message', NULL, NULL);
Modified: firebird/trunk/src/msgs/system_errors2.sql
===================================================================
--- firebird/trunk/src/msgs/system_errors2.sql 2011-07-15 11:24:00 UTC (rev 53312)
+++ firebird/trunk/src/msgs/system_errors2.sql 2011-07-15 11:52:16 UTC (rev 53313)
@@ -841,6 +841,8 @@
(-901, '42', '000', 8, 278, 'dyn_func_param_not_found', NULL, NULL)
(-901, '42', '000', 8, 279, 'dyn_routine_param_not_found', NULL, NULL)
(-901, '42', '000', 8, 280, 'dyn_routine_param_ambiguous', NULL, NULL)
+(-901, 'HY', '000', 8, 281, 'dyn_coll_used_function', NULL, NULL)
+(-901, 'HY', '000', 8, 282, 'dyn_domain_used_function', NULL, NULL)
-- GBAK
(-901, '00', '000', 12, 1, 'gbak_unknown_switch', NULL, NULL)
(-901, '00', '000', 12, 2, 'gbak_page_size_missing', NULL, NULL)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-16 03:17:30
|
Revision: 53314
http://firebird.svn.sourceforge.net/firebird/?rev=53314&view=rev
Author: firebirds
Date: 2011-07-16 03:17:23 +0000 (Sat, 16 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-15 11:52:16 UTC (rev 53313)
+++ firebird/trunk/ChangeLog 2011-07-16 03:17:23 UTC (rev 53314)
@@ -1,3 +1,57 @@
+ 2011-07-15 11:52 dimitr
+ M lang_helpers/gds_codes.ftn
+ M lang_helpers/gds_codes.pas
+ M src/dsql/DdlNodes.epp
+ M src/dsql/PackageNodes.epp
+ M src/include/gen/codetext.h
+ M src/include/gen/iberror.h
+ M src/include/gen/msgs.h
+ M src/include/gen/sql_code.h
+ M src/include/gen/sql_state.h
+ M src/jrd/drq.h
+ M src/msgs/facilities2.sql
+ M src/msgs/messages2.sql
+ M src/msgs/system_errors2.sql
+Completed some missing parts of the PSQL functions implementation. Adriano, please review.
+
+ 2011-07-15 11:24 dimitr
+ M builds/win32/create_msgs.bat
+Fixed the standalone running of the create_msgs script.
+
+ 2011-07-15 09:48 dimitr
+ M builds/win32/msvc9/Firebird3.sln
+Misc.
+
+ 2011-07-15 09:46 dimitr
+ M builds/win32/msvc8/Firebird3.sln
+Misc.
+
+ 2011-07-15 09:43 dimitr
+ M builds/win32/defs/udr_engine.def
+Fixed the build.
+
+ 2011-07-15 09:05 dimitr
+ M src/dsql/dsql.cpp
+ M src/remote/client/interface.cpp
+ M src/remote/protocol.cpp
+Front ported CORE-3554: Server crashes during prepare or throws incorrect parsing error if the remotely passed SQL query is empty.
+
+ 2011-07-15 08:54 dimitr
+ M lang_helpers/gds_codes.ftn
+ M lang_helpers/gds_codes.pas
+ M src/dsql/DdlNodes.epp
+ M src/dsql/dsql.h
+ M src/dsql/parse.y
+ M src/include/gen/codetext.h
+ M src/include/gen/iberror.h
+ M src/include/gen/msgs.h
+ M src/include/gen/sql_code.h
+ M src/include/gen/sql_state.h
+ M src/msgs/facilities2.sql
+ M src/msgs/messages2.sql
+ M src/msgs/system_errors2.sql
+Implemented COMMENT for function arguments.
+
2011-07-14 15:56 asfernandes
M src/common/config/config_file.cpp
M src/include/gen/ids.h
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-15 11:52:16 UTC (rev 53313)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-16 03:17:23 UTC (rev 53314)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29494
+ FORMAL BUILD NUMBER:29501
*/
-#define PRODUCT_VER_STRING "3.0.0.29494"
-#define FILE_VER_STRING "WI-T3.0.0.29494"
-#define LICENSE_VER_STRING "WI-T3.0.0.29494"
-#define FILE_VER_NUMBER 3, 0, 0, 29494
+#define PRODUCT_VER_STRING "3.0.0.29501"
+#define FILE_VER_STRING "WI-T3.0.0.29501"
+#define LICENSE_VER_STRING "WI-T3.0.0.29501"
+#define FILE_VER_NUMBER 3, 0, 0, 29501
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29494"
+#define FB_BUILD_NO "29501"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-15 11:52:16 UTC (rev 53313)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-16 03:17:23 UTC (rev 53314)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29494
+BuildNum=29501
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-17 03:17:38
|
Revision: 53323
http://firebird.svn.sourceforge.net/firebird/?rev=53323&view=rev
Author: firebirds
Date: 2011-07-17 03:17:31 +0000 (Sun, 17 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-17 02:58:50 UTC (rev 53322)
+++ firebird/trunk/ChangeLog 2011-07-17 03:17:31 UTC (rev 53323)
@@ -1,3 +1,24 @@
+ 2011-07-16 20:15 asfernandes
+ M src/gpre/c_cxx.cpp
+ M src/jrd/nbak.cpp
+Warnings.
+
+ 2011-07-16 18:49 asfernandes
+ M src/dsql/ExprNodes.cpp
+ M src/dsql/dsql.cpp
+ M src/dsql/parse.y
+ M src/include/firebird/Message.h
+ M src/jrd/Optimizer.cpp
+Misc.
+
+ 2011-07-16 18:46 asfernandes
+ M src/dsql/DdlNodes.epp
+Correct the lookup of unspecified parameters wrt packages.
+
+ 2011-07-16 10:41 hvlad
+ M src/jrd/vio.cpp
+Port forward fix for bug CORE-3557 : AV in engine when preparing query against dropping table
+
2011-07-15 11:52 dimitr
M lang_helpers/gds_codes.ftn
M lang_helpers/gds_codes.pas
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-17 02:58:50 UTC (rev 53322)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-17 03:17:31 UTC (rev 53323)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29501
+ FORMAL BUILD NUMBER:29505
*/
-#define PRODUCT_VER_STRING "3.0.0.29501"
-#define FILE_VER_STRING "WI-T3.0.0.29501"
-#define LICENSE_VER_STRING "WI-T3.0.0.29501"
-#define FILE_VER_NUMBER 3, 0, 0, 29501
+#define PRODUCT_VER_STRING "3.0.0.29505"
+#define FILE_VER_STRING "WI-T3.0.0.29505"
+#define LICENSE_VER_STRING "WI-T3.0.0.29505"
+#define FILE_VER_NUMBER 3, 0, 0, 29505
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29501"
+#define FB_BUILD_NO "29505"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-17 02:58:50 UTC (rev 53322)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-17 03:17:31 UTC (rev 53323)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29501
+BuildNum=29505
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-18 03:18:47
|
Revision: 53331
http://firebird.svn.sourceforge.net/firebird/?rev=53331&view=rev
Author: firebirds
Date: 2011-07-18 03:18:40 +0000 (Mon, 18 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-17 09:59:42 UTC (rev 53330)
+++ firebird/trunk/ChangeLog 2011-07-18 03:18:40 UTC (rev 53331)
@@ -1,3 +1,7 @@
+ 2011-07-17 09:49 hvlad
+ M src/jrd/dfw.epp
+Port forward fix for bug CORE-3549 : Database corruption after end of session : page xxx is of wrong type expected 4 found 7
+
2011-07-16 20:15 asfernandes
M src/gpre/c_cxx.cpp
M src/jrd/nbak.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-17 09:59:42 UTC (rev 53330)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-18 03:18:40 UTC (rev 53331)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29505
+ FORMAL BUILD NUMBER:29506
*/
-#define PRODUCT_VER_STRING "3.0.0.29505"
-#define FILE_VER_STRING "WI-T3.0.0.29505"
-#define LICENSE_VER_STRING "WI-T3.0.0.29505"
-#define FILE_VER_NUMBER 3, 0, 0, 29505
+#define PRODUCT_VER_STRING "3.0.0.29506"
+#define FILE_VER_STRING "WI-T3.0.0.29506"
+#define LICENSE_VER_STRING "WI-T3.0.0.29506"
+#define FILE_VER_NUMBER 3, 0, 0, 29506
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29505"
+#define FB_BUILD_NO "29506"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-17 09:59:42 UTC (rev 53330)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-18 03:18:40 UTC (rev 53331)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29505
+BuildNum=29506
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ale...@us...> - 2011-07-18 10:57:32
|
Revision: 53334
http://firebird.svn.sourceforge.net/firebird/?rev=53334&view=rev
Author: alexpeshkoff
Date: 2011-07-18 10:57:21 +0000 (Mon, 18 Jul 2011)
Log Message:
-----------
Front-ported Darwin port changes
Modified Paths:
--------------
firebird/trunk/configure.in
firebird/trunk/src/common/os/posix/divorce.cpp
Modified: firebird/trunk/configure.in
===================================================================
--- firebird/trunk/configure.in 2011-07-18 03:30:03 UTC (rev 53333)
+++ firebird/trunk/configure.in 2011-07-18 10:57:21 UTC (rev 53334)
@@ -787,7 +787,14 @@
AC_CHECK_FUNCS(semtimedop)
AC_CHECK_FUNCS(fegetenv)
AC_CHECK_FUNCS(strerror_r)
-AC_CHECK_FUNCS(fdatasync fsync)
+case $host in
+ *-darwin*)
+ ac_cv_func_fdatasync=no
+ ;;
+ *)
+ AC_CHECK_FUNCS(fdatasync fsync)
+ ;;
+esac
AC_CHECK_FUNCS(poll)
dnl AC_CHECK_FUNCS(AO_compare_and_swap_full)
AC_COMPILE_IFELSE(
Modified: firebird/trunk/src/common/os/posix/divorce.cpp
===================================================================
--- firebird/trunk/src/common/os/posix/divorce.cpp 2011-07-18 03:30:03 UTC (rev 53333)
+++ firebird/trunk/src/common/os/posix/divorce.cpp 2011-07-18 10:57:21 UTC (rev 53334)
@@ -99,12 +99,14 @@
for (fid = 0; fid < NOFILE; fid++)
{
-#ifdef MIXED_SEMAPHORE_AND_FILE_HANDLE
- if (Firebird::SignalSafeSemaphore::checkHandle(fid))
+#ifdef DARWIN
+#ifdef HAVE_UNISTD_H
+ if (isatty(fid) <= 0)
{
continue;
}
#endif
+#endif
if (!(mask & (1 << fid)))
{
close(fid);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-19 03:20:38
|
Revision: 53337
http://firebird.svn.sourceforge.net/firebird/?rev=53337&view=rev
Author: firebirds
Date: 2011-07-19 03:20:29 +0000 (Tue, 19 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-18 11:50:51 UTC (rev 53336)
+++ firebird/trunk/ChangeLog 2011-07-19 03:20:29 UTC (rev 53337)
@@ -1,3 +1,16 @@
+ 2011-07-18 11:50 alexpeshkoff
+ M src/remote/server/server.cpp
+Simplified code - thanks to Claudio
+
+ 2011-07-18 11:19 alexpeshkoff
+ M src/yvalve/PluginManager.cpp
+Fixed assertion - thanks to Adriano
+
+ 2011-07-18 10:57 alexpeshkoff
+ M configure.in
+ M src/common/os/posix/divorce.cpp
+Front-ported Darwin port changes
+
2011-07-17 09:49 hvlad
M src/jrd/dfw.epp
Port forward fix for bug CORE-3549 : Database corruption after end of session : page xxx is of wrong type expected 4 found 7
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-18 11:50:51 UTC (rev 53336)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-19 03:20:29 UTC (rev 53337)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29506
+ FORMAL BUILD NUMBER:29509
*/
-#define PRODUCT_VER_STRING "3.0.0.29506"
-#define FILE_VER_STRING "WI-T3.0.0.29506"
-#define LICENSE_VER_STRING "WI-T3.0.0.29506"
-#define FILE_VER_NUMBER 3, 0, 0, 29506
+#define PRODUCT_VER_STRING "3.0.0.29509"
+#define FILE_VER_STRING "WI-T3.0.0.29509"
+#define LICENSE_VER_STRING "WI-T3.0.0.29509"
+#define FILE_VER_NUMBER 3, 0, 0, 29509
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29506"
+#define FB_BUILD_NO "29509"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-18 11:50:51 UTC (rev 53336)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-19 03:20:29 UTC (rev 53337)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29506
+BuildNum=29509
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-23 03:17:55
|
Revision: 53347
http://firebird.svn.sourceforge.net/firebird/?rev=53347&view=rev
Author: firebirds
Date: 2011-07-23 03:17:49 +0000 (Sat, 23 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-22 08:17:12 UTC (rev 53346)
+++ firebird/trunk/ChangeLog 2011-07-23 03:17:49 UTC (rev 53347)
@@ -1,3 +1,8 @@
+ 2011-07-22 07:00 dimitr
+ M src/jrd/DatabaseSnapshot.cpp
+ M src/jrd/btr.cpp
+Front ported recent commits.
+
2011-07-18 11:50 alexpeshkoff
M src/remote/server/server.cpp
Simplified code - thanks to Claudio
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-22 08:17:12 UTC (rev 53346)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-23 03:17:49 UTC (rev 53347)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29509
+ FORMAL BUILD NUMBER:29510
*/
-#define PRODUCT_VER_STRING "3.0.0.29509"
-#define FILE_VER_STRING "WI-T3.0.0.29509"
-#define LICENSE_VER_STRING "WI-T3.0.0.29509"
-#define FILE_VER_NUMBER 3, 0, 0, 29509
+#define PRODUCT_VER_STRING "3.0.0.29510"
+#define FILE_VER_STRING "WI-T3.0.0.29510"
+#define LICENSE_VER_STRING "WI-T3.0.0.29510"
+#define FILE_VER_NUMBER 3, 0, 0, 29510
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29509"
+#define FB_BUILD_NO "29510"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-22 08:17:12 UTC (rev 53346)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-23 03:17:49 UTC (rev 53347)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29509
+BuildNum=29510
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-25 03:17:57
|
Revision: 53353
http://firebird.svn.sourceforge.net/firebird/?rev=53353&view=rev
Author: firebirds
Date: 2011-07-25 03:17:50 +0000 (Mon, 25 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-25 02:19:34 UTC (rev 53352)
+++ firebird/trunk/ChangeLog 2011-07-25 03:17:50 UTC (rev 53353)
@@ -1,3 +1,16 @@
+ 2011-07-25 02:19 asfernandes
+ M src/dsql/BoolNodes.cpp
+Fixed the bug with NOT IN (list) reported by Ivan Prenosil in fb-devel.
+
+ 2011-07-25 01:40 asfernandes
+ M src/common/classes/stack.h
+ M src/dsql/StmtNodes.cpp
+Fixed the INSERT INTO ... SELECT bug reported by Ivan Prenosil in fb-devel.
+
+ 2011-07-24 22:15 asfernandes
+ M src/common/config/config_file.cpp
+Correction for symlinks with relative path.
+
2011-07-22 07:00 dimitr
M src/jrd/DatabaseSnapshot.cpp
M src/jrd/btr.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-25 02:19:34 UTC (rev 53352)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-25 03:17:50 UTC (rev 53353)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29510
+ FORMAL BUILD NUMBER:29513
*/
-#define PRODUCT_VER_STRING "3.0.0.29510"
-#define FILE_VER_STRING "WI-T3.0.0.29510"
-#define LICENSE_VER_STRING "WI-T3.0.0.29510"
-#define FILE_VER_NUMBER 3, 0, 0, 29510
+#define PRODUCT_VER_STRING "3.0.0.29513"
+#define FILE_VER_STRING "WI-T3.0.0.29513"
+#define LICENSE_VER_STRING "WI-T3.0.0.29513"
+#define FILE_VER_NUMBER 3, 0, 0, 29513
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29510"
+#define FB_BUILD_NO "29513"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-25 02:19:34 UTC (rev 53352)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-25 03:17:50 UTC (rev 53353)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29510
+BuildNum=29513
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-29 03:20:20
|
Revision: 53363
http://firebird.svn.sourceforge.net/firebird/?rev=53363&view=rev
Author: firebirds
Date: 2011-07-29 03:20:14 +0000 (Fri, 29 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-28 10:33:07 UTC (rev 53362)
+++ firebird/trunk/ChangeLog 2011-07-29 03:20:14 UTC (rev 53363)
@@ -1,3 +1,7 @@
+ 2011-07-27 09:06 alexpeshkoff
+ M src/remote/client/interface.cpp
+Fixed a hang in client when trying to attach to non-existent database with old-version firebird server running on same box
+
2011-07-25 02:19 asfernandes
M src/dsql/BoolNodes.cpp
Fixed the bug with NOT IN (list) reported by Ivan Prenosil in fb-devel.
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-28 10:33:07 UTC (rev 53362)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-29 03:20:14 UTC (rev 53363)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29513
+ FORMAL BUILD NUMBER:29514
*/
-#define PRODUCT_VER_STRING "3.0.0.29513"
-#define FILE_VER_STRING "WI-T3.0.0.29513"
-#define LICENSE_VER_STRING "WI-T3.0.0.29513"
-#define FILE_VER_NUMBER 3, 0, 0, 29513
+#define PRODUCT_VER_STRING "3.0.0.29514"
+#define FILE_VER_STRING "WI-T3.0.0.29514"
+#define LICENSE_VER_STRING "WI-T3.0.0.29514"
+#define FILE_VER_NUMBER 3, 0, 0, 29514
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29513"
+#define FB_BUILD_NO "29514"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-28 10:33:07 UTC (rev 53362)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-29 03:20:14 UTC (rev 53363)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29513
+BuildNum=29514
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-07-31 03:17:50
|
Revision: 53365
http://firebird.svn.sourceforge.net/firebird/?rev=53365&view=rev
Author: firebirds
Date: 2011-07-31 03:17:44 +0000 (Sun, 31 Jul 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-07-30 07:14:00 UTC (rev 53364)
+++ firebird/trunk/ChangeLog 2011-07-31 03:17:44 UTC (rev 53365)
@@ -1,3 +1,9 @@
+ 2011-07-30 07:14 robocop
+ M src/common/classes/stack.h
+ M src/dsql/DdlNodes.epp
+ M src/jrd/met.epp
+Misc.
+
2011-07-27 09:06 alexpeshkoff
M src/remote/client/interface.cpp
Fixed a hang in client when trying to attach to non-existent database with old-version firebird server running on same box
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-07-30 07:14:00 UTC (rev 53364)
+++ firebird/trunk/src/jrd/build_no.h 2011-07-31 03:17:44 UTC (rev 53365)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29514
+ FORMAL BUILD NUMBER:29515
*/
-#define PRODUCT_VER_STRING "3.0.0.29514"
-#define FILE_VER_STRING "WI-T3.0.0.29514"
-#define LICENSE_VER_STRING "WI-T3.0.0.29514"
-#define FILE_VER_NUMBER 3, 0, 0, 29514
+#define PRODUCT_VER_STRING "3.0.0.29515"
+#define FILE_VER_STRING "WI-T3.0.0.29515"
+#define LICENSE_VER_STRING "WI-T3.0.0.29515"
+#define FILE_VER_NUMBER 3, 0, 0, 29515
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29514"
+#define FB_BUILD_NO "29515"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-07-30 07:14:00 UTC (rev 53364)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-07-31 03:17:44 UTC (rev 53365)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29514
+BuildNum=29515
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ale...@us...> - 2011-08-02 09:26:56
|
Revision: 53366
http://firebird.svn.sourceforge.net/firebird/?rev=53366&view=rev
Author: alexpeshkoff
Date: 2011-08-02 09:26:49 +0000 (Tue, 02 Aug 2011)
Log Message:
-----------
Make diagnostics about wrong array subscript a bit better
Modified Paths:
--------------
firebird/trunk/lang_helpers/gds_codes.ftn
firebird/trunk/lang_helpers/gds_codes.pas
firebird/trunk/src/common/sdl.cpp
firebird/trunk/src/include/gen/codetext.h
firebird/trunk/src/include/gen/iberror.h
firebird/trunk/src/include/gen/msgs.h
firebird/trunk/src/include/gen/sql_code.h
firebird/trunk/src/include/gen/sql_state.h
firebird/trunk/src/msgs/facilities2.sql
firebird/trunk/src/msgs/messages2.sql
firebird/trunk/src/msgs/system_errors2.sql
Modified: firebird/trunk/lang_helpers/gds_codes.ftn
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.ftn 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/lang_helpers/gds_codes.ftn 2011-08-02 09:26:49 UTC (rev 53366)
@@ -1466,6 +1466,8 @@
PARAMETER (GDS__ee_blr_mismatch_null = 335545026)
INTEGER*4 GDS__ee_blr_mismatch_length
PARAMETER (GDS__ee_blr_mismatch_length = 335545027)
+ INTEGER*4 GDS__ss_out_of_bounds
+ PARAMETER (GDS__ss_out_of_bounds = 335545028)
INTEGER*4 GDS__gfix_db_name
PARAMETER (GDS__gfix_db_name = 335740929)
INTEGER*4 GDS__gfix_invalid_sw
Modified: firebird/trunk/lang_helpers/gds_codes.pas
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.pas 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/lang_helpers/gds_codes.pas 2011-08-02 09:26:49 UTC (rev 53366)
@@ -740,6 +740,7 @@
gds_spb_no_id = 335545025;
gds_ee_blr_mismatch_null = 335545026;
gds_ee_blr_mismatch_length = 335545027;
+ gds_ss_out_of_bounds = 335545028;
gds_gfix_db_name = 335740929;
gds_gfix_invalid_sw = 335740930;
gds_gfix_incmp_sw = 335740932;
Modified: firebird/trunk/src/common/sdl.cpp
===================================================================
--- firebird/trunk/src/common/sdl.cpp 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/src/common/sdl.cpp 2011-08-02 09:26:49 UTC (rev 53366)
@@ -148,7 +148,8 @@
const SLONG n = *subscripts++;
if (n < range->iad_lower || n > range->iad_upper)
{
- error(status_vector, Arg::Gds(isc_out_of_bounds));
+ error(status_vector, Arg::Gds(isc_ss_out_of_bounds) <<
+ Arg::Num(n) << Arg::Num(range->iad_lower) << Arg::Num(range->iad_upper));
return -1;
}
subscript += (n - range->iad_lower) * range->iad_length;
@@ -666,7 +667,8 @@
const SLONG n = *stack_ptr++;
if (n < range->iad_lower || n > range->iad_upper)
{
- error(arg->sdl_arg_status_vector, Arg::Gds(isc_out_of_bounds));
+ error(arg->sdl_arg_status_vector, Arg::Gds(isc_ss_out_of_bounds) <<
+ Arg::Num(n) << Arg::Num(range->iad_lower) << Arg::Num(range->iad_upper));
return false;
}
subscript += (n - range->iad_lower) * range->iad_length;
Modified: firebird/trunk/src/include/gen/codetext.h
===================================================================
--- firebird/trunk/src/include/gen/codetext.h 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/src/include/gen/codetext.h 2011-08-02 09:26:49 UTC (rev 53366)
@@ -729,6 +729,7 @@
{"spb_no_id", 335545025},
{"ee_blr_mismatch_null", 335545026},
{"ee_blr_mismatch_length", 335545027},
+ {"ss_out_of_bounds", 335545028},
{"gfix_db_name", 335740929},
{"gfix_invalid_sw", 335740930},
{"gfix_incmp_sw", 335740932},
Modified: firebird/trunk/src/include/gen/iberror.h
===================================================================
--- firebird/trunk/src/include/gen/iberror.h 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/src/include/gen/iberror.h 2011-08-02 09:26:49 UTC (rev 53366)
@@ -763,6 +763,7 @@
const ISC_STATUS isc_spb_no_id = 335545025L;
const ISC_STATUS isc_ee_blr_mismatch_null = 335545026L;
const ISC_STATUS isc_ee_blr_mismatch_length = 335545027L;
+const ISC_STATUS isc_ss_out_of_bounds = 335545028L;
const ISC_STATUS isc_gfix_db_name = 335740929L;
const ISC_STATUS isc_gfix_invalid_sw = 335740930L;
const ISC_STATUS isc_gfix_incmp_sw = 335740932L;
@@ -1187,7 +1188,7 @@
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 = 1131;
+const ISC_STATUS isc_err_max = 1132;
#else /* c definitions */
@@ -1920,6 +1921,7 @@
#define isc_spb_no_id 335545025L
#define isc_ee_blr_mismatch_null 335545026L
#define isc_ee_blr_mismatch_length 335545027L
+#define isc_ss_out_of_bounds 335545028L
#define isc_gfix_db_name 335740929L
#define isc_gfix_invalid_sw 335740930L
#define isc_gfix_incmp_sw 335740932L
@@ -2344,7 +2346,7 @@
#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 1131
+#define isc_err_max 1132
#endif
Modified: firebird/trunk/src/include/gen/msgs.h
===================================================================
--- firebird/trunk/src/include/gen/msgs.h 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/src/include/gen/msgs.h 2011-08-02 09:26:49 UTC (rev 53366)
@@ -732,6 +732,7 @@
{335545025, "missing service ID in spb"}, /* spb_no_id */
{335545026, "External BLR message mismatch: invalid null descriptor at field @1"}, /* ee_blr_mismatch_null */
{335545027, "External BLR message mismatch: length = @1, expected @2"}, /* ee_blr_mismatch_length */
+ {335545028, "Subscript @1 out of bounds [@2, @3]"}, /* ss_out_of_bounds */
{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 */
Modified: firebird/trunk/src/include/gen/sql_code.h
===================================================================
--- firebird/trunk/src/include/gen/sql_code.h 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/src/include/gen/sql_code.h 2011-08-02 09:26:49 UTC (rev 53366)
@@ -728,6 +728,7 @@
{335545025, -901}, /* 705 spb_no_id */
{335545026, -901}, /* 706 ee_blr_mismatch_null */
{335545027, -901}, /* 707 ee_blr_mismatch_length */
+ {335545028, -406}, /* 708 ss_out_of_bounds */
{335740929, -901}, /* 1 gfix_db_name */
{335740930, -901}, /* 2 gfix_invalid_sw */
{335740932, -901}, /* 4 gfix_incmp_sw */
Modified: firebird/trunk/src/include/gen/sql_state.h
===================================================================
--- firebird/trunk/src/include/gen/sql_state.h 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/src/include/gen/sql_state.h 2011-08-02 09:26:49 UTC (rev 53366)
@@ -728,6 +728,7 @@
{335545025, "HY000"}, // 705 spb_no_id
{335545026, "42000"}, // 706 ee_blr_mismatch_null
{335545027, "42000"}, // 707 ee_blr_mismatch_length
+ {335545028, "42000"}, // 708 ss_out_of_bounds
{335740929, "00000"}, // 1 gfix_db_name
{335740930, "00000"}, // 2 gfix_invalid_sw
{335740932, "00000"}, // 4 gfix_incmp_sw
Modified: firebird/trunk/src/msgs/facilities2.sql
===================================================================
--- firebird/trunk/src/msgs/facilities2.sql 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/src/msgs/facilities2.sql 2011-08-02 09:26:49 UTC (rev 53366)
@@ -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 (?, ?, ?, ?);
--
-('2011-07-07 12:33:00', 'JRD', 0, 708)
+('2011-07-29 16:58:38', 'JRD', 0, 709)
('2010-03-15 06:59:09', 'QLI', 1, 531)
--
--('2008-11-28 20:27:04', 'GDEF', 2, 346)
Modified: firebird/trunk/src/msgs/messages2.sql
===================================================================
--- firebird/trunk/src/msgs/messages2.sql 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/src/msgs/messages2.sql 2011-08-02 09:26:49 UTC (rev 53366)
@@ -815,6 +815,7 @@
('spb_no_id', 'Service::start', 'svc.c', NULL, 0, 705, NULL, 'missing service ID in spb', NULL, NULL);
('ee_blr_mismatch_null', NULL, 'met.epp', NULL, 0, 706, NULL, 'External BLR message mismatch: invalid null descriptor at field @1', NULL, NULL)
('ee_blr_mismatch_length', NULL, 'met.epp', NULL, 0, 707, NULL, 'External BLR message mismatch: length = @1, expected @2', NULL, NULL)
+('ss_out_of_bounds', NULL, 'sdl.cpp', NULL, 0, 708, NULL, 'Subscript @1 out of bounds [@2, @3]', 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);
Modified: firebird/trunk/src/msgs/system_errors2.sql
===================================================================
--- firebird/trunk/src/msgs/system_errors2.sql 2011-07-31 03:17:44 UTC (rev 53365)
+++ firebird/trunk/src/msgs/system_errors2.sql 2011-08-02 09:26:49 UTC (rev 53366)
@@ -713,6 +713,7 @@
(-901, 'HY', '000', 0, 705, 'spb_no_id', NULL, NULL)
(-901, '42', '000', 0, 706, 'ee_blr_mismatch_null', NULL, NULL)
(-901, '42', '000', 0, 707, 'ee_blr_mismatch_length', NULL, NULL)
+(-406, '42', '000', 0, 708, 'ss_out_of_bounds', NULL, NULL)
-- GFIX
(-901, '00', '000', 3, 1, 'gfix_db_name', NULL, NULL)
(-901, '00', '000', 3, 2, 'gfix_invalid_sw', NULL, NULL)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ale...@us...> - 2011-08-02 11:54:36
|
Revision: 53367
http://firebird.svn.sourceforge.net/firebird/?rev=53367&view=rev
Author: alexpeshkoff
Date: 2011-08-02 11:54:30 +0000 (Tue, 02 Aug 2011)
Log Message:
-----------
Enabled use of any available on the target system ICU version for non-collation calls
Modified Paths:
--------------
firebird/trunk/builds/posix/darwin.defaults
firebird/trunk/builds/posix/make.defaults
firebird/trunk/builds/posix/prefix.aix_powerpc
firebird/trunk/builds/posix/prefix.aix_powerpc_xlc
firebird/trunk/builds/posix/prefix.hpux_aCC
firebird/trunk/builds/posix/prefix.mingw
firebird/trunk/src/common/unicode_util.cpp
firebird/trunk/src/common/unicode_util.h
firebird/trunk/src/intl/cs_icu.cpp
firebird/trunk/src/intl/cv_icu.cpp
Modified: firebird/trunk/builds/posix/darwin.defaults
===================================================================
--- firebird/trunk/builds/posix/darwin.defaults 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/builds/posix/darwin.defaults 2011-08-02 11:54:30 UTC (rev 53367)
@@ -27,7 +27,7 @@
LIB_LINK_RPATH:=-install_name /Library/Frameworks/Firebird.framework/Versions/A/Libraries/
LIB_EMBED_LINK_OPTIONS:=-install_name /Library/Frameworks/Firebird.framework/Versions/A/Firebird
LIB_CLIENT_LINK_OPTIONS:=-install_name /Library/Frameworks/Firebird.framework/Versions/A/Firebird
-FBEMBED_LINK:=-F../gen/firebird -framework Firebird -L$(LIB) -lfbembed $(ICU_LIBS)
+FBEMBED_LINK:=-F../gen/firebird -framework Firebird -L$(LIB) -lfbembed
PLATFORM_PATH=os/darwin
PLATFORM_FALLBACK=os/posix
Modified: firebird/trunk/builds/posix/make.defaults
===================================================================
--- firebird/trunk/builds/posix/make.defaults 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/builds/posix/make.defaults 2011-08-02 11:54:30 UTC (rev 53367)
@@ -162,7 +162,6 @@
STATICEXE_LINK:= @CXX@ $(GLOB_OPTIONS)
LINK_LIBS = @LIBS@
-ICU_LIBS = -licuuc
STATICLINK_LIBS = @LIBS@
SO_LINK_LIBS = @LIBS@
@@ -301,11 +300,11 @@
LINK_INTL = $(LIB_LINK) $(LINK_FBINTL_SYMBOLS) $(LIB_LINK_OPTIONS) $(UNDEF_FLAGS)\
$(call LIB_LINK_SONAME,libintl.$(SHRLIB_EXT).1) $(call LIB_LINK_RPATH,lib)
-LINK_INTL_LIBS = -L$(LIB) $(ICU_LIBS) $(SO_LINK_LIBS) $(FIREBIRD_LIBRARY_LINK)
+LINK_INTL_LIBS = -L$(LIB) $(SO_LINK_LIBS) $(FIREBIRD_LIBRARY_LINK)
LINK_TRACE = $(LIB_LINK) $(LINK_PLUGIN_SYMBOLS) $(LIB_LINK_OPTIONS) $(UNDEF_FLAGS)\
$(call LIB_LINK_SONAME,$(LIB_PREFIX)fbtrace.$(SHRLIB_EXT).0) $(call LIB_LINK_RPATH,lib)
-LINK_TRACE_LIBS = -L$(LIB) $(SO_LINK_LIBS) $(ICU_LIBS)
+LINK_TRACE_LIBS = -L$(LIB) $(SO_LINK_LIBS)
LINK_FIREBIRD = $(LIB_LINK) $(LINK_FIREBIRD_SYMBOLS) $(LIB_LINK_OPTIONS) $(LIB_FIREBIRD_OPTIONS) $(UNDEF_FLAGS)\
$(call LIB_LINK_SONAME,$(LibrarySoName)) $(call LIB_LINK_RPATH,lib)
@@ -313,7 +312,7 @@
LINK_ENGINE = $(LIB_LINK) $(LINK_PLUGIN_SYMBOLS) $(LIB_LINK_OPTIONS) $(LIB_FIREBIRD_OPTIONS) $(UNDEF_FLAGS)\
$(call LIB_LINK_SONAME,$(EngineSoName)) $(call LIB_LINK_RPATH,lib)
-LINK_ENGINE_LIBS = $(LINK_FIREBIRD_LIBS) $(FIREBIRD_LIBRARY_LINK) $(ICU_LIBS)
+LINK_ENGINE_LIBS = $(LINK_FIREBIRD_LIBS) $(FIREBIRD_LIBRARY_LINK)
LINK_UDRENG = $(LIB_LINK) $(LINK_UDRENG_SYMBOLS) $(LIB_LINK_OPTIONS) $(call LIB_LINK_RPATH,lib) $(UNDEF_FLAGS)
LINK_UDRENG_LIBS = -L$(LIB) $(SO_LINK_LIBS)
Modified: firebird/trunk/builds/posix/prefix.aix_powerpc
===================================================================
--- firebird/trunk/builds/posix/prefix.aix_powerpc 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/builds/posix/prefix.aix_powerpc 2011-08-02 11:54:30 UTC (rev 53367)
@@ -51,10 +51,6 @@
# Additional -blibpath options are not additive! All paths must be provided as a colon separated list.
LIB_PATH_OPTS= -Wl,-blibpath:@FB_LIBDIR@:@FB_INTLDIR@:/usr/local/lib:/usr/lib:/lib:$(GCC_RUNTIME)
-ifeq ($(STD_ICU),true)
- ICU_LIBS= -L/usr/local/lib -licuuc
-endif
-
# non-firebird libraries have .a extension
SHRLIB_FOREIGN_EXT=a
Modified: firebird/trunk/builds/posix/prefix.aix_powerpc_xlc
===================================================================
--- firebird/trunk/builds/posix/prefix.aix_powerpc_xlc 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/builds/posix/prefix.aix_powerpc_xlc 2011-08-02 11:54:30 UTC (rev 53367)
@@ -57,10 +57,6 @@
# Additional -blibpath options are not additive! All paths must be provided as a colon separated list.
LIB_PATH_OPTS= -blibpath:@FB_LIBDIR@:@FB_INTLDIR@:/usr/local/lib:/usr/lib:/lib
-ifeq ($(STD_ICU),true)
- ICU_LIBS= -L/usr/local/lib -licuuc
-endif
-
# non-firebird libraries have .a extension
SHRLIB_FOREIGN_EXT=a
Modified: firebird/trunk/builds/posix/prefix.hpux_aCC
===================================================================
--- firebird/trunk/builds/posix/prefix.hpux_aCC 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/builds/posix/prefix.hpux_aCC 2011-08-02 11:54:30 UTC (rev 53367)
@@ -81,11 +81,8 @@
# link options for HP-UX linker, /usr/bin/ld
LINK_OPTS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) -AA +e -Wl,+concatrpath
-LINK_LIBS+= $(ICU_LIBS)
LIB_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) -b +e -Wl,+concatrpath
-LINK_UDF_LIBS+=$(ICU_LIBS)
-
# From original HPUX prefix file
LIB_LINK_RPATH= -Wl,+b,$(1)
LIB_LINK_SONAME= -Wl,+h,$(1)
Modified: firebird/trunk/builds/posix/prefix.mingw
===================================================================
--- firebird/trunk/builds/posix/prefix.mingw 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/builds/posix/prefix.mingw 2011-08-02 11:54:30 UTC (rev 53367)
@@ -66,4 +66,4 @@
LINK_UDF_LIBS =
# Special options for trace plugin link
-LINK_TRACE_LIBS = -L$(LIB) $(SO_LINK_LIBS) $(ICU_LIBS)
+LINK_TRACE_LIBS = -L$(LIB) $(SO_LINK_LIBS)
Modified: firebird/trunk/src/common/unicode_util.cpp
===================================================================
--- firebird/trunk/src/common/unicode_util.cpp 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/src/common/unicode_util.cpp 2011-08-02 11:54:30 UTC (rev 53367)
@@ -37,46 +37,45 @@
#include "../common/classes/init.h"
#include "../common/classes/objects_array.h"
#include "../common/classes/rwlock.h"
+#include "../common/StatusHolder.h"
#include <unicode/ustring.h>
#include <unicode/utrans.h>
#include <unicode/uchar.h>
-#include <unicode/ucnv.h>
#include <unicode/ucol.h>
using namespace Firebird;
+namespace {
+#if defined(WIN_NT)
+const char* const inTemplate = "icuin%d%d.dll";
+const char* const ucTemplate = "icuuc%d%d.dll";
+#elif defined(DARWIN)
+const char* const inTemplate = "/Library/Frameworks/Firebird.framework/Versions/A/Libraries/libicui18n.dylib";
+const char* const ucTemplate = "/Library/Frameworks/Firebird.framework/versions/A/Libraries/libicuuc.dylib";
+#elif defined(HPUX)
+const char* const inTemplate = "libicui18n.sl.%d%d";
+const char* const ucTemplate = "libicuuc.sl.%d%d";
+#else
+const char* const inTemplate = "libicui18n.so.%d%d";
+const char* const ucTemplate = "libicuuc.so.%d%d";
+#endif
-namespace Jrd {
-
-
-const char* const UnicodeUtil::DEFAULT_ICU_VERSION =
- STRINGIZE(U_ICU_VERSION_MAJOR_NUM)"."STRINGIZE(U_ICU_VERSION_MINOR_NUM);
-
-
-// encapsulate ICU collations libraries
-struct UnicodeUtil::ICU
+// encapsulate ICU library
+struct BaseICU
{
private:
- ICU(const ICU&); // not implemented
- ICU& operator =(const ICU&); // not implemented
+ BaseICU(const BaseICU&); // not implemented
+ BaseICU& operator =(const BaseICU&); // not implemented
public:
- ICU(int aMajorVersion, int aMinorVersion)
+ BaseICU(int aMajorVersion, int aMinorVersion)
: majorVersion(aMajorVersion),
- minorVersion(aMinorVersion),
- inModule(NULL),
- ucModule(NULL)
+ minorVersion(aMinorVersion)
{
}
- ~ICU()
- {
- delete ucModule;
- delete inModule;
- }
-
template <typename T> void getEntryPoint(const char* name, ModuleLoader::Module* module, T& ptr)
{
string symbol;
@@ -97,11 +96,39 @@
int majorVersion;
int minorVersion;
+
+ void (U_EXPORT2 *uInit)(UErrorCode* status);
+};
+}
+
+namespace Jrd {
+
+
+const char* const UnicodeUtil::DEFAULT_ICU_VERSION =
+ STRINGIZE(U_ICU_VERSION_MAJOR_NUM)"."STRINGIZE(U_ICU_VERSION_MINOR_NUM);
+
+
+// encapsulate ICU collations libraries
+struct UnicodeUtil::ICU : public BaseICU
+{
+public:
+ ICU(int aMajorVersion, int aMinorVersion)
+ : BaseICU(aMajorVersion, aMinorVersion),
+ inModule(NULL),
+ ucModule(NULL)
+ {
+ }
+
+ ~ICU()
+ {
+ delete ucModule;
+ delete inModule;
+ }
+
ModuleLoader::Module* inModule;
ModuleLoader::Module* ucModule;
UVersionInfo collVersion;
- void (U_EXPORT2 *uInit)(UErrorCode* status);
void (U_EXPORT2 *uVersionToString)(UVersionInfo versionArray, char* versionString);
int32_t (U_EXPORT2 *ulocCountAvailable)();
@@ -143,6 +170,77 @@
};
+// encapsulate ICU conversion library
+struct ImplementConversionICU : public UnicodeUtil::ConversionICU, BaseICU
+{
+public:
+ ImplementConversionICU(int aMajorVersion, int aMinorVersion)
+ : BaseICU(aMajorVersion, aMinorVersion),
+ module(NULL)
+ {
+ PathName filename;
+ filename.printf(ucTemplate, aMajorVersion, aMinorVersion);
+
+ module = ModuleLoader::fixAndLoadModule(filename);
+ if (!module)
+ {
+ //(Arg::Gds(isc_random) << "Missing library" <<
+ // Arg::Gds(isc_random) << filename).raise();
+ // Instead raise 'empty' exception in order to ignore "Missing library" later
+ LongJump::raise();
+ }
+
+ try
+ {
+ getEntryPoint("u_init", module, uInit);
+ }
+ catch (const status_exception&)
+ { }
+
+ getEntryPoint("ucnv_open", module, ucnv_open);
+ getEntryPoint("ucnv_close", module, ucnv_close);
+ getEntryPoint("ucnv_fromUChars", module, ucnv_fromUChars);
+ getEntryPoint("u_tolower", module, u_tolower);
+ getEntryPoint("u_toupper", module, u_toupper);
+ getEntryPoint("u_strCompare", module, u_strCompare);
+ getEntryPoint("u_countChar32", module, u_countChar32);
+ getEntryPoint("utf8_nextCharSafeBody", module, utf8_nextCharSafeBody);
+
+ getEntryPoint("UCNV_FROM_U_CALLBACK_STOP", module, UCNV_FROM_U_CALLBACK_STOP);
+ getEntryPoint("UCNV_TO_U_CALLBACK_STOP", module, UCNV_TO_U_CALLBACK_STOP);
+ getEntryPoint("ucnv_fromUnicode", module, ucnv_fromUnicode);
+ getEntryPoint("ucnv_toUnicode", module, ucnv_toUnicode);
+ getEntryPoint("ucnv_getInvalidChars", module, ucnv_getInvalidChars);
+ getEntryPoint("ucnv_getMaxCharSize", module, ucnv_getMaxCharSize);
+ getEntryPoint("ucnv_getMinCharSize", module, ucnv_getMinCharSize);
+ getEntryPoint("ucnv_setFromUCallBack", module, ucnv_setFromUCallBack);
+ getEntryPoint("ucnv_setToUCallBack", module, ucnv_setToUCallBack);
+
+ if (uInit)
+ {
+ UErrorCode status = U_ZERO_ERROR;
+ uInit(&status);
+ if (status != U_ZERO_ERROR)
+ {
+ string diag;
+ diag.printf("u_init() error %d", status);
+ (Arg::Gds(isc_random) << diag).raise();
+ }
+ }
+ }
+
+ ~ImplementConversionICU()
+ {
+ delete module;
+ }
+
+ ModuleLoader::Module* module;
+};
+
+static ImplementConversionICU* convIcu = 0;
+static GlobalPtr<Mutex> convIcuMutex;
+
+
// cache ICU module instances to not load and unload many times
class UnicodeUtil::ICUModules
{
@@ -224,15 +322,16 @@
return INTL_BAD_KEY_LENGTH;
UErrorCode status = U_ZERO_ERROR;
- UConverter* conv = ucnv_open("BOCU-1", &status);
+ ConversionICU& cIcu(getConversionICU());
+ UConverter* conv = cIcu.ucnv_open("BOCU-1", &status);
fb_assert(U_SUCCESS(status));
- const int32_t len = ucnv_fromUChars(conv, reinterpret_cast<char*>(dst), dstLen,
+ const int32_t len = cIcu.ucnv_fromUChars(conv, reinterpret_cast<char*>(dst), dstLen,
// safe cast - alignment not changed
reinterpret_cast<const UChar*>(src), srcLen / sizeof(*src), &status);
fb_assert(U_SUCCESS(status));
- ucnv_close(conv);
+ cIcu.ucnv_close(conv);
return len;
}
@@ -278,6 +377,7 @@
dstLen /= sizeof(*dst);
ULONG n = 0;
+ ConversionICU& cIcu(getConversionICU());
for (ULONG i = 0; i < srcLen;)
{
@@ -285,7 +385,7 @@
U16_NEXT(src, i, srcLen, c);
if (!exceptions)
- c = u_tolower(c);
+ c = cIcu.u_tolower(c);
else
{
const ULONG* p = exceptions;
@@ -293,7 +393,7 @@
++p;
if (*p == 0)
- c = u_tolower(c);
+ c = cIcu.u_tolower(c);
}
bool error;
@@ -344,6 +444,7 @@
dstLen /= sizeof(*dst);
ULONG n = 0;
+ ConversionICU& cIcu(getConversionICU());
for (ULONG i = 0; i < srcLen;)
{
@@ -351,7 +452,7 @@
U16_NEXT(src, i, srcLen, c);
if (!exceptions)
- c = u_toupper(c);
+ c = cIcu.u_toupper(c);
else
{
const ULONG* p = exceptions;
@@ -359,7 +460,7 @@
++p;
if (*p == 0)
- c = u_toupper(c);
+ c = cIcu.u_toupper(c);
}
bool error;
@@ -453,6 +554,7 @@
const USHORT* const dstStart = dst;
const USHORT* const dstEnd = dst + dstLen / sizeof(*dst);
+ ConversionICU& cIcu(getConversionICU());
for (ULONG i = 0; i < srcLen; )
{
@@ -471,7 +573,7 @@
{
*err_position = i - 1;
- c = utf8_nextCharSafeBody(src, reinterpret_cast<int32_t*>(&i), srcLen, c, -1);
+ c = cIcu.utf8_nextCharSafeBody(src, reinterpret_cast<int32_t*>(&i), srcLen, c, -1);
if (c < 0)
{
@@ -618,7 +720,7 @@
*error_flag = false;
// safe casts - alignment not changed
- int32_t cmp = u_strCompare(reinterpret_cast<const UChar*>(str1), len1 / sizeof(*str1),
+ int32_t cmp = getConversionICU().u_strCompare(reinterpret_cast<const UChar*>(str1), len1 / sizeof(*str1),
reinterpret_cast<const UChar*>(str2), len2 / sizeof(*str2), true);
return (cmp < 0 ? -1 : (cmp > 0 ? 1 : 0));
@@ -629,7 +731,7 @@
{
fb_assert(len % sizeof(*str) == 0);
// safe cast - alignment not changed
- return u_countChar32(reinterpret_cast<const UChar*>(str), len / sizeof(*str));
+ return getConversionICU().u_countChar32(reinterpret_cast<const UChar*>(str), len / sizeof(*str));
}
@@ -687,6 +789,7 @@
{
fb_assert(str != NULL);
+ ConversionICU& cIcu(getConversionICU());
for (ULONG i = 0; i < len; )
{
UChar32 c = str[i++];
@@ -695,7 +798,7 @@
{
const ULONG save_i = i - 1;
- c = utf8_nextCharSafeBody(str, reinterpret_cast<int32_t*>(&i), len, c, -1);
+ c = cIcu.utf8_nextCharSafeBody(str, reinterpret_cast<int32_t*>(&i), len, c, -1);
if (c < 0)
{
@@ -762,20 +865,6 @@
UnicodeUtil::ICU* UnicodeUtil::loadICU(const Firebird::string& icuVersion,
const Firebird::string& configInfo)
{
-#if defined(WIN_NT)
- const char* const inTemplate = "icuin%d%d.dll";
- const char* const ucTemplate = "icuuc%d%d.dll";
-#elif defined(DARWIN)
- const char* const inTemplate = "/Library/Frameworks/Firebird.framework/Versions/A/Libraries/libicui18n.dylib";
- const char* const ucTemplate = "/Library/Frameworks/Firebird.framework/versions/A/Libraries/libicuuc.dylib";
-#elif defined(HPUX)
- const char* const inTemplate = "libicui18n.sl.%d%d";
- const char* const ucTemplate = "libicuuc.sl.%d%d";
-#else
- const char* const inTemplate = "libicui18n.so.%d%d";
- const char* const ucTemplate = "libicuuc.so.%d%d";
-#endif
-
ObjectsArray<string> versions;
getVersions(configInfo, versions);
@@ -916,6 +1005,56 @@
}
+UnicodeUtil::ConversionICU& UnicodeUtil::getConversionICU()
+{
+ if (convIcu)
+ {
+ return *convIcu;
+ }
+
+ MutexLockGuard g(convIcuMutex);
+
+ if (convIcu)
+ {
+ return *convIcu;
+ }
+
+ LocalStatus lastError;
+ string version;
+ int majorArray[] = {4, 3, 5, 6, 0};
+ for (int* major = majorArray; *major; ++major)
+ {
+ for (int minor = 20; --minor; ) /* from 19 down to 0 */
+ {
+ try
+ {
+ convIcu = FB_NEW(*getDefaultMemoryPool()) ImplementConversionICU(*major, minor);
+ return *convIcu;
+ }
+ catch (const LongJump&) { }
+ catch (const Exception& ex)
+ {
+ ex.stuffException(&lastError);
+ version.printf("Error loading ICU library version %d.%d", *major, minor);
+ }
+ }
+ }
+
+ if (!lastError.isSuccess())
+ {
+ (Arg::Gds(isc_random) << "Could not find acceptable ICU library"
+ << Arg::StatusVector(lastError.get())).raise();
+ }
+ else
+ {
+ (Arg::Gds(isc_random) << "Could not find acceptable ICU library").raise();
+ }
+
+ // compiler warning silencer
+ return *convIcu;
+}
+
+
bool UnicodeUtil::getCollVersion(const Firebird::string& icuVersion,
const Firebird::string& configInfo, Firebird::string& collVersion)
{
@@ -1128,6 +1267,7 @@
// Remove last bytes of key if they are start of a contraction
// to correctly find in the index.
+ ConversionICU& cIcu(getConversionICU());
for (int i = 0; i < contractionsCount; ++i)
{
UChar str[10];
@@ -1140,7 +1280,7 @@
--len;
// safe cast - alignment not changed
- if (u_strCompare(str, len, reinterpret_cast<const UChar*>(src) + srcLen - len, len, true) == 0)
+ if (cIcu.u_strCompare(str, len, reinterpret_cast<const UChar*>(src) + srcLen - len, len, true) == 0)
{
srcLen -= len;
break;
Modified: firebird/trunk/src/common/unicode_util.h
===================================================================
--- firebird/trunk/src/common/unicode_util.h 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/src/common/unicode_util.h 2011-08-02 11:54:30 UTC (rev 53367)
@@ -30,6 +30,7 @@
#include "intlobj_new.h"
#include "../common/IntlUtil.h"
#include "../common/os/mod_loader.h"
+#include <unicode/ucnv.h>
struct UCollator;
struct USet;
@@ -42,9 +43,85 @@
struct ICU;
public:
+ // encapsulate ICU conversion library
+ struct ConversionICU
+ {
+ UConverter* (U_EXPORT2* ucnv_open) (const char* converterName, UErrorCode* err);
+ void (U_EXPORT2* ucnv_close) (UConverter *converter);
+ int32_t (U_EXPORT2* ucnv_fromUChars) (UConverter *cnv,
+ char *dest, int32_t destCapacity,
+ const UChar *src, int32_t srcLength,
+ UErrorCode *pErrorCode);
+
+ UChar32 (U_EXPORT2* u_tolower) (UChar32 c);
+ UChar32 (U_EXPORT2* u_toupper) (UChar32 c);
+ int32_t (U_EXPORT2* u_strCompare) (const UChar* s1, int32_t length1,
+ const UChar* s2, int32_t length2, UBool codePointOrder);
+ int32_t (U_EXPORT2* u_countChar32) (const UChar* s, int32_t length);
+
+ UChar32 (U_EXPORT2* utf8_nextCharSafeBody) (const uint8_t* s, int32_t* pi, int32_t length, UChar32 c, UBool strict);
+
+ void (U_EXPORT2* UCNV_FROM_U_CALLBACK_STOP) (
+ const void *context,
+ UConverterFromUnicodeArgs *fromUArgs,
+ const UChar* codeUnits,
+ int32_t length,
+ UChar32 codePoint,
+ UConverterCallbackReason reason,
+ UErrorCode * err);
+ void (U_EXPORT2* UCNV_TO_U_CALLBACK_STOP) (
+ const void *context,
+ UConverterToUnicodeArgs *toUArgs,
+ const char* codeUnits,
+ int32_t length,
+ UConverterCallbackReason reason,
+ UErrorCode * err);
+
+ void (U_EXPORT2* ucnv_setToUCallBack) (
+ UConverter * converter,
+ UConverterToUCallback newAction,
+ const void* newContext,
+ UConverterToUCallback *oldAction,
+ const void** oldContext,
+ UErrorCode * err);
+ void (U_EXPORT2* ucnv_setFromUCallBack) (
+ UConverter * converter,
+ UConverterFromUCallback newAction,
+ const void *newContext,
+ UConverterFromUCallback *oldAction,
+ const void **oldContext,
+ UErrorCode * err);
+
+ void (U_EXPORT2* ucnv_fromUnicode) (
+ UConverter * converter,
+ char **target,
+ const char *targetLimit,
+ const UChar ** source,
+ const UChar * sourceLimit,
+ int32_t* offsets,
+ UBool flush,
+ UErrorCode * err);
+ void (U_EXPORT2* ucnv_toUnicode) (
+ UConverter *converter,
+ UChar **target,
+ const UChar *targetLimit,
+ const char **source,
+ const char *sourceLimit,
+ int32_t *offsets,
+ UBool flush,
+ UErrorCode *err);
+
+ void (U_EXPORT2* ucnv_getInvalidChars) (
+ const UConverter *converter,
+ char *errBytes,
+ int8_t *len,
+ UErrorCode *err);
+ int8_t (U_EXPORT2* ucnv_getMaxCharSize) (const UConverter *converter);
+ int8_t (U_EXPORT2* ucnv_getMinCharSize) (const UConverter *converter);
+ };
+
static const char* const DEFAULT_ICU_VERSION;
-public:
class ICUModules;
// routines semantically equivalent with intlobj_new.h
@@ -72,6 +149,7 @@
static INTL_BOOL utf16WellFormed(ULONG len, const USHORT* str, ULONG* offending_position);
static INTL_BOOL utf32WellFormed(ULONG len, const ULONG* str, ULONG* offending_position);
+ static ConversionICU& getConversionICU();
static ICU* loadICU(const Firebird::string& icuVersion, const Firebird::string& configInfo);
static bool getCollVersion(const Firebird::string& icuVersion,
const Firebird::string& configInfo, Firebird::string& collVersion);
Modified: firebird/trunk/src/intl/cs_icu.cpp
===================================================================
--- firebird/trunk/src/intl/cs_icu.cpp 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/src/intl/cs_icu.cpp 2011-08-02 11:54:30 UTC (rev 53367)
@@ -29,6 +29,7 @@
#include "cs_icu.h"
#include "cv_icu.h"
#include <unicode/ucnv.h>
+#include "../common/unicode_util.h"
static void charset_destroy(charset* cs)
@@ -42,7 +43,8 @@
const ASCII* charSetName)
{
UErrorCode status = U_ZERO_ERROR;
- UConverter* conv = ucnv_open(charSetName, &status);
+ Jrd::UnicodeUtil::ConversionICU& cIcu(Jrd::UnicodeUtil::getConversionICU());
+ UConverter* conv = cIcu.ucnv_open(charSetName, &status);
if (U_SUCCESS(status))
{
@@ -53,8 +55,8 @@
cs->charset_version = CHARSET_VERSION_1;
cs->charset_flags |= CHARSET_ASCII_BASED;
- cs->charset_min_bytes_per_char = ucnv_getMinCharSize(conv);
- cs->charset_max_bytes_per_char = ucnv_getMaxCharSize(conv);
+ cs->charset_min_bytes_per_char = cIcu.ucnv_getMinCharSize(conv);
+ cs->charset_max_bytes_per_char = cIcu.ucnv_getMaxCharSize(conv);
cs->charset_fn_destroy = charset_destroy;
cs->charset_fn_well_formed = NULL;
@@ -62,11 +64,11 @@
BYTE* p2 = new BYTE[cs->charset_max_bytes_per_char];
cs->charset_space_character = p2;
- cs->charset_space_length = ucnv_fromUChars(conv, reinterpret_cast<char*>(p2),
+ cs->charset_space_length = cIcu.ucnv_fromUChars(conv, reinterpret_cast<char*>(p2),
cs->charset_max_bytes_per_char, &unicodeSpace, 1, &status);
fb_assert(U_SUCCESS(status));
- ucnv_close(conv);
+ cIcu.ucnv_close(conv);
CVICU_convert_init(cs);
}
Modified: firebird/trunk/src/intl/cv_icu.cpp
===================================================================
--- firebird/trunk/src/intl/cv_icu.cpp 2011-08-02 09:26:49 UTC (rev 53366)
+++ firebird/trunk/src/intl/cv_icu.cpp 2011-08-02 11:54:30 UTC (rev 53367)
@@ -29,26 +29,28 @@
#include "ld_proto.h"
#include "cv_icu.h"
#include <unicode/ucnv.h>
+#include "../common/unicode_util.h"
static UConverter* create_converter(csconvert* cv, UErrorCode* status)
{
- UConverter* conv = ucnv_open(cv->csconvert_impl->cs->charset_name, status);
+ Jrd::UnicodeUtil::ConversionICU& cIcu(Jrd::UnicodeUtil::getConversionICU());
+ UConverter* conv = cIcu.ucnv_open(cv->csconvert_impl->cs->charset_name, status);
const void* oldContext;
UConverterFromUCallback oldFromAction;
- ucnv_setFromUCallBack(
+ cIcu.ucnv_setFromUCallBack(
conv,
- UCNV_FROM_U_CALLBACK_STOP,
+ cIcu.UCNV_FROM_U_CALLBACK_STOP,
NULL,
&oldFromAction,
&oldContext,
status);
UConverterToUCallback oldToAction;
- ucnv_setToUCallBack(
+ cIcu.ucnv_setToUCallBack(
conv,
- UCNV_TO_U_CALLBACK_STOP,
+ cIcu.UCNV_TO_U_CALLBACK_STOP,
NULL,
&oldToAction,
&oldContext,
@@ -88,7 +90,8 @@
Firebird::Aligner<UChar> alignedSource(src, srcLen);
const UChar* source = alignedSource;
char* target = reinterpret_cast<char*>(dst);
- ucnv_fromUnicode(conv, &target, target + dstLen, &source,
+ Jrd::UnicodeUtil::ConversionICU& cIcu(Jrd::UnicodeUtil::getConversionICU());
+ cIcu.ucnv_fromUnicode(conv, &target, target + dstLen, &source,
source + srcLen / sizeof(UChar), NULL, TRUE, &status);
*errPosition = (source - alignedSource) * sizeof(UChar);
@@ -115,7 +118,7 @@
}
}
- ucnv_close(conv);
+ cIcu.ucnv_close(conv);
return target - reinterpret_cast<char*>(dst);
}
@@ -143,7 +146,8 @@
const char* source = reinterpret_cast<const char*>(src);
Firebird::OutAligner<UChar> alignedTarget(dst, dstLen);
UChar* target = alignedTarget;
- ucnv_toUnicode(conv, &target, target + dstLen / sizeof(UChar), &source,
+ Jrd::UnicodeUtil::ConversionICU& cIcu(Jrd::UnicodeUtil::getConversionICU());
+ cIcu.ucnv_toUnicode(conv, &target, target + dstLen / sizeof(UChar), &source,
source + srcLen, NULL, TRUE, &status);
*errPosition = source - reinterpret_cast<const char*>(src);
@@ -164,7 +168,7 @@
status = U_ZERO_ERROR;
char errBytes[16];
int8_t errLen = sizeof(errBytes);
- ucnv_getInvalidChars(conv, errBytes, &errLen, &status);
+ cIcu.ucnv_getInvalidChars(conv, errBytes, &errLen, &status);
if (!U_SUCCESS(status))
*errCode = CS_CONVERT_ERROR;
else
@@ -184,7 +188,7 @@
}
}
- ucnv_close(conv);
+ cIcu.ucnv_close(conv);
return (target - alignedTarget) * sizeof(UChar);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-08-03 03:19:14
|
Revision: 53368
http://firebird.svn.sourceforge.net/firebird/?rev=53368&view=rev
Author: firebirds
Date: 2011-08-03 03:19:07 +0000 (Wed, 03 Aug 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-08-02 11:54:30 UTC (rev 53367)
+++ firebird/trunk/ChangeLog 2011-08-03 03:19:07 UTC (rev 53368)
@@ -1,3 +1,30 @@
+ 2011-08-02 11:54 alexpeshkoff
+ M builds/posix/darwin.defaults
+ M builds/posix/make.defaults
+ M builds/posix/prefix.aix_powerpc
+ M builds/posix/prefix.aix_powerpc_xlc
+ M builds/posix/prefix.hpux_aCC
+ M builds/posix/prefix.mingw
+ M src/common/unicode_util.cpp
+ M src/common/unicode_util.h
+ M src/intl/cs_icu.cpp
+ M src/intl/cv_icu.cpp
+Enabled use of any available on the target system ICU version for non-collation calls
+
+ 2011-08-02 09:26 alexpeshkoff
+ M lang_helpers/gds_codes.ftn
+ M lang_helpers/gds_codes.pas
+ M src/common/sdl.cpp
+ M src/include/gen/codetext.h
+ M src/include/gen/iberror.h
+ M src/include/gen/msgs.h
+ M src/include/gen/sql_code.h
+ M src/include/gen/sql_state.h
+ M src/msgs/facilities2.sql
+ M src/msgs/messages2.sql
+ M src/msgs/system_errors2.sql
+Make diagnostics about wrong array subscript a bit better
+
2011-07-30 07:14 robocop
M src/common/classes/stack.h
M src/dsql/DdlNodes.epp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-08-02 11:54:30 UTC (rev 53367)
+++ firebird/trunk/src/jrd/build_no.h 2011-08-03 03:19:07 UTC (rev 53368)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29515
+ FORMAL BUILD NUMBER:29517
*/
-#define PRODUCT_VER_STRING "3.0.0.29515"
-#define FILE_VER_STRING "WI-T3.0.0.29515"
-#define LICENSE_VER_STRING "WI-T3.0.0.29515"
-#define FILE_VER_NUMBER 3, 0, 0, 29515
+#define PRODUCT_VER_STRING "3.0.0.29517"
+#define FILE_VER_STRING "WI-T3.0.0.29517"
+#define LICENSE_VER_STRING "WI-T3.0.0.29517"
+#define FILE_VER_NUMBER 3, 0, 0, 29517
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29515"
+#define FB_BUILD_NO "29517"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-08-02 11:54:30 UTC (rev 53367)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-08-03 03:19:07 UTC (rev 53368)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29515
+BuildNum=29517
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-08-04 03:18:39
|
Revision: 53371
http://firebird.svn.sourceforge.net/firebird/?rev=53371&view=rev
Author: firebirds
Date: 2011-08-04 03:18:32 +0000 (Thu, 04 Aug 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-08-03 12:13:18 UTC (rev 53370)
+++ firebird/trunk/ChangeLog 2011-08-04 03:18:32 UTC (rev 53371)
@@ -1,3 +1,16 @@
+ 2011-08-03 12:13 dimitr
+ M src/common/ThreadStart.cpp
+ M src/common/config/config.cpp
+ M src/common/config/config.h
+ D src/jrd/os/thd_priority.h
+ D src/jrd/os/win32/thd_priority.cpp
+Cleanup.
+
+ 2011-08-03 12:06 dimitr
+ M builds/win32/msvc8/engine.vcproj
+ M builds/win32/msvc9/engine.vcproj
+Cleanup.
+
2011-08-02 11:54 alexpeshkoff
M builds/posix/darwin.defaults
M builds/posix/make.defaults
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-08-03 12:13:18 UTC (rev 53370)
+++ firebird/trunk/src/jrd/build_no.h 2011-08-04 03:18:32 UTC (rev 53371)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29517
+ FORMAL BUILD NUMBER:29519
*/
-#define PRODUCT_VER_STRING "3.0.0.29517"
-#define FILE_VER_STRING "WI-T3.0.0.29517"
-#define LICENSE_VER_STRING "WI-T3.0.0.29517"
-#define FILE_VER_NUMBER 3, 0, 0, 29517
+#define PRODUCT_VER_STRING "3.0.0.29519"
+#define FILE_VER_STRING "WI-T3.0.0.29519"
+#define LICENSE_VER_STRING "WI-T3.0.0.29519"
+#define FILE_VER_NUMBER 3, 0, 0, 29519
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29517"
+#define FB_BUILD_NO "29519"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-08-03 12:13:18 UTC (rev 53370)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-08-04 03:18:32 UTC (rev 53371)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29517
+BuildNum=29519
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-08-05 03:19:24
|
Revision: 53377
http://firebird.svn.sourceforge.net/firebird/?rev=53377&view=rev
Author: firebirds
Date: 2011-08-05 03:19:17 +0000 (Fri, 05 Aug 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-08-05 02:21:18 UTC (rev 53376)
+++ firebird/trunk/ChangeLog 2011-08-05 03:19:17 UTC (rev 53377)
@@ -1,3 +1,18 @@
+ 2011-08-05 02:21 asfernandes
+ M src/common/unicode_util.cpp
+Use exception-safe code.
+
+ 2011-08-05 02:10 asfernandes
+ M src/common/ThreadStart.cpp
+ M src/jrd/Database.h
+ M src/jrd/jrd.cpp
+Fix build.
+
+ 2011-08-05 02:09 asfernandes
+ M src/common/unicode_util.cpp
+ M src/jrd/met.epp
+Misc.
+
2011-08-03 12:13 dimitr
M src/common/ThreadStart.cpp
M src/common/config/config.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-08-05 02:21:18 UTC (rev 53376)
+++ firebird/trunk/src/jrd/build_no.h 2011-08-05 03:19:17 UTC (rev 53377)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29519
+ FORMAL BUILD NUMBER:29522
*/
-#define PRODUCT_VER_STRING "3.0.0.29519"
-#define FILE_VER_STRING "WI-T3.0.0.29519"
-#define LICENSE_VER_STRING "WI-T3.0.0.29519"
-#define FILE_VER_NUMBER 3, 0, 0, 29519
+#define PRODUCT_VER_STRING "3.0.0.29522"
+#define FILE_VER_STRING "WI-T3.0.0.29522"
+#define LICENSE_VER_STRING "WI-T3.0.0.29522"
+#define FILE_VER_NUMBER 3, 0, 0, 29522
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29519"
+#define FB_BUILD_NO "29522"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-08-05 02:21:18 UTC (rev 53376)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-08-05 03:19:17 UTC (rev 53377)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29519
+BuildNum=29522
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-08-06 03:18:32
|
Revision: 53380
http://firebird.svn.sourceforge.net/firebird/?rev=53380&view=rev
Author: firebirds
Date: 2011-08-06 03:18:25 +0000 (Sat, 06 Aug 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-08-05 08:35:45 UTC (rev 53379)
+++ firebird/trunk/ChangeLog 2011-08-06 03:18:25 UTC (rev 53380)
@@ -1,3 +1,7 @@
+ 2011-08-05 08:35 hvlad
+ M src/common/unicode_util.cpp
+Correction : don't miss minor == 0 when trying ICU versions
+
2011-08-05 02:21 asfernandes
M src/common/unicode_util.cpp
Use exception-safe code.
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-08-05 08:35:45 UTC (rev 53379)
+++ firebird/trunk/src/jrd/build_no.h 2011-08-06 03:18:25 UTC (rev 53380)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29522
+ FORMAL BUILD NUMBER:29523
*/
-#define PRODUCT_VER_STRING "3.0.0.29522"
-#define FILE_VER_STRING "WI-T3.0.0.29522"
-#define LICENSE_VER_STRING "WI-T3.0.0.29522"
-#define FILE_VER_NUMBER 3, 0, 0, 29522
+#define PRODUCT_VER_STRING "3.0.0.29523"
+#define FILE_VER_STRING "WI-T3.0.0.29523"
+#define LICENSE_VER_STRING "WI-T3.0.0.29523"
+#define FILE_VER_NUMBER 3, 0, 0, 29523
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29522"
+#define FB_BUILD_NO "29523"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-08-05 08:35:45 UTC (rev 53379)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-08-06 03:18:25 UTC (rev 53380)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29522
+BuildNum=29523
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fir...@us...> - 2011-08-07 03:18:18
|
Revision: 53383
http://firebird.svn.sourceforge.net/firebird/?rev=53383&view=rev
Author: firebirds
Date: 2011-08-07 03:18:11 +0000 (Sun, 07 Aug 2011)
Log Message:
-----------
nightly update
Modified Paths:
--------------
firebird/trunk/ChangeLog
firebird/trunk/src/jrd/build_no.h
firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog 2011-08-06 07:24:00 UTC (rev 53382)
+++ firebird/trunk/ChangeLog 2011-08-07 03:18:11 UTC (rev 53383)
@@ -1,3 +1,8 @@
+ 2011-08-06 05:49 robocop
+ M src/common/unicode_util.cpp
+ M src/jrd/par.cpp
+Misc.
+
2011-08-05 08:35 hvlad
M src/common/unicode_util.cpp
Correction : don't miss minor == 0 when trying ICU versions
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h 2011-08-06 07:24:00 UTC (rev 53382)
+++ firebird/trunk/src/jrd/build_no.h 2011-08-07 03:18:11 UTC (rev 53383)
@@ -3,16 +3,16 @@
*** DO NOT EDIT ***
TO CHANGE ANY INFORMATION IN HERE PLEASE
EDIT src/misc/writeBuildNum.sh
- FORMAL BUILD NUMBER:29523
+ FORMAL BUILD NUMBER:29524
*/
-#define PRODUCT_VER_STRING "3.0.0.29523"
-#define FILE_VER_STRING "WI-T3.0.0.29523"
-#define LICENSE_VER_STRING "WI-T3.0.0.29523"
-#define FILE_VER_NUMBER 3, 0, 0, 29523
+#define PRODUCT_VER_STRING "3.0.0.29524"
+#define FILE_VER_STRING "WI-T3.0.0.29524"
+#define LICENSE_VER_STRING "WI-T3.0.0.29524"
+#define FILE_VER_NUMBER 3, 0, 0, 29524
#define FB_MAJOR_VER "3"
#define FB_MINOR_VER "0"
#define FB_REV_NO "0"
-#define FB_BUILD_NO "29523"
+#define FB_BUILD_NO "29524"
#define FB_BUILD_TYPE "T"
#define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh 2011-08-06 07:24:00 UTC (rev 53382)
+++ firebird/trunk/src/misc/writeBuildNum.sh 2011-08-07 03:18:11 UTC (rev 53383)
@@ -9,7 +9,7 @@
MajorVer=3
MinorVer=0
RevNo=0
-BuildNum=29523
+BuildNum=29524
NowAt=`pwd`
cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|