private void Reopen() { this.SetState(4); try { this.NameManager = new QNameManager(this); this.granteeManager = new GranteeManager(this); this.userManager = new UserManager(this); this.schemaManager = new SchemaManager(this); this.persistentStoreCollection = new PersistentStoreCollectionDatabase(); this._isReferentialIntegrity = true; this.sessionManager = new SessionManager(this); this.collation = Collation.GetDefaultInstance(); this.DbInfo = DatabaseInformation.NewDatabaseInformation(this); this.TxManager = new TransactionManagerMvcc(this); this.lobManager.CreateSchema(); this.sessionManager.GetSysLobSession().SetSchema("SYSTEM_LOBS"); this.schemaManager.SetSchemaChangeTimestamp(); this.logger.OpenPersistence(); if (this.logger.IsNewDatabase) { string property = this.UrlProperties.GetProperty("user", "SA"); string password = this.UrlProperties.GetProperty("password", ""); this.userManager.CreateFirstUser(property, password); this.schemaManager.CreatePublicSchema(); this.lobManager.InitialiseLobSpace(); this.logger.Checkpoint(false); } this.lobManager.Open(); this.DbInfo.SetWithContent(true); } catch (Exception error) { this.logger.ClosePersistence(-1); this.logger.ReleaseLock(); this.SetState(0x10); this.ClearStructures(); DatabaseManager.RemoveDatabase(this); if (!(error is CoreException)) { error = Error.GetError(0x1ca, error); } this.logger.LogSevereEvent(FwNs.Core.LC.cResources.SR.Database_Reopen_could_not_reopen_database, error); throw; } this.SetState(1); }
public CharacterType(int type, long precision) : base(12, type, precision, 0) { this._collation = Collation.GetDefaultInstance(); this._charset = Charset.GetDefaultInstance(); this._isEqualIdentical = type != 100; }