"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/jrd/tra.h" between
Firebird-3.0.2.32703-0.tar.bz2 and Firebird-3.0.4.33054-0.tar.bz2

About: Firebird is a relational database offering many ANSI SQL standard features.

tra.h  (Firebird-3.0.2.32703-0.tar.bz2):tra.h  (Firebird-3.0.4.33054-0.tar.bz2)
skipping to change at line 108 skipping to change at line 108
} }
// Empty default constructor to make it behave like POD structure // Empty default constructor to make it behave like POD structure
BlobIndex() {} BlobIndex() {}
BlobIndex(ULONG temp_id, blb* blob_object) : BlobIndex(ULONG temp_id, blb* blob_object) :
bli_temp_id(temp_id), bli_materialized(false), bli_request(NULL), bli_temp_id(temp_id), bli_materialized(false), bli_request(NULL),
bli_blob_object(blob_object) bli_blob_object(blob_object)
{ } { }
}; };
typedef Firebird::BePlusTree<BlobIndex, ULONG, MemoryPool, BlobIndex> BlobIndexT ree; typedef Firebird::BePlusTree<BlobIndex, ULONG, MemoryPool, BlobIndex> BlobIndexT ree;
typedef Firebird::BePlusTree<bid, bid, MemoryPool> FetchedBlobIdTree;
// Transaction block // Transaction block
struct CallerName struct CallerName
{ {
CallerName(int aType, const Firebird::MetaName& aName) CallerName(int aType, const Firebird::MetaName& aName)
: type(aType), : type(aType),
name(aName) name(aName)
{ {
} }
skipping to change at line 168 skipping to change at line 169
tra_wait tra_wait
}; };
jrd_tra(MemoryPool* p, Firebird::MemoryStats* parent_stats, jrd_tra(MemoryPool* p, Firebird::MemoryStats* parent_stats,
Attachment* attachment, jrd_tra* outer) Attachment* attachment, jrd_tra* outer)
: tra_attachment(attachment), : tra_attachment(attachment),
tra_pool(p), tra_pool(p),
tra_memory_stats(parent_stats), tra_memory_stats(parent_stats),
tra_blobs_tree(p), tra_blobs_tree(p),
tra_blobs(outer ? outer->tra_blobs : &tra_blobs_tree), tra_blobs(outer ? outer->tra_blobs : &tra_blobs_tree),
tra_fetched_blobs(p),
tra_arrays(NULL), tra_arrays(NULL),
tra_deferred_job(NULL), tra_deferred_job(NULL),
tra_resources(*p), tra_resources(*p),
tra_context_vars(*p), tra_context_vars(*p),
tra_lock_timeout(DEFAULT_LOCK_TIMEOUT), tra_lock_timeout(DEFAULT_LOCK_TIMEOUT),
tra_timestamp(Firebird::TimeStamp::getCurrentTimeStamp()), tra_timestamp(Firebird::TimeStamp::getCurrentTimeStamp()),
tra_stats(*p), tra_stats(*p),
tra_open_cursors(*p), tra_open_cursors(*p),
tra_outer(outer), tra_outer(outer),
tra_transactions(*p), tra_transactions(*p),
skipping to change at line 242 skipping to change at line 244
Attachment* getAttachment() Attachment* getAttachment()
{ {
return tra_attachment; return tra_attachment;
} }
dsql_dbb* getDsqlAttachment() dsql_dbb* getDsqlAttachment()
{ {
return tra_attachment->att_dsql_instance; return tra_attachment->att_dsql_instance;
} }
JTransaction* getInterface(); JTransaction* getInterface(bool create);
void setInterface(JTransaction* jt); void setInterface(JTransaction* jt);
FB_API_HANDLE tra_public_handle; // Public handle FB_API_HANDLE tra_public_handle; // Public handle
Attachment* tra_attachment; // database attachment Attachment* tra_attachment; // database attachment
TraNumber tra_number; // transaction number TraNumber tra_number; // transaction number
TraNumber tra_top; // highest transa ction in snapshot TraNumber tra_top; // highest transa ction in snapshot
TraNumber tra_oldest; // oldest interesting tra nsaction TraNumber tra_oldest; // oldest interesting tra nsaction
TraNumber tra_oldest_active; // record versions older than thi s can be TraNumber tra_oldest_active; // record versions older than thi s can be
/ / gargage-collected by this tx / / gargage-collected by this tx
TraNumber tra_att_oldest_active; // oldest active transaction in t he same attachment TraNumber tra_att_oldest_active; // oldest active transaction in t he same attachment
jrd_tra* tra_next; // next transacti on in attachment jrd_tra* tra_next; // next transacti on in attachment
MemoryPool* const tra_pool; // pool for transaction MemoryPool* const tra_pool; // pool for transaction
Firebird::MemoryStats tra_memory_stats; Firebird::MemoryStats tra_memory_stats;
BlobIndexTree tra_blobs_tree; // list of active blobs BlobIndexTree tra_blobs_tree; // list of active blobs
BlobIndexTree* tra_blobs; // pointer to actual list of active blobs BlobIndexTree* tra_blobs; // pointer to actual list of active blobs
FetchedBlobIdTree tra_fetched_blobs; // list of fetched blobs
ArrayField* tra_arrays; // Linked list of active arrays ArrayField* tra_arrays; // Linked list of active arrays
Lock* tra_lock; // lock for trans action Lock* tra_lock; // lock for trans action
Lock* tra_alter_db_lock; // lock for ALTER DATABAS E statement(s)
vec<Lock*>* tra_relation_locks; // locks for rela tions vec<Lock*>* tra_relation_locks; // locks for rela tions
TransactionBitmap* tra_commit_sub_trans; // committed sub-transact ions TransactionBitmap* tra_commit_sub_trans; // committed sub-transact ions
Savepoint* tra_save_point; // list of savepoints Savepoint* tra_save_point; // list of savepoints
Savepoint* tra_save_free; // free savepoints Savepoint* tra_save_free; // free savepoints
SavNumber tra_save_point_number; // next save point number to use SavNumber tra_save_point_number; // next save point number to use
ULONG tra_flags; ULONG tra_flags;
DeferredJob* tra_deferred_job; // work deferred to commit time DeferredJob* tra_deferred_job; // work deferred to commit time
ResourceList tra_resources; // resource existence lis t ResourceList tra_resources; // resource existence lis t
Firebird::StringMap tra_context_vars; // Context variables for the transa ction Firebird::StringMap tra_context_vars; // Context variables for the transa ction
traRpbList* tra_rpblist; // active record_param's of given transaction traRpbList* tra_rpblist; // active record_param's of given transaction
skipping to change at line 361 skipping to change at line 365
} }
fb_assert(tra_undo_records.getCount() < MAX_UNDO_RECORDS); fb_assert(tra_undo_records.getCount() < MAX_UNDO_RECORDS);
Record* const record = FB_NEW_POOL(*tra_pool) Record(*tra_pool, f ormat, REC_undo_active); Record* const record = FB_NEW_POOL(*tra_pool) Record(*tra_pool, f ormat, REC_undo_active);
tra_undo_records.add(record); tra_undo_records.add(record);
return record; return record;
} }
void unlinkFromAttachment();
void linkToAttachment(Attachment* attachment);
static void tra_abort(const char* reason);
UserManagement* getUserManagement(); UserManagement* getUserManagement();
SecDbContext* getSecDbContext(); SecDbContext* getSecDbContext();
SecDbContext* setSecDbContext(Firebird::IAttachment* att, Firebird::ITran saction* tra); SecDbContext* setSecDbContext(Firebird::IAttachment* att, Firebird::ITran saction* tra);
void eraseSecDbContext(); void eraseSecDbContext();
MappingList* getMappingList(); MappingList* getMappingList();
DbCreatorsList* getDbCreatorsList(); DbCreatorsList* getDbCreatorsList();
void checkBlob(thread_db* tdbb, const bid* blob_id, bool punt);
GenIdCache* getGenIdCache() GenIdCache* getGenIdCache()
{ {
if (!tra_gen_ids) if (!tra_gen_ids)
tra_gen_ids = FB_NEW_POOL(*tra_pool) GenIdCache(*tra_pool ); tra_gen_ids = FB_NEW_POOL(*tra_pool) GenIdCache(*tra_pool );
return tra_gen_ids; return tra_gen_ids;
} }
}; };
 End of changes. 8 change blocks. 
2 lines changed or deleted 11 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)