Re: [go-nuts] runtime: invalid pc-encoded table (invalid runtime symbol table)

2018-08-30 Thread Ewan Walker
ctx, cancel := context.WithTimeout(context.Background(), 3*time.Minute)

reader, err := object.NewReader(ctx)
if err != nil {
//handle
}

Likely then an issue with the cloud storage library when it needs to retry! 
That is what I had figured... I'm going to have to open an issue there.

On Thursday, August 30, 2018 at 4:26:47 PM UTC-4, Borman, Paul wrote:
>
> Looks like a nil context? 
>
> vendor/cloud.google.com/go/storage.runWithRetry.func1(0x0, 0x0, 
> 0xc450328a20)
>
> 100  err = runWithRetry(ctx, func() error {
>
> -Paul
>
> On Aug 30, 2018, at 1:05 PM, Ewan Walker  > wrote:
>
> I've been trying to trace a crash (seemingly from a dependency) for quite 
> some time: 
>
> panic: runtime error: invalid memory address or nil pointer dereference
> [signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x656492]
>
>
> goroutine 86 [running]:
> net/http.(*Client).deadline(0x0, 0xc42e2dc0b0, 0xc420456be0, 0x0)
> /usr/local/go/src/net/http/client.go:189 +0x22
> net/http.(*Client).Do(0x0, 0xc42054c800, 0xc43631e237, 0x1, 0xc450328900)
> /usr/local/go/src/net/http/client.go:500 +0x86
> vendor/cloud.google.com/go/storage.(*ObjectHandle).NewRangeReader.func2.1(0xc450328988,
>  
> 0x5da16f)
> /src/vendor/cloud.google.com/go/storage/reader.go:100 +0x64
> vendor/cloud.google.com/go/storage.runWithRetry.func1(0x0, 0x0, 
> 0xc450328a20)
> /src/vendor/cloud.google.com/go/storage/invoke.go:27 +0x2a
> vendor/cloud.google.com/go/internal.retry(0x7ff670cac2a8, 0xc45032cde0, 
> 0x0, 0x0, 0x0, 0x0, 0xc450328aa8, 0xd1b648, 0xc42005dc00, 0x688335)
> /src/vendor/cloud.google.com/go/internal/retry.go:39 +0x4c
> vendor/cloud.google.com/go/internal.Retry(0x7ff670cac2a8, 0xc45032cde0, 
> 0x0, 0x0, 0x0, 0x0, 0xc450328aa8, 0x80, 0x80)
> /src/vendor/cloud.google.com/go/internal/retry.go:32 +0x82
> vendor/cloud.google.com/go/storage.runWithRetry(0x7ff670cac2a8, 
> 0xc45032cde0, 0xc450328b88, 0xc42005dc00, 0xc4205ca800)
> /src/vendor/cloud.google.com/go/storage/invoke.go:26 +0x73
> vendor/cloud.google.com/go/storage.(*ObjectHandle).NewRangeReader.func2(0x0, 
> 0xc420456b80, 0x0, 0x0)
> /src/vendor/cloud.google.com/go/storage/reader.go:99 +0x125
> vendor/cloud.google.com/go/storage.(*ObjectHandle).NewRangeReader(0xc445af0210,
>  
> 0x7ff670cac2a8, 0xc45032cde0, 0x0, 0x, 0x0, 0xc43b62a600, 
> 0x7ff670c5f1d0)
> /src/vendor/cloud.google.com/go/storage/reader.go:129 +0x5bf
> vendor/cloud.google.com/go/storage.(*ObjectHandle).NewReader(0xc445af0210, 
> 0x7ff670c5f1d0, 0xc43b62a660, 0x7ff670c5f1d0, 0xc43b62a660, 0xc43cbc4690)
> /src/vendor/cloud.google.com/go/storage/reader.go:42 +0x51
> project/storage/cloud.(*Client).Download(0xc4204f69f0, 0xc429129f00, 0x13, 
> 0xcea887, 0x6, 0xc4205ff798, 0x8, 0x0, 0xc420335080, 0x18)
> /src/project/storage/cloud/client.go:306 +0x3e2
> project/storage/retention.insert.download(0xc420018600, 0x0, 0x0, 
> 0xbed7eea2f2ff5d40, 0x98b539fed9f, 0x11f7e60)
> /src/project/storage/retention/insert.go:303 +0x96
> project/storage/retention.(*insert).Run(0xc4220f60c0, 0x0, 0x0)
> /src/project/storage/retention/insert.go:82 +0x2a7
> project/storage/retention.(*repair).Run(0xc42000e580, 0x98b539bca2f, 
> 0x11f7e60)
> /src/project/storage/retention/repair.go:62 +0x7e9
> project/storage/retention.(*Client).sync(0xc42052e150, 0xc42025, 0x1f, 
> 0x20, 0x0, 0x0)
> /src/project/storage/retention/client.go:371 +0x2cb
> project/storage/retention.(*Client).Run(0xc42052e150, 0x0, 0x0)
> /src/project/storage/retention/client.go:222 +0x137
> project/storage.Engine.retention(0xc4200b9d80, 0xc4201d9e00, 0xc42052e150, 
> 0xc4200b7630)
> /src/project/storage/engine.go:90 +0x43
> created by project/storage.New
> /src/project/storage/engine.go:55 +0x270
>
>
> To prevent the problem I've added a defer'd recover to try to catch the 
> exception, however now I'm getting:
>
>
> runtime: invalid pc-encoded table f=net/http.(*conn).readRequest 
> pc=0x6934d3 targetpc=0x6934da tab=[0/0]0x0
> value=0 until pc=0x692812
> value=304 until pc=0x692bcb
> value=0 until pc=0x692bcc
> value=304 until pc=0x692c76
> value=0 until pc=0x692c77
> value=304 until pc=0x692f96
> value=0 until pc=0x692f97
> value=304 until pc=0x693114
> value=0 until pc=0x693115
> value=304 until pc=0x693154
> value=0 until pc=0x693155
> value=304 until pc=0x6931bc
> value=0 until pc=0x6931bd
> value=304 until pc=0x6932c1
> value=0 until pc=0x6932c2
> value=304 until pc=0x693316
> value=0 until pc=0x693317
> value=304 until pc=0x693338
> value=0 until pc=0x693339
> value=304 until pc=0x6933ef
> value=0 until pc=0x6933f0
> value=304 until pc=0x6934c8
> value=0 until pc=0x6934d3
> fatal error: invalid runtime symbol table
>
> 

Re: [go-nuts] runtime: invalid pc-encoded table (invalid runtime symbol table)

2018-08-30 Thread 'Borman, Paul' via golang-nuts
Looks like a nil context?

vendor/cloud.google.com/go/storage.runWithRetry.func1(0x0,
 0x0, 0xc450328a20)

100  err = runWithRetry(ctx, func() error {

-Paul

On Aug 30, 2018, at 1:05 PM, Ewan Walker 
mailto:e...@grandslammedia.com>> wrote:

I've been trying to trace a crash (seemingly from a dependency) for quite some 
time:

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x656492]


goroutine 86 [running]:
net/http.(*Client).deadline(0x0, 0xc42e2dc0b0, 0xc420456be0, 0x0)
/usr/local/go/src/net/http/client.go:189 +0x22
net/http.(*Client).Do(0x0, 0xc42054c800, 0xc43631e237, 0x1, 0xc450328900)
/usr/local/go/src/net/http/client.go:500 +0x86
vendor/cloud.google.com/go/storage.(*ObjectHandle).NewRangeReader.func2.1(0xc450328988,
 0x5da16f)

/src/vendor/cloud.google.com/go/storage/reader.go:100
 +0x64
vendor/cloud.google.com/go/storage.runWithRetry.func1(0x0,
 0x0, 0xc450328a20)

/src/vendor/cloud.google.com/go/storage/invoke.go:27
 +0x2a
vendor/cloud.google.com/go/internal.retry(0x7ff670cac2a8,
 0xc45032cde0, 0x0, 0x0, 0x0, 0x0, 0xc450328aa8, 0xd1b648, 0xc42005dc00, 
0x688335)

/src/vendor/cloud.google.com/go/internal/retry.go:39
 +0x4c
vendor/cloud.google.com/go/internal.Retry(0x7ff670cac2a8,
 0xc45032cde0, 0x0, 0x0, 0x0, 0x0, 0xc450328aa8, 0x80, 0x80)

/src/vendor/cloud.google.com/go/internal/retry.go:32
 +0x82
vendor/cloud.google.com/go/storage.runWithRetry(0x7ff670cac2a8,
 0xc45032cde0, 0xc450328b88, 0xc42005dc00, 0xc4205ca800)

/src/vendor/cloud.google.com/go/storage/invoke.go:26
 +0x73
vendor/cloud.google.com/go/storage.(*ObjectHandle).NewRangeReader.func2(0x0,
 0xc420456b80, 0x0, 0x0)

/src/vendor/cloud.google.com/go/storage/reader.go:99
 +0x125
vendor/cloud.google.com/go/storage.(*ObjectHandle).NewRangeReader(0xc445af0210,
 0x7ff670cac2a8, 0xc45032cde0, 0x0, 0x, 0x0, 0xc43b62a600, 
0x7ff670c5f1d0)

/src/vendor/cloud.google.com/go/storage/reader.go:129
 +0x5bf
vendor/cloud.google.com/go/storage.(*ObjectHandle).NewReader(0xc445af0210,
 0x7ff670c5f1d0, 0xc43b62a660, 0x7ff670c5f1d0, 0xc43b62a660, 0xc43cbc4690)

/src/vendor/cloud.google.com/go/storage/reader.go:42
 +0x51
project/storage/cloud.(*Client).Download(0xc4204f69f0, 0xc429129f00, 0x13, 
0xcea887, 0x6, 0xc4205ff798, 0x8, 0x0, 0xc420335080, 0x18)
/src/project/storage/cloud/client.go:306 +0x3e2
project/storage/retention.insert.download(0xc420018600, 0x0, 0x0, 
0xbed7eea2f2ff5d40, 0x98b539fed9f, 0x11f7e60)
/src/project/storage/retention/insert.go:303 +0x96
project/storage/retention.(*insert).Run(0xc4220f60c0, 0x0, 0x0)
/src/project/storage/retention/insert.go:82 +0x2a7
project/storage/retention.(*repair).Run(0xc42000e580, 0x98b539bca2f, 0x11f7e60)
/src/project/storage/retention/repair.go:62 +0x7e9
project/storage/retention.(*Client).sync(0xc42052e150, 0xc42025, 0x1f, 
0x20, 0x0, 0x0)
/src/project/storage/retention/client.go:371 +0x2cb
project/storage/retention.(*Client).Run(0xc42052e150, 0x0, 0x0)
/src/project/storage/retention/client.go:222 +0x137
project/storage.Engine.retention(0xc4200b9d80, 0xc4201d9e00, 0xc42052e150, 
0xc4200b7630)
/src/project/storage/engine.go:90 +0x43
created by project/storage.New
/src/project/storage/engine.go:55 +0x270


To prevent the problem I've added a defer'd recover to try to catch the 
exception, however now I'm getting:


runtime: invalid pc-encoded table f=net/http.(*conn).readRequest pc=0x6934d3 
targetpc=0x6934da tab=[0/0]0x0
value=0 until pc=0x692812
value=304 until pc=0x692bcb
value=0 until pc=0x692bcc
value=304 until pc=0x692c76
value=0 until pc=0x692c77
value=304 until pc=0x692f96
value=0 until pc=0x692f97
value=304 until pc=0x693114
value=0 until pc=0x693115
value=304 until pc=0x693154
value=0 until pc=0x693155
value=304 until pc=0x6931bc
value=0 until pc=0x6931bd
value=304 until pc=0x6932c1
value=0 until pc=0x6932c2
value=304 until pc=0x693316
value=0 until 

[go-nuts] runtime: invalid pc-encoded table (invalid runtime symbol table)

2018-08-30 Thread Ewan Walker
I've been trying to trace a crash (seemingly from a dependency) for quite 
some time:

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x656492]


goroutine 86 [running]:
net/http.(*Client).deadline(0x0, 0xc42e2dc0b0, 0xc420456be0, 0x0)
/usr/local/go/src/net/http/client.go:189 +0x22
net/http.(*Client).Do(0x0, 0xc42054c800, 0xc43631e237, 0x1, 0xc450328900)
/usr/local/go/src/net/http/client.go:500 +0x86
vendor/cloud.google.com/go/storage.(*ObjectHandle).NewRangeReader.func2.1(0xc450328988,
 
0x5da16f)
/src/vendor/cloud.google.com/go/storage/reader.go:100 +0x64
vendor/cloud.google.com/go/storage.runWithRetry.func1(0x0, 0x0, 
0xc450328a20)
/src/vendor/cloud.google.com/go/storage/invoke.go:27 +0x2a
vendor/cloud.google.com/go/internal.retry(0x7ff670cac2a8, 0xc45032cde0, 
0x0, 0x0, 0x0, 0x0, 0xc450328aa8, 0xd1b648, 0xc42005dc00, 0x688335)
/src/vendor/cloud.google.com/go/internal/retry.go:39 +0x4c
vendor/cloud.google.com/go/internal.Retry(0x7ff670cac2a8, 0xc45032cde0, 
0x0, 0x0, 0x0, 0x0, 0xc450328aa8, 0x80, 0x80)
/src/vendor/cloud.google.com/go/internal/retry.go:32 +0x82
vendor/cloud.google.com/go/storage.runWithRetry(0x7ff670cac2a8, 
0xc45032cde0, 0xc450328b88, 0xc42005dc00, 0xc4205ca800)
/src/vendor/cloud.google.com/go/storage/invoke.go:26 +0x73
vendor/cloud.google.com/go/storage.(*ObjectHandle).NewRangeReader.func2(0x0, 
0xc420456b80, 0x0, 0x0)
/src/vendor/cloud.google.com/go/storage/reader.go:99 +0x125
vendor/cloud.google.com/go/storage.(*ObjectHandle).NewRangeReader(0xc445af0210, 
0x7ff670cac2a8, 0xc45032cde0, 0x0, 0x, 0x0, 0xc43b62a600, 
0x7ff670c5f1d0)
/src/vendor/cloud.google.com/go/storage/reader.go:129 +0x5bf
vendor/cloud.google.com/go/storage.(*ObjectHandle).NewReader(0xc445af0210, 
0x7ff670c5f1d0, 0xc43b62a660, 0x7ff670c5f1d0, 0xc43b62a660, 0xc43cbc4690)
/src/vendor/cloud.google.com/go/storage/reader.go:42 +0x51
project/storage/cloud.(*Client).Download(0xc4204f69f0, 0xc429129f00, 0x13, 
0xcea887, 0x6, 0xc4205ff798, 0x8, 0x0, 0xc420335080, 0x18)
/src/project/storage/cloud/client.go:306 +0x3e2
project/storage/retention.insert.download(0xc420018600, 0x0, 0x0, 
0xbed7eea2f2ff5d40, 0x98b539fed9f, 0x11f7e60)
/src/project/storage/retention/insert.go:303 +0x96
project/storage/retention.(*insert).Run(0xc4220f60c0, 0x0, 0x0)
/src/project/storage/retention/insert.go:82 +0x2a7
project/storage/retention.(*repair).Run(0xc42000e580, 0x98b539bca2f, 
0x11f7e60)
/src/project/storage/retention/repair.go:62 +0x7e9
project/storage/retention.(*Client).sync(0xc42052e150, 0xc42025, 0x1f, 
0x20, 0x0, 0x0)
/src/project/storage/retention/client.go:371 +0x2cb
project/storage/retention.(*Client).Run(0xc42052e150, 0x0, 0x0)
/src/project/storage/retention/client.go:222 +0x137
project/storage.Engine.retention(0xc4200b9d80, 0xc4201d9e00, 0xc42052e150, 
0xc4200b7630)
/src/project/storage/engine.go:90 +0x43
created by project/storage.New
/src/project/storage/engine.go:55 +0x270


To prevent the problem I've added a defer'd recover to try to catch the 
exception, however now I'm getting:


runtime: invalid pc-encoded table f=net/http.(*conn).readRequest 
pc=0x6934d3 targetpc=0x6934da tab=[0/0]0x0
value=0 until pc=0x692812
value=304 until pc=0x692bcb
value=0 until pc=0x692bcc
value=304 until pc=0x692c76
value=0 until pc=0x692c77
value=304 until pc=0x692f96
value=0 until pc=0x692f97
value=304 until pc=0x693114
value=0 until pc=0x693115
value=304 until pc=0x693154
value=0 until pc=0x693155
value=304 until pc=0x6931bc
value=0 until pc=0x6931bd
value=304 until pc=0x6932c1
value=0 until pc=0x6932c2
value=304 until pc=0x693316
value=0 until pc=0x693317
value=304 until pc=0x693338
value=0 until pc=0x693339
value=304 until pc=0x6933ef
value=0 until pc=0x6933f0
value=304 until pc=0x6934c8
value=0 until pc=0x6934d3
fatal error: invalid runtime symbol table

goroutine 0 [idle]:
runtime: unexpected return pc for runtime.sigtramp called from 
0x7f406d73a390
stack: frame={sp:0xc42050fa68, fp:0xc42050fac0} 
stack=[0xc420508000,0xc42051)
00c42050f968:    
00c42050f978:    0001
00c42050f988:  00c4205d0760  00c4201ed610
00c42050f998:  00c42050fbf0  00c42050fac0
00c42050f9a8:  00c42050fa58  00441dfc 

00c42050f9b8:  00c4001b  00c42050fbf0
00c42050f9c8:  00c42050fac0  00c42031be00
00c42050f9d8:    0081e810 

00c42050f9e8:    
00c42050f9f8:    
00c42050fa08: