dhiaayachi / temporal

Temporal service
https://docs.temporal.io
MIT License
0 stars 0 forks source link

[Bug] Search Attribute Creation Produces an Error #403

Open dhiaayachi opened 2 months ago

dhiaayachi commented 2 months ago

What are you really trying to do?

I am trying to create a new search attribute

Describe the bug

Custom attribute creation produces the unable to add search attributes: Search attribute already exists error:

$ temporal operator search-attribute list -n production
             Name                Type      
  BatcherNamespace            Keyword      
  BatcherUser                 Keyword      
  BinaryChecksums             KeywordList  
  CloseTime                   Datetime     
  ExecutionDuration           Int          
  ExecutionStatus             Keyword      
  ExecutionTime               Datetime     
  HistoryLength               Int          
  HistorySizeBytes            Int          
  RunId                       Keyword      
  StartTime                   Datetime     
  StartedByUser               Keyword      
  StateTransitionCount        Int          
  TaskQueue                   Keyword      
  TemporalChangeVersion       KeywordList  
  TemporalNamespaceDivision   Keyword      
  TemporalSchedulePaused      Bool         
  TemporalScheduledById       Keyword      
  TemporalScheduledStartTime  Datetime     
  WorkflowId                  Keyword      
  WorkflowType                Keyword      

$ temporal operator search-attribute create -n production --name ParentWorkflowId --type Keyword
Error: unable to add search attributes: Search attribute ParentWorkflowId already exists.
Stack trace:
goroutine 1 [running]:
runtime/debug.Stack()
    /usr/local/go/src/runtime/debug/stack.go:24 +0x65
runtime/debug.PrintStack()
    /usr/local/go/src/runtime/debug/stack.go:16 +0x19
github.com/temporalio/cli/app.HandleError(0xc000b3f400?, {0x31fa880, 0xc00031c500})
    /home/builder/cli/app/app.go:77 +0x15b
github.com/urfave/cli/v2.(*App).handleExitCoder(0xc000a04dc0?, 0xc00032b700?, {0x31fa880?, 0xc00031c500?})
    /go/pkg/mod/github.com/urfave/cli/v2@v2.25.0/app.go:445 +0x38
github.com/urfave/cli/v2.(*Command).Run(0xc000a04dc0, 0xc00059c640, {0xc0009b4150, 0x7, 0x7})
    /go/pkg/mod/github.com/urfave/cli/v2@v2.25.0/command.go:275 +0xa18
github.com/urfave/cli/v2.(*Command).Run(0x45a4780, 0xc00059c580, {0xc00031ed80, 0x8, 0x8})
    /go/pkg/mod/github.com/urfave/cli/v2@v2.25.0/command.go:266 +0xc4d
github.com/urfave/cli/v2.(*Command).Run(0x45a44c0, 0xc00059c4c0, {0xc0004662d0, 0x9, 0x9})
    /go/pkg/mod/github.com/urfave/cli/v2@v2.25.0/command.go:266 +0xc4d
github.com/urfave/cli/v2.(*Command).Run(0xc000a06580, 0xc00059c380, {0xc0000500a0, 0xa, 0xa})
    /go/pkg/mod/github.com/urfave/cli/v2@v2.25.0/command.go:266 +0xc4d
github.com/urfave/cli/v2.(*App).RunContext(0xc0008281e0, {0x3217820?, 0xc00005c030}, {0xc0000500a0, 0xa, 0xa})
    /go/pkg/mod/github.com/urfave/cli/v2@v2.25.0/app.go:332 +0x616
github.com/urfave/cli/v2.(*App).Run(0x60?, {0xc0000500a0?, 0x0?, 0x0?})
    /go/pkg/mod/github.com/urfave/cli/v2@v2.25.0/app.go:309 +0x38
main.main()
    /home/builder/cli/cmd/temporal/main.go:14 +0x33
command terminated with exit code 1

$ temporal operator search-attribute list -n production
             Name                Type      
  BatcherNamespace            Keyword      
  BatcherUser                 Keyword      
  BinaryChecksums             KeywordList  
  CloseTime                   Datetime     
  ExecutionDuration           Int          
  ExecutionStatus             Keyword      
  ExecutionTime               Datetime     
  HistoryLength               Int          
  HistorySizeBytes            Int          
  ParentWorkflowId            Keyword      
  RunId                       Keyword      
  StartTime                   Datetime     
  StartedByUser               Keyword      
  StateTransitionCount        Int          
  TaskQueue                   Keyword      
  TemporalChangeVersion       KeywordList  
  TemporalNamespaceDivision   Keyword      
  TemporalSchedulePaused      Bool         
  TemporalScheduledById       Keyword      
  TemporalScheduledStartTime  Datetime     
  WorkflowId                  Keyword      
  WorkflowType                Keyword      

As you can see, a new custom search attribute is still created while producing an error

Minimal Reproduction

temporal operator search-attribute create -n production --name ParentWorkflowId --type Keyword

Environment/Versions

Additional context