[go-nuts] Constrain a type parameter to be assignable to another

2022-03-16 Thread Michael Andersen
Hi Is there a way to constrain one parameter to be assignable to another? For example, in ye olde days, I'd have: type Iface interface { // ... } type Concrete1 struct { /* ... */ } var _ Iface = &Concrete1{} type Concrete2 struct{ /* ... */ } var _ Iface = &Concrete2{} // Repeat ad nauseam

Re: [go-nuts] Goroutine scheduled 10 seconds too late

2019-08-27 Thread Michael Andersen
aylor wrote: > > > >> On Mon, Aug 26, 2019 at 2:12 PM Michael Andersen > wrote: > >> > >> I was concerned that perhaps the stacks that I dumped after the > scheduling stall did not reflect the actual PC's of the goroutines during > the stall, so I

Re: [go-nuts] Goroutine scheduled 10 seconds too late

2019-08-26 Thread Michael Andersen
Incidentally, it just happened again without involving the GC stop the world, where all 8 P's were running and had the same program counters for 4 seconds. They are the same as those in the previous email. On Mon, Aug 26, 2019 at 2:11 PM Michael Andersen wrote: > Hi > > I was

Re: [go-nuts] Goroutine scheduled 10 seconds too late

2019-08-26 Thread Michael Andersen
a simpler program that reproduces this, but thus far running time.Now in a tight loop across multiple goroutines isn't causing it. Any ideas what I could try next? Thanks Michael On Sat, Aug 24, 2019 at 9:23 PM Michael Andersen wrote: > >> >> > Out of interest what OS?

Re: [go-nuts] Goroutine scheduled 10 seconds too late

2019-08-24 Thread Michael Andersen
> > > > Out of interest what OS? > > Is the machine virtualised? > Yes, this on EC2, on m5.2xlarge (which are nitro instances with vDSO-supporting clock). I am running Linux 4.9.0 > Also, are you running a kernel with VDSO enabled? With VDSO, > `time.Now` should not be making any system calls.

Re: [go-nuts] Goroutine scheduled 10 seconds too late

2019-08-23 Thread Michael Andersen
This is built with go 1.12.5, incidentally, but I have seen this on several go versions spanning several months. On Fri, Aug 23, 2019 at 7:36 PM Michael Andersen wrote: > Ok, so I have more information, and it's not what I would expect. > > I added scheddetail=1,schedtrace=2000 s

Re: [go-nuts] Goroutine scheduled 10 seconds too late

2019-08-23 Thread Michael Andersen
too. Any ideas where to progress from here? On Fri, Aug 23, 2019 at 3:32 PM Ian Lance Taylor wrote: > On Fri, Aug 23, 2019 at 2:30 PM Michael Andersen > wrote: > > > > Are you suggesting that there might be enough unpreemtable goroutines to > fill all the P's? I

Re: [go-nuts] Goroutine scheduled 10 seconds too late

2019-08-23 Thread Michael Andersen
ff the P and creating a new M. Thanks > On Aug 23, 2019, at 4:03 PM, Michael Andersen > wrote: > > > > On Fri, Aug 23, 2019 at 1:23 PM Ronny Bangsund > wrote: > >> On Friday, August 23, 2019 at 5:58:44 PM UTC+2, Michael Andersen wrote: >>> >>> It

Re: [go-nuts] Goroutine scheduled 10 seconds too late

2019-08-23 Thread Michael Andersen
On Fri, Aug 23, 2019 at 1:23 PM Ronny Bangsund wrote: > On Friday, August 23, 2019 at 5:58:44 PM UTC+2, Michael Andersen wrote: >> >> It can take a while to reproduce, so it might be a week or so before I >> have the results. >> > Can you think of ways to cause th

Re: [go-nuts] Goroutine scheduled 10 seconds too late

2019-08-23 Thread Michael Andersen
Thanks, that's a good idea. I'll add that in. It can take a while to reproduce, so it might be a week or so before I have the results. On Thu, Aug 22, 2019 at 10:23 PM Ian Lance Taylor wrote: > On Thu, Aug 22, 2019 at 5:09 PM wrote: > > > > I have a fairly complex program that has about 150 gor

[go-nuts] Re: multiple vendored x/net causing trouble (x/net/trace panic)

2018-05-08 Thread Michael Andersen
I have also been bugged by this several times and been forced to use dep (which works). This is the only package that I have had problems with (other than cgo symbols colliding, which is a similar problem). On Monday, May 7, 2018 at 10:05:19 PM UTC-7, Alex Buchanan wrote: > > This panic has caus

[go-nuts] Re: Go routines hanging

2018-05-04 Thread Michael Andersen
When you say it hangs, do you mean that every single goroutine hangs or just some of them? If it is just some of them, I don't have any ideas, but you could try running with -race to catch deadlocks. If it is all of them then you might be running into a problem that I had where the GC suspends

[go-nuts] Re: [Advice needed] How to vendor common dependencies for plugins

2018-03-08 Thread Michael Andersen
I am interested in this problem too, especially dealing with golang.org/x/net/trace which is used by grpc which is used by multiple packages I import. On Wednesday, March 7, 2018 at 10:03:37 PM UTC-8, Jay Guo wrote: > > Golang gurus, > > I'm currently trying to modularize my project with the hel

Re: [go-nuts] All goroutines hung in futex / sleep

2018-02-23 Thread Michael Andersen
or something? Just a thought. Thanks Michael On Thu, Feb 22, 2018 at 11:09 PM, Michael Andersen wrote: > I have found that GODEBUG=schedtrace still prints when the program is > frozen but I cannot find much documentation on deciphering its output. The > full output is here: ht

Re: [go-nuts] All goroutines hung in futex / sleep

2018-02-22 Thread Michael Andersen
syscalltick=19499 m=-1 runqsize=0 gfreecnt=40 P38: status=3 schedtick=31748 syscalltick=20359 m=-1 runqsize=0 gfreecnt=35 P39: status=3 schedtick=31851 syscalltick=20260 m=-1 runqsize=0 gfreecnt=46 On Thu, Feb 22, 2018 at 8:47 PM, Michael Andersen wrote: > Hi > > Thanks for your suggesti

Re: [go-nuts] All goroutines hung in futex / sleep

2018-02-22 Thread Michael Andersen
Hi Thanks for your suggestions. This freeze happens to coincide with a larger number of cgo calls which in turn most likely do blocking read/write from sockets. How are those treated by the scheduler? I am not doing anything FUSE related, nor do I have assembly code. The only "interesting" stuff

[go-nuts] All goroutines hung in futex / sleep

2018-02-22 Thread Michael Andersen
Hi all I have a complex program that when under load will very reproducibly freeze every goroutine simultaneously. It then makes no progress at all, even if left for hours. I'm posting here because I don't know of anything that can cause this behavior so I don't even know where to begin debuggi