slachiewicz commented on PR #3778:
URL: https://github.com/apache/thrift/pull/3778#issuecomment-5505961067

   A real-world IDL that hits this: Apache Hive's `hive_metastore.thrift` (tag 
`rel/release-4.2.1`) declares `SkewedInfo.skewedColValueLocationMaps` as 
`map<list<string>, string>`, and the released Go generator aborts on the whole 
file:
   
   ```
   [FAILURE:generation:1] Error: Cannot produce a valid type for a Go map key: 
[]string - aborting.
   ```
   
   A pure-Go metastore client currently has to strip that field from the IDL 
before generating. With this branch's compiler the pristine IDL generates, and 
the field becomes `[]thrift.MapEntry[[]string, string]`.
   
   Verified: `thrift -r --gen go -out gen hive_metastore.thrift` (built from 
this PR's head) → exit 0; `go build ./gen/...` against this branch's `lib/go` → 
clean.
   
   The only other thing that keeps that IDL from building for Go is unrelated 
to this change: three fields literally named `isSetQueryParallelism`, 
`isSetDefaultPoolPath` and `isSetSchedulingPolicy` collide with the generated 
`IsSetX()` accessors. I will file that separately.
   
   *This comment was created with AI assistance.*
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to