8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-23 00:43:02 +01:00
This commit is contained in:
asfernandes 2009-05-06 02:02:37 +00:00
parent f8caed0d24
commit 10328dff3b
5 changed files with 15 additions and 3 deletions

View File

@ -333,7 +333,7 @@ int RESTORE_restore (const TEXT* file_name, const TEXT* database_name)
END_ERROR
}
END_ERROR;
if (tdgbl->global_trans)
{
BURP_verbose (68);

View File

@ -168,18 +168,21 @@ private:
public:
Mutex() { init(); }
explicit Mutex(MemoryPool&) { init(); }
~Mutex()
{
int rc = pthread_mutex_destroy(&mlock);
if (rc)
system_call_failed::raise("pthread_mutex_destroy", rc);
}
void enter()
{
int rc = pthread_mutex_lock(&mlock);
if (rc)
system_call_failed::raise("pthread_mutex_lock", rc);
}
bool tryEnter()
{
int rc = pthread_mutex_trylock(&mlock);
@ -189,6 +192,7 @@ public:
system_call_failed::raise("pthread_mutex_trylock", rc);
return true;
}
void leave()
{
int rc = pthread_mutex_unlock(&mlock);
@ -211,21 +215,25 @@ public:
if (pthread_spin_init(&spinlock, false))
system_call_failed::raise("pthread_spin_init");
}
explicit Spinlock(MemoryPool&)
{
if (pthread_spin_init(&spinlock, false))
system_call_failed::raise("pthread_spin_init");
}
~Spinlock()
{
if (pthread_spin_destroy(&spinlock))
system_call_failed::raise("pthread_spin_destroy");
}
void enter()
{
if (pthread_spin_lock(&spinlock))
system_call_failed::raise("pthread_spin_lock");
}
void leave()
{
if (pthread_spin_unlock(&spinlock))

View File

@ -4413,7 +4413,7 @@ static bool make_version(thread_db* tdbb, SSHORT phase, DeferredWork* work,
if (!RFR.RDB$FIELD_ID.NULL && RFR.RDB$FIELD_ID >= REL.RDB$FIELD_ID)
REL.RDB$FIELD_ID = RFR.RDB$FIELD_ID + 1;
// force recalculation of RDB$UPDATE_FLAG if field is calculated
// force recalculation of RDB$UPDATE_FLAG if field is calculated
if (!FLD.RDB$COMPUTED_BLR.isEmpty())
{
RFR.RDB$UPDATE_FLAG.NULL = TRUE;

View File

@ -5298,7 +5298,7 @@ static const PTR get_entrypoint(int proc, int implementation)
return *entry;
else
return &no_entrypoint;
}

View File

@ -2107,18 +2107,22 @@ static void show_rel_detail( qli_rel* relation)
show_text_blob(database, "\t", 291, &R.RDB$DESCRIPTION, 0, NULL, false);
if (database->dbb_capabilities & DBB_cap_security)
{
FOR(REQUEST_HANDLE database->dbb_requests[REQ_show_rel_secur])
S IN RDB$RELATIONS WITH S.RDB$RELATION_NAME = R.RDB$RELATION_NAME
AND S.RDB$SECURITY_CLASS NOT MISSING
show_string(292, S.RDB$SECURITY_CLASS, 0, NULL);
END_FOR;
}
if (database->dbb_capabilities & DBB_cap_extern_file)
{
FOR(REQUEST_HANDLE database->dbb_requests[REQ_show_rel_extern])
E IN RDB$RELATIONS WITH E.RDB$RELATION_NAME = R.RDB$RELATION_NAME
AND E.RDB$EXTERNAL_FILE NOT MISSING
ERRQ_msg_put(293, E.RDB$EXTERNAL_FILE); // Msg293 Stored in external file %s
END_FOR;
}
// OBSOLETE - Handling of DBB_cap_triggers (old V2 style triggers)
// OBSOLETE - Msg294 An erase trigger is defined for %s