mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-10-31 14:42:26 -05:00 
			
		
		
		
	replace async client API / federator msg processing with worker pools (#497)
* replace async client API / federator msg processing with worker pools * appease our lord-and-saviour, the linter
This commit is contained in:
		
					parent
					
						
							
								cc5f2e98b7
							
						
					
				
			
			
				commit
				
					
						420e2fb22b
					
				
			
		
					 64 changed files with 573 additions and 336 deletions
				
			
		|  | @ -36,6 +36,8 @@ import ( | |||
| 	"github.com/superseriousbusiness/gotosocial/internal/db" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/gtsmodel" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/id" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/messages" | ||||
| 	"github.com/superseriousbusiness/gotosocial/internal/worker" | ||||
| 	"github.com/superseriousbusiness/gotosocial/testrig" | ||||
| ) | ||||
| 
 | ||||
|  | @ -83,10 +85,13 @@ func (suite *InboxPostTestSuite) TestPostBlock() { | |||
| 	suite.NoError(err) | ||||
| 	body := bytes.NewReader(bodyJson) | ||||
| 
 | ||||
| 	tc := testrig.NewTestTransportController(testrig.NewMockHTTPClient(nil), suite.db) | ||||
| 	federator := testrig.NewTestFederator(suite.db, tc, suite.storage, suite.mediaManager) | ||||
| 	clientWorker := worker.New[messages.FromClientAPI](-1, -1) | ||||
| 	fedWorker := worker.New[messages.FromFederator](-1, -1) | ||||
| 
 | ||||
| 	tc := testrig.NewTestTransportController(testrig.NewMockHTTPClient(nil), suite.db, fedWorker) | ||||
| 	federator := testrig.NewTestFederator(suite.db, tc, suite.storage, suite.mediaManager, fedWorker) | ||||
| 	emailSender := testrig.NewEmailSender("../../../../web/template/", nil) | ||||
| 	processor := testrig.NewTestProcessor(suite.db, suite.storage, federator, emailSender, suite.mediaManager) | ||||
| 	processor := testrig.NewTestProcessor(suite.db, suite.storage, federator, emailSender, suite.mediaManager, clientWorker, fedWorker) | ||||
| 	userModule := user.New(processor).(*user.Module) | ||||
| 
 | ||||
| 	// setup request | ||||
|  | @ -183,10 +188,13 @@ func (suite *InboxPostTestSuite) TestPostUnblock() { | |||
| 	suite.NoError(err) | ||||
| 	body := bytes.NewReader(bodyJson) | ||||
| 
 | ||||
| 	tc := testrig.NewTestTransportController(testrig.NewMockHTTPClient(nil), suite.db) | ||||
| 	federator := testrig.NewTestFederator(suite.db, tc, suite.storage, suite.mediaManager) | ||||
| 	clientWorker := worker.New[messages.FromClientAPI](-1, -1) | ||||
| 	fedWorker := worker.New[messages.FromFederator](-1, -1) | ||||
| 
 | ||||
| 	tc := testrig.NewTestTransportController(testrig.NewMockHTTPClient(nil), suite.db, fedWorker) | ||||
| 	federator := testrig.NewTestFederator(suite.db, tc, suite.storage, suite.mediaManager, fedWorker) | ||||
| 	emailSender := testrig.NewEmailSender("../../../../web/template/", nil) | ||||
| 	processor := testrig.NewTestProcessor(suite.db, suite.storage, federator, emailSender, suite.mediaManager) | ||||
| 	processor := testrig.NewTestProcessor(suite.db, suite.storage, federator, emailSender, suite.mediaManager, clientWorker, fedWorker) | ||||
| 	userModule := user.New(processor).(*user.Module) | ||||
| 
 | ||||
| 	// setup request | ||||
|  | @ -273,10 +281,13 @@ func (suite *InboxPostTestSuite) TestPostUpdate() { | |||
| 	suite.NoError(err) | ||||
| 	body := bytes.NewReader(bodyJson) | ||||
| 
 | ||||
| 	tc := testrig.NewTestTransportController(testrig.NewMockHTTPClient(nil), suite.db) | ||||
| 	federator := testrig.NewTestFederator(suite.db, tc, suite.storage, suite.mediaManager) | ||||
| 	clientWorker := worker.New[messages.FromClientAPI](-1, -1) | ||||
| 	fedWorker := worker.New[messages.FromFederator](-1, -1) | ||||
| 
 | ||||
| 	tc := testrig.NewTestTransportController(testrig.NewMockHTTPClient(nil), suite.db, fedWorker) | ||||
| 	federator := testrig.NewTestFederator(suite.db, tc, suite.storage, suite.mediaManager, fedWorker) | ||||
| 	emailSender := testrig.NewEmailSender("../../../../web/template/", nil) | ||||
| 	processor := testrig.NewTestProcessor(suite.db, suite.storage, federator, emailSender, suite.mediaManager) | ||||
| 	processor := testrig.NewTestProcessor(suite.db, suite.storage, federator, emailSender, suite.mediaManager, clientWorker, fedWorker) | ||||
| 	userModule := user.New(processor).(*user.Module) | ||||
| 
 | ||||
| 	// setup request | ||||
|  | @ -392,11 +403,14 @@ func (suite *InboxPostTestSuite) TestPostDelete() { | |||
| 	suite.NoError(err) | ||||
| 	body := bytes.NewReader(bodyJson) | ||||
| 
 | ||||
| 	tc := testrig.NewTestTransportController(testrig.NewMockHTTPClient(nil), suite.db) | ||||
| 	federator := testrig.NewTestFederator(suite.db, tc, suite.storage, suite.mediaManager) | ||||
| 	clientWorker := worker.New[messages.FromClientAPI](-1, -1) | ||||
| 	fedWorker := worker.New[messages.FromFederator](-1, -1) | ||||
| 
 | ||||
| 	tc := testrig.NewTestTransportController(testrig.NewMockHTTPClient(nil), suite.db, fedWorker) | ||||
| 	federator := testrig.NewTestFederator(suite.db, tc, suite.storage, suite.mediaManager, fedWorker) | ||||
| 	emailSender := testrig.NewEmailSender("../../../../web/template/", nil) | ||||
| 	processor := testrig.NewTestProcessor(suite.db, suite.storage, federator, emailSender, suite.mediaManager) | ||||
| 	err = processor.Start(context.Background()) | ||||
| 	processor := testrig.NewTestProcessor(suite.db, suite.storage, federator, emailSender, suite.mediaManager, clientWorker, fedWorker) | ||||
| 	err = processor.Start() | ||||
| 	suite.NoError(err) | ||||
| 	userModule := user.New(processor).(*user.Module) | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue