Clean up ahead of PR.

pull/1/head
Matthew Chen 8 years ago
parent c8e7eb903c
commit 7d3f79440f

@ -100,9 +100,6 @@ NSString *const kNSNotificationName_IdentityStateDidChange = @"kNSNotificationNa
_storageManager = storageManager; _storageManager = storageManager;
_dbConnection = storageManager.newDatabaseConnection; _dbConnection = storageManager.newDatabaseConnection;
self.dbConnection.objectCacheEnabled = NO; self.dbConnection.objectCacheEnabled = NO;
#if DEBUG
self.dbConnection.permittedTransactions = YDB_AnySyncTransaction;
#endif
_messageSender = messageSender; _messageSender = messageSender;
OWSSingletonAssert(); OWSSingletonAssert();

@ -49,6 +49,8 @@ NSString *const kSessionStoreDBConnectionKey = @"kSessionStoreDBConnectionKey";
OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]); OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]);
YapDatabaseReadWriteTransaction *transaction = protocolContext; YapDatabaseReadWriteTransaction *transaction = protocolContext;
// For consistency, we should only access session state on non-caching connections.
OWSAssert(!transaction.connection.objectCacheEnabled);
NSDictionary *_Nullable dictionary = NSDictionary *_Nullable dictionary =
[transaction objectForKey:contactIdentifier inCollection:TSStorageManagerSessionStoreCollection]; [transaction objectForKey:contactIdentifier inCollection:TSStorageManagerSessionStoreCollection];
@ -76,6 +78,8 @@ NSString *const kSessionStoreDBConnectionKey = @"kSessionStoreDBConnectionKey";
OWSFail(@"%@ subDevicesSessions is deprecated", self.logTag); OWSFail(@"%@ subDevicesSessions is deprecated", self.logTag);
YapDatabaseReadWriteTransaction *transaction = protocolContext; YapDatabaseReadWriteTransaction *transaction = protocolContext;
// For consistency, we should only access session state on non-caching connections.
OWSAssert(!transaction.connection.objectCacheEnabled);
NSDictionary *_Nullable dictionary = NSDictionary *_Nullable dictionary =
[transaction objectForKey:contactIdentifier inCollection:TSStorageManagerSessionStoreCollection]; [transaction objectForKey:contactIdentifier inCollection:TSStorageManagerSessionStoreCollection];
@ -93,6 +97,8 @@ NSString *const kSessionStoreDBConnectionKey = @"kSessionStoreDBConnectionKey";
OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]); OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]);
YapDatabaseReadWriteTransaction *transaction = protocolContext; YapDatabaseReadWriteTransaction *transaction = protocolContext;
// For consistency, we should only access session state on non-caching connections.
OWSAssert(!transaction.connection.objectCacheEnabled);
// We need to ensure subsequent usage of this SessionRecord does not consider this session as "fresh". Normally this // We need to ensure subsequent usage of this SessionRecord does not consider this session as "fresh". Normally this
// is achieved by marking things as "not fresh" at the point of deserialization - when we fetch a SessionRecord from // is achieved by marking things as "not fresh" at the point of deserialization - when we fetch a SessionRecord from
@ -136,6 +142,8 @@ NSString *const kSessionStoreDBConnectionKey = @"kSessionStoreDBConnectionKey";
OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]); OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]);
YapDatabaseReadWriteTransaction *transaction = protocolContext; YapDatabaseReadWriteTransaction *transaction = protocolContext;
// For consistency, we should only access session state on non-caching connections.
OWSAssert(!transaction.connection.objectCacheEnabled);
DDLogInfo( DDLogInfo(
@"[TSStorageManager (SessionStore)] deleting session for contact: %@ device: %d", contactIdentifier, deviceId); @"[TSStorageManager (SessionStore)] deleting session for contact: %@ device: %d", contactIdentifier, deviceId);
@ -159,6 +167,8 @@ NSString *const kSessionStoreDBConnectionKey = @"kSessionStoreDBConnectionKey";
OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]); OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]);
YapDatabaseReadWriteTransaction *transaction = protocolContext; YapDatabaseReadWriteTransaction *transaction = protocolContext;
// For consistency, we should only access session state on non-caching connections.
OWSAssert(!transaction.connection.objectCacheEnabled);
DDLogInfo(@"[TSStorageManager (SessionStore)] deleting all sessions for contact:%@", contactIdentifier); DDLogInfo(@"[TSStorageManager (SessionStore)] deleting all sessions for contact:%@", contactIdentifier);
@ -171,6 +181,8 @@ NSString *const kSessionStoreDBConnectionKey = @"kSessionStoreDBConnectionKey";
OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]); OWSAssert([protocolContext isKindOfClass:[YapDatabaseReadWriteTransaction class]]);
YapDatabaseReadWriteTransaction *transaction = protocolContext; YapDatabaseReadWriteTransaction *transaction = protocolContext;
// For consistency, we should only access session state on non-caching connections.
OWSAssert(!transaction.connection.objectCacheEnabled);
DDLogInfo(@"[TSStorageManager (SessionStore)] archiving all sessions for contact: %@", contactIdentifier); DDLogInfo(@"[TSStorageManager (SessionStore)] archiving all sessions for contact: %@", contactIdentifier);

@ -80,9 +80,7 @@
DispatchMainThreadSafe(^{ DispatchMainThreadSafe(^{
__weak typeof(self) weakSelf = self; __weak typeof(self) weakSelf = self;
self.backgroundTaskId = [CurrentAppContext() beginBackgroundTaskWithExpirationHandler:^{ self.backgroundTaskId = [CurrentAppContext() beginBackgroundTaskWithExpirationHandler:^{
// Note the usage of OWSCAssert() to avoid capturing a reference to self. dispatch_async(dispatch_get_main_queue(), ^{
OWSCAssert([NSThread isMainThread]);
OWSBackgroundTask *strongSelf = weakSelf; OWSBackgroundTask *strongSelf = weakSelf;
if (!strongSelf) { if (!strongSelf) {
return; return;
@ -107,6 +105,7 @@
if (completionBlock) { if (completionBlock) {
completionBlock(BackgroundTaskState_Expired); completionBlock(BackgroundTaskState_Expired);
} }
});
}]; }];
// If a background task could not be begun, call the completion block. // If a background task could not be begun, call the completion block.

Loading…
Cancel
Save