Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consistent segmentation violation with pypa/pip and a minimal configuration #306

Open
pradyunsg opened this issue Apr 19, 2024 · 1 comment

Comments

@pradyunsg
Copy link

pradyunsg commented Apr 19, 2024

Description

When trying to use triage-party with https://github.com/pypa/pip, I'm consistently getting a SIGSEGV crash.

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x2 addr=0x0 pc=0x10563c624]

This seems to be looking up a null pointer.

How I'm reproducing this crash consistently

  1. Start a Postgres 16 server with an empty pradyunsg database (crashes happen with disk backend as well, but this is a quicker backend for me).

  2. Run:

    go run cmd/server/main.go --github-token-file=/tmp/random.out --config config/examples/pip.yaml --persist-backend=postgres --persist-path="dbname=pradyunsg sslmode=disable"
    
  3. Recieve a segmentation violation while processing pull requests.

  4. Run:

    go run cmd/server/main.go --github-token-file=/tmp/random.out --config config/examples/pip.yaml --persist-backend=postgres --persist-path="dbname=pradyunsg sslmode=disable"
    
  5. Recieve the (seemingly) same segmentation violation, while processing pull requests.

  6. Run the program again, this time under dlv debugger:

    ~/go/bin/dlv debug cmd/server/main.go -- --github-token-file=/tmp/random.out --config config/examples/pip.yaml --persist-backend=postgres --persist-path="dbname=pradyunsg sslmode=disable"
    
  7. Recieve the (seemingly) same segmentation violation, this time under the debugger.

Configuration at config/examples/pip.yaml
# Copyright 2020 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
---
settings:
  name: pip
  min_similarity: 0.8
  repos:
    - https://github.com/pypa/pip

collections:
  - id: home
    name: Home
    rules:
      - issue-needs-comment
      - needs-review

rules:
  issue-needs-comment:
    name: "Unresponded, older than 3 days"
    type: issue
    filters:
      - tag: "!commented"
      - tag: "recv"
      - created: +3d

  needs-review:
    name: "Needs Review"
    type: pull_request
    filters:
      - title: "!.*(WIP|wip).*"
      - tag: "!draft"
      - tag: "(new-commits|unreviewed)"

Additional details

Caveat: I'm not very familar with Go or this codebase, so it's very likely that the details available here are insufficient for complete diagnosis. 😅

Some exploratory looking around at the state of the program via dlv
(dlv) bt
 0  0x0000000104c33e90 in �[1mruntime.fatalpanic�[0m
    at /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/�[1mpanic.go:1217�[0m
 1  0x0000000104c3302c in �[1mruntime.gopanic�[0m
    at /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/�[1mpanic.go:779�[0m
 2  0x0000000104c32358 in �[1mruntime.panicmem�[0m
    at /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/�[1mpanic.go:261�[0m
 3  0x0000000104c4b1c0 in �[1mruntime.sigpanic�[0m
    at /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/�[1msignal_unix.go:881�[0m
 4  0x000000010563c624 in �[1mgithub.com/google/triage-party/pkg/hubbub.(*Engine).createConversation�[0m
    at ./pkg/hubbub/�[1mitem.go:164�[0m
 5  0x00000140000be050 in �[1m???�[0m
    at �[1m?:-1�[0m
 6  0x0000000105647aa8 in �[1mgithub.com/google/triage-party/pkg/hubbub.(*Engine).PRSummary�[0m
    at ./pkg/hubbub/�[1mpull_requests.go:312�[0m
 7  0x00000140000e88c0 in �[1m???�[0m
    at �[1m?:-1�[0m
 8  0x0000000105633188 in �[1mgithub.com/google/triage-party/pkg/hubbub.(*Engine).analyzePRWorker�[0m
    at ./pkg/hubbub/�[1manalyze.go:196�[0m
 9  0x00000140000dc173 in �[1m???�[0m
    at �[1m?:-1�[0m
10  0x0000000105633094 in �[1mgithub.com/google/triage-party/pkg/hubbub.(*Engine).analyzePRMatches.gowrap1�[0m
    at ./pkg/hubbub/�[1manalyze.go:172�[0m
11  0x00000140000dc173 in �[1m???�[0m
    at �[1m?:-1�[0m
    error: protocol error E08 during memory read for packet $m8,8
(truncated)
(dlv) frame
(dlv) where
(dlv) goroutines
  Goroutine 1 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/net/fd_unix.go:172 net.(*netFD).accept (0x104e74fe8) [IO wait 34930633023625]
  Goroutine 2 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/proc.go:403 runtime.gopark (0x104c364f0) [finalizer wait 34930633023625]
  Goroutine 3 - User: /Users/pradyunsg/go/pkg/mod/k8s.io/klog/[email protected]/klog.go:1107 k8s.io/klog/v2.(*loggingT).flushDaemon (0x105259c14) [chan receive 34935064438708]
  Goroutine 4 - User: /Users/pradyunsg/go/pkg/mod/[email protected]/stats/view/worker.go:292 go.opencensus.io/stats/view.(*worker).start (0x105500bf4) [select 34930633023625]
  Goroutine 5 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/database/sql/sql.go:1246 database/sql.(*DB).connectionOpener (0x10527cd9c) [select 34930633023625]
  Goroutine 10 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/proc.go:403 runtime.gopark (0x104c364f0) [debug call 34931333357416]
  Goroutine 11 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/proc.go:403 runtime.gopark (0x104c364f0) [debug call 34936873407333]
  Goroutine 12 - User: /Users/pradyunsg/go/pkg/mod/github.com/imjasonmiller/[email protected]/godice.go:33 github.com/imjasonmiller/godice.bigramsForWords (0x105630484) (thread 948877)
  Goroutine 18 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/proc.go:403 runtime.gopark (0x104c364f0) [force gc (idle) 34930633023625]
  Goroutine 19 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/proc.go:403 runtime.gopark (0x104c364f0) [GC sweep wait 34936873407333]
  Goroutine 20 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/proc.go:403 runtime.gopark (0x104c364f0) [GC scavenge wait]
  Goroutine 21 - User: /Users/pradyunsg/go/pkg/mod/github.com/patrickmn/[email protected]+incompatible/cache.go:1079 github.com/patrickmn/go-cache.(*janitor).Run (0x1055de224) [select 34930633023625]
  Goroutine 22 - User: ./pkg/hubbub/analyze.go:182 github.com/google/triage-party/pkg/hubbub.(*Engine).analyzePRMatches (0x105632d28) [chan receive]
  Goroutine 25 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/proc.go:403 runtime.gopark (0x104c364f0) [debug call 34935064438708]
  Goroutine 26 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/mgcwork.go:154 runtime.(*gcWork).putFast (0x104c22a70) (thread 949073) [unknown wait reason 27 34936873407333]
  Goroutine 27 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/mheap.go:733 runtime.pageIndexOf (0x104c23b8c) (thread 948834) [unknown wait reason 27 34936873407333]
  Goroutine 28 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/proc.go:403 runtime.gopark (0x104c364f0) [debug call 34935955626958]
  Goroutine 35 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/mgcmark.go:1650 runtime.greyobject (0x104c1bfb0) (thread 948875) [unknown wait reason 27]
  Goroutine 36 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/proc.go:403 runtime.gopark (0x104c364f0) [debug call 34936873407333]
  Goroutine 3710 - User: /Users/pradyunsg/go/pkg/mod/github.com/imjasonmiller/[email protected]/godice.go:34 github.com/imjasonmiller/godice.bigramsForWords (0x1056304f8) (thread 948874)
  Goroutine 3711 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/database/sql/ctxutil.go:48 database/sql.ctxDriverQuery (0x105276d28) (thread 948832)
  Goroutine 3712 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/net/fd_posix.go:55 net.(*netFD).Read (0x104e729e4) [IO wait]
  Goroutine 3713 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/encoding/gob/decode.go:1155 encoding/gob.(*Decoder).compileDec (0x1055151e4) (thread 948878)
  Goroutine 3778 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/encoding/gob/decode.go:1012 encoding/gob.(*Decoder).compatibleType (0x105513adc)
  Goroutine 3779 - User: /opt/homebrew/Cellar/go/1.22.2/libexec/src/net/fd_posix.go:55 net.(*netFD).Read (0x104e729e4) [IO wait]
* Goroutine 3780 - User: ./pkg/hubbub/item.go:164 github.com/google/triage-party/pkg/hubbub.(*Engine).createConversation (0x10563c624) (thread 948779)
[26 goroutines]
(dlv) threads
* Thread 948779 at 0x104c33e90 /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/panic.go:1217 runtime.fatalpanic
  Thread 948831 at :0
  Thread 948832 at 0x105276d28 /opt/homebrew/Cellar/go/1.22.2/libexec/src/database/sql/ctxutil.go:48 database/sql.ctxDriverQuery
  Thread 948833 at :0
  Thread 948834 at 0x104c23b8c /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/mheap.go:733 runtime.pageIndexOf
  Thread 948835 at :0
  Thread 948874 at 0x104c0cf6c /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/map_fast64.go:399 runtime.evacuate_fast64
  Thread 948875 at 0x104c1bfb0 /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/mgcmark.go:1650 runtime.greyobject
  Thread 948876 at :0
  Thread 948877 at 0x104c0f460 /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/mbitmap.go:321 runtime.findObject
  Thread 948878 at 0x1055151e4 /opt/homebrew/Cellar/go/1.22.2/libexec/src/encoding/gob/decode.go:1155 encoding/gob.(*Decoder).compileDec
  Thread 949073 at 0x104c22a70 /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/mgcwork.go:154 runtime.(*gcWork).putFast
  Thread 949380 at :0
(dlv) locals
(no locals)
(dlv) up
> [unrecovered-panic] runtime.fatalpanic() /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/panic.go:1217 (hits goroutine(3780):1 total:1) (PC: 0x104c33e90)
Warning: debugging optimized function
Frame 1: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/panic.go:779 (PC: 104c3302c)
   774:		// Because it is unsafe to call arbitrary user code after freezing
   775:		// the world, we call preprintpanics to invoke all necessary Error
   776:		// and String methods to prepare the panic strings before startpanic.
   777:		preprintpanics(&p)
   778:	
=> 779:		fatalpanic(&p)   // should not return
   780:		*(*int)(nil) = 0 // not reached
   781:	}
   782:	
   783:	// start initializes a panic to start unwinding the stack.
   784:	//
(dlv) up
> [unrecovered-panic] runtime.fatalpanic() /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/panic.go:1217 (hits goroutine(3780):1 total:1) (PC: 0x104c33e90)
Warning: debugging optimized function
Frame 2: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/panic.go:261 (PC: 104c32358)
   256:	
   257:	var memoryError = error(errorString("invalid memory address or nil pointer dereference"))
   258:	
   259:	func panicmem() {
   260:		panicCheck2("invalid memory address or nil pointer dereference")
=> 261:		panic(memoryError)
   262:	}
   263:	
   264:	func panicmemAddr(addr uintptr) {
   265:		panicCheck2("invalid memory address or nil pointer dereference")
   266:		panic(errorAddressString{msg: "invalid memory address or nil pointer dereference", addr: addr})
(dlv) up
> [unrecovered-panic] runtime.fatalpanic() /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/panic.go:1217 (hits goroutine(3780):1 total:1) (PC: 0x104c33e90)
Warning: debugging optimized function
Frame 3: /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/signal_unix.go:881 (PC: 104c4b1c0)
   876:			}
   877:			print("unexpected fault address ", hex(gp.sigcode1), "\n")
   878:			throw("fault")
   879:		case _SIGSEGV:
   880:			if (gp.sigcode0 == 0 || gp.sigcode0 == _SEGV_MAPERR || gp.sigcode0 == _SEGV_ACCERR) && gp.sigcode1 < 0x1000 {
=> 881:				panicmem()
   882:			}
   883:			// Support runtime/debug.SetPanicOnFault.
   884:			if gp.paniconfault {
   885:				panicmemAddr(gp.sigcode1)
   886:			}
(dlv) up
> [unrecovered-panic] runtime.fatalpanic() /opt/homebrew/Cellar/go/1.22.2/libexec/src/runtime/panic.go:1217 (hits goroutine(3780):1 total:1) (PC: 0x104c33e90)
Warning: debugging optimized function
Frame 4: ./pkg/hubbub/item.go:164 (PC: 10563c624)
   159:						lastQuestion = c.Created
   160:					}
   161:				}
   162:			}
   163:	
=> 164:			if !seenCommenters[*c.User.Login] {
   165:				co.Commenters = append(co.Commenters, c.User)
   166:				seenCommenters[*c.User.Login] = true
   167:			}
   168:		}
   169:	
(dlv) locals
authorIsMember = true
co = ("*github.com/google/triage-party/pkg/hubbub.Conversation")(0x1400b01e268)
urlParts = []string len: 0, cap: 1374669619312, []
lastQuestion = time.Time(0001-01-01T00:01:36Z){wall: 1374570131584, ext: 96, loc: *time.Location nil}
seenCommenters = map[string]bool [...]
seenClosedCommenters = map[string]bool [...]
seenMemberComment = true
c = ("*github.com/google/triage-party/pkg/provider.Comment")(0x104c1c4fc)
r = ("*github.com/google/triage-party/pkg/provider.Reactions")(0x1400b01e488)
(dlv) *c
(dlv) p *c
github.com/google/triage-party/pkg/provider.Comment {
	User: *github.com/google/triage-party/pkg/provider.User {
		Login: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		ID: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		NodeID: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		AvatarURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		HTMLURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		GravatarID: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Name: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Company: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Blog: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Location: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Email: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Hireable: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Bio: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		PublicRepos: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		PublicGists: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Followers: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Following: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		CreatedAt: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		UpdatedAt: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		SuspendedAt: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Type: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		SiteAdmin: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		TotalPrivateRepos: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		OwnedPrivateRepos: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		PrivateGists: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		DiskUsage: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Collaborators: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		TwoFactorAuthentication: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		LdapDn: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		URL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		EventsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		FollowingURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		FollowersURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		GistsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		OrganizationsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		ReceivedEventsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		ReposURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		StarredURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		SubscriptionsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
		Permissions: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),},
	Created: time.Time(1908-06-03T01:19:11Z, +6052841760110936127){
		wall: 10016850013157589027,
		ext: 6052841760110936127,
		loc: *(*time.Location)(0x8a02008438616864),},
	Updated: time.Time(2062-01-15T12:35:26Z, -8070282190115569309){
		wall: 15222198091810668641,
		ext: -8070282190115569309,
		loc: *(*time.Location)(0x3600008339625b63),},
	Body: (unreadable could not read string at 0xaa02006338e23023 due to protocol error E08 during memory read for packet $maa02006338e23023,4...),
	AuthorAssoc: (unreadable invalid length: -486358515837829189),
	Reactions: *github.com/google/triage-party/pkg/provider.Reactions {
		TotalCount: (unreadable protocol error E08 during memory read for packet $m9400a6f6f9406820,4...),
		PlusOne: (unreadable protocol error E08 during memory read for packet $m9400a6f6f9406820,4...),
		MinusOne: (unreadable protocol error E08 during memory read for packet $m9400a6f6f9406820,4...),
		Laugh: (unreadable protocol error E08 during memory read for packet $m9400a6f6f9406820,4...),
		Confused: (unreadable protocol error E08 during memory read for packet $m9400a6f6f9406820,4...),
		Heart: (unreadable protocol error E08 during memory read for packet $m9400a6f6f9406820,4...),
		Hooray: (unreadable protocol error E08 during memory read for packet $m9400a6f6f9406820,4...),
		URL: (unreadable protocol error E08 during memory read for packet $m9400a6f6f9406820,4...),},
	ReviewID: -483793907054804965,}
(dlv) p *c.User.Login
(dlv) p *c.User
github.com/google/triage-party/pkg/provider.User {
	Login: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	ID: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	NodeID: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	AvatarURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	HTMLURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	GravatarID: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Name: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Company: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Blog: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Location: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Email: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Hireable: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Bio: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	PublicRepos: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	PublicGists: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Followers: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Following: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	CreatedAt: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	UpdatedAt: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	SuspendedAt: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Type: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	SiteAdmin: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	TotalPrivateRepos: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	OwnedPrivateRepos: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	PrivateGists: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	DiskUsage: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Collaborators: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	TwoFactorAuthentication: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	LdapDn: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	URL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	EventsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	FollowingURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	FollowersURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	GistsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	OrganizationsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	ReceivedEventsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	ReposURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	StarredURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	SubscriptionsURL: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),
	Permissions: (unreadable protocol error E08 during memory read for packet $md28080033980001b,1...),}
(dlv) whatis *c.User
github.com/google/triage-party/pkg/provider.User
(dlv) whatis *c.User.Login
(dlv) regs
 PC = 0x000000010563c624
 SP = 0x000001400b01e090
X29 = 0x000001400b01e098
X30 = 0x000000010563c624

(dlv) args
h = ("*github.com/google/triage-party/pkg/hubbub.Engine")(0x1400b01eea8)
i = (unreadable could not resolve interface type)
cs = []*github.com/google/triage-party/pkg/provider.Comment len: 1374552362240, cap: 1374504147712, [...]
age = time.Time(0001-01-01T00:00:32Z){wall: 24, ext: 32, loc: (*time.Location)(0x35dd0060)}
~r0 = ("*github.com/google/triage-party/pkg/hubbub.Conversation")(0x1)
(dlv) transcript -off

I also have a 4.43 GB core dump/memory dump of the program at the crash, generated with dump <file> in dlv -- I expect that is not going to be particularly easy to transfer (although, it'll have basically everything someone might need to understand the crash, hopefully). If one of the maintainers has interest in me sharing that, I can look into ways to share that (I've revoked the relevant GitHub token used for that execution, so it should be safe to share).

I'm also happy to respond to "do X to give me more information" style requests, in case that would be useful in trying to diagnose this issue. :)

@pradyunsg
Copy link
Author

It looks like pypa/pip#12388 (comment) is the problematic comment for createConversation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant