connect to remote grains if not found
All checks were successful
Build and Publish / BuildAndDeploy (push) Successful in 1m51s

This commit is contained in:
matst80
2024-11-10 16:58:52 +01:00
parent 5e1e9e7c84
commit 15d966aaad

View File

@@ -114,22 +114,22 @@ func (p *RemoteGrainPool) findRemoteGrain(id CartId) *RemoteGrain {
return grain return grain
} }
// func (p *RemoteGrainPool) findOrCreateGrain(id CartId) *RemoteGrain { func (p *RemoteGrainPool) findOrCreateGrain(id CartId) *RemoteGrain {
// grain := p.findRemoteGrain(id) grain := p.findRemoteGrain(id)
// if grain == nil { if grain == nil {
// grain = NewRemoteGrain(id, p.Host) grain = NewRemoteGrain(id, p.Host)
// p.mu.Lock() p.mu.Lock()
// p.grains[id] = grain p.grains[id] = grain
// p.mu.Unlock() p.mu.Unlock()
// grain.Connect() grain.Connect()
// } }
// return grain return grain
// } }
func (p *RemoteGrainPool) Process(id CartId, messages ...Message) ([]byte, error) { func (p *RemoteGrainPool) Process(id CartId, messages ...Message) ([]byte, error) {
var result []byte var result []byte
var err error var err error
grain := p.findRemoteGrain(id) grain := p.findOrCreateGrain(id)
if grain == nil { if grain == nil {
return nil, fmt.Errorf("grain not found") return nil, fmt.Errorf("grain not found")
} }
@@ -140,7 +140,7 @@ func (p *RemoteGrainPool) Process(id CartId, messages ...Message) ([]byte, error
} }
func (p *RemoteGrainPool) Get(id CartId) ([]byte, error) { func (p *RemoteGrainPool) Get(id CartId) ([]byte, error) {
grain := p.findRemoteGrain(id) grain := p.findOrCreateGrain(id)
if grain == nil { if grain == nil {
return nil, fmt.Errorf("grain not found") return nil, fmt.Errorf("grain not found")
} }