Syuparn
Syuparn
I got stuck on the same error and found a document about upsert in PostgreSQL. https://entgo.io/docs/crud/#upsert-one
@yaron2 This line seems to cause memory leak. `p.referenceCount[conn]` and `p.pool[address]` should be deleted once conn closed. (I have not tried memory leak repro yet though) https://github.com/dapr/dapr/blob/v1.8.2/pkg/grpc/grpc.go#L228
@yaron2 When a connection is recreated, a stream should also be recreated because its made from the connection. Can we resend the frame from another stream?
I made an experiment of referenceCount I mentioned first. https://github.com/dapr/dapr/blob/v1.8.2/pkg/grpc/proxy/handler.go#L128 Even though connections are closed by `teardown()`, they are kept in the referenceCount keys. ```go func TestGetGRPCConnectionPool(t *testing.T) { m...
> > @yaron2 When a connection is recreated, a stream should also be recreated because its made from the connection. Can we resend the frame from another stream? > >...
(I'm not a commiter of Praat though) `variableExists` can be used to check whether it is defined. ```praat tier["word"] = 4 if variableExists("tier[""word""]") appendInfoLine: "yes" endif
@imzhongqi That's right. However, reflection are evaluated at runtime. This generic type conversion is type-safe at compile time.
@imzhongqi My PR implementation is similar yours. https://github.com/samber/lo/pull/340/files Switch is used instead of type assertion though.
I agree with you. `isIndex()` is more straightforward and easy to understand.
concurrent writes occur when `t.handler` writes response just after `c.Writer` is changed for `t.response()`. https://github.com/gin-contrib/timeout/blob/master/timeout.go#L88 Since writer is changed to the original one, lock does not work on this line.