Succeeded on serveral movies but then crashed with an OOM error on a 1.789GB file. I know it has succeeded doing a 1.505GB file previously, but it's possible there is a leak somewhere that after uploding several movies it accumulates.
runtime stack:
runtime.throw(0x945e85, 0x16)
/usr/local/go/src/runtime/panic.go:608 +0x72
runtime.sysMap(0xc160000000, 0xec000000, 0xd32478)
/usr/local/go/src/runtime/mem_linux.go:156 +0xc7
runtime.(*mheap).sysAlloc(0xd19120, 0xec000000, 0x7f2a49927aa0, 0x7f2a276bad38)
/usr/local/go/src/runtime/malloc.go:619 +0x1c7
runtime.(*mheap).grow(0xd19120, 0x75520, 0x0)
/usr/local/go/src/runtime/mheap.go:920 +0x42
runtime.(*mheap).allocSpanLocked(0xd19120, 0x75520, 0xd32488, 0x20300000000000)
/usr/local/go/src/runtime/mheap.go:848 +0x337
runtime.(*mheap).alloc_m(0xd19120, 0x75520, 0xffffffffffff0101, 0x7f2a276bae18)
/usr/local/go/src/runtime/mheap.go:692 +0x119
runtime.(*mheap).alloc.func1()
/usr/local/go/src/runtime/mheap.go:759 +0x4c
runtime.(*mheap).alloc(0xd19120, 0x75520, 0x7f2a49010101, 0x7f2a49916240)
/usr/local/go/src/runtime/mheap.go:758 +0x8a
runtime.largeAlloc(0xeaa3eeb8, 0x8a0101, 0x8ab6a0)
/usr/local/go/src/runtime/malloc.go:1019 +0x97
runtime.mallocgc.func1()
/usr/local/go/src/runtime/malloc.go:914 +0x46
runtime.systemstack(0x0)
/usr/local/go/src/runtime/asm_amd64.s:351 +0x66
runtime.mstart()
/usr/local/go/src/runtime/proc.go:1229
goroutine 1 [running]:
runtime.systemstack_switch()
/usr/local/go/src/runtime/asm_amd64.s:311 fp=0xc001c55218 sp=0xc001c55210 pc=0x456d40
runtime.mallocgc(0xeaa3eeb8, 0x883ae0, 0x40d601, 0xc001c552f0)
/usr/local/go/src/runtime/malloc.go:913 +0x896 fp=0xc001c552b8 sp=0xc001c55218 pc=0x40dc06
runtime.makeslice(0x883ae0, 0xeaa3eeb8, 0xeaa3eeb8, 0x8, 0x68, 0xc001c6e2a0)
/usr/local/go/src/runtime/slice.go:70 +0x77 fp=0xc001c552e8 sp=0xc001c552b8 pc=0x442257
bytes.makeSlice(0xeaa3eeb8, 0x0, 0x0, 0x0)
/usr/local/go/src/bytes/buffer.go:231 +0x6d fp=0xc001c55328 sp=0xc001c552e8 pc=0x4d8ced
bytes.(*Buffer).grow(0xc001c6e2a0, 0xeaa3eeb8, 0xc001c553a8)
/usr/local/go/src/bytes/buffer.go:144 +0x15a fp=0xc001c55378 sp=0xc001c55328 pc=0x4d865a
bytes.(*Buffer).Grow(0xc001c6e2a0, 0xeaa3eeb8)
/usr/local/go/src/bytes/buffer.go:163 +0x3a fp=0xc001c553a0 sp=0xc001c55378 pc=0x4d880a
io/ioutil.readAll(0x9c0060, 0xc000166410, 0xeaa3eeb8, 0x0, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/io/ioutil/ioutil.go:34 +0x93 fp=0xc001c553e8 sp=0xc001c553a0 pc=0x50b933
io/ioutil.ReadFile(0xc0019fc7e0, 0x2a, 0x0, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/io/ioutil/ioutil.go:73 +0xd3 fp=0xc001c55440 sp=0xc001c553e8 pc=0x50bb43
github.com/nmrshll/gphotos-uploader-cli/utils/filesystem.BufferFromFile(0xc0019fc7e0, 0x2a, 0x2b, 0xc001c55518, 0x434efc, 0xc000000480, 0x300000002)
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/utils/filesystem/filesystem.go:45 +0x6e fp=0xc001c554c8 sp=0xc001c55440 pc=0x70e10e
github.com/nmrshll/gphotos-uploader-cli/fileshandling.IsImage(0xc0019fc7e0, 0x2a, 0x0)
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/fileshandling/file.go:28 +0x50 fp=0xc001c556c0 sp=0xc001c554c8 pc=0x79d630
github.com/nmrshll/gphotos-uploader-cli/fileshandling.IsMedia(0xc0019fc7e0, 0x2a, 0xc0019fc801)
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/fileshandling/file.go:50 +0x35 fp=0xc001c556e8 sp=0xc001c556c0 pc=0x79de65
github.com/nmrshll/gphotos-uploader-cli/upload.(*FolderUploadJob).Upload.func1(0xc0019fc7e0, 0x2a, 0x9c6360, 0xc0001701a0, 0x0, 0x0, 0xc, 0xc001c55828)
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/upload/folderUploadJob.go:111 +0xc1 fp=0xc001c557a0 sp=0xc001c556e8 pc=0x7d8f11
path/filepath.walk(0xc0019fc7e0, 0x2a, 0x9c6360, 0xc0001701a0, 0xc000594d30, 0x0, 0x0)
/usr/local/go/src/path/filepath/path.go:358 +0x41c fp=0xc001c55878 sp=0xc001c557a0 pc=0x50b0ec
path/filepath.walk(0xc001ac8080, 0x1d, 0x9c6360, 0xc00008d1e0, 0xc000594d30, 0x0, 0x0)
/usr/local/go/src/path/filepath/path.go:382 +0x2fe fp=0xc001c55950 sp=0xc001c55878 pc=0x50afce
path/filepath.walk(0xc001ae0580, 0x1a, 0x9c6360, 0xc000170820, 0xc000594d30, 0x0, 0x0)
/usr/local/go/src/path/filepath/path.go:382 +0x2fe fp=0xc001c55a28 sp=0xc001c55950 pc=0x50afce
path/filepath.walk(0xc000026680, 0x15, 0x9c6360, 0xc0005965b0, 0xc000594d30, 0x0, 0x10)
/usr/local/go/src/path/filepath/path.go:382 +0x2fe fp=0xc001c55b00 sp=0xc001c55a28 pc=0x50afce
path/filepath.Walk(0xc000026680, 0x15, 0xc000594d30, 0x15, 0x0)
/usr/local/go/src/path/filepath/path.go:404 +0x105 fp=0xc001c55b60 sp=0xc001c55b00 pc=0x50b225
github.com/nmrshll/gphotos-uploader-cli/upload.(*FolderUploadJob).Upload(0xc00000c020, 0xc00014c060, 0xc00000c020)
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/upload/folderUploadJob.go:103 +0xea fp=0xc001c55bf0 sp=0xc001c55b60 pc=0x7d8baa
main.startUploader(0xc0000b7900, 0xd309b8, 0x0, 0x0)
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/cmd/gphotos-uploader-cli/main.go:38 +0x218 fp=0xc001c55ce0 sp=0xc001c55bf0 pc=0x832308
github.com/spf13/cobra.(*Command).execute(0xc0000b7900, 0xc00001e1b0, 0x0, 0x0, 0xc0000b7900, 0xc00001e1b0)
/home/nick/go/src/github.com/spf13/cobra/command.go:766 +0x2cc fp=0xc001c55dd0 sp=0xc001c55ce0 pc=0x82a28c
github.com/spf13/cobra.(*Command).ExecuteC(0xc0000b7900, 0x2, 0x0, 0xc00012e000)
/home/nick/go/src/github.com/spf13/cobra/command.go:852 +0x2fd fp=0xc001c55f10 sp=0xc001c55dd0 pc=0x82ae2d
github.com/spf13/cobra.(*Command).Execute(0xc0000b7900, 0xc0000cff68, 0x1)
/home/nick/go/src/github.com/spf13/cobra/command.go:800 +0x2b fp=0xc001c55f40 sp=0xc001c55f10 pc=0x82ab0b
main.main()
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/cmd/gphotos-uploader-cli/main.go:71 +0x16a fp=0xc001c55f98 sp=0xc001c55f40 pc=0x8325da
runtime.main()
/usr/local/go/src/runtime/proc.go:201 +0x207 fp=0xc001c55fe0 sp=0xc001c55f98 pc=0x42e197
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:1333 +0x1 fp=0xc001c55fe8 sp=0xc001c55fe0 pc=0x458e21
goroutine 5 [select]:
github.com/syndtr/goleveldb/leveldb/util.(*BufferPool).drain(0xc000140000)
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/util/buffer_pool.go:206 +0x12a
created by github.com/syndtr/goleveldb/leveldb/util.NewBufferPool
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/util/buffer_pool.go:237 +0x177
goroutine 21 [select, 52 minutes]:
github.com/syndtr/goleveldb/leveldb.(*DB).compactionError(0xc00009ab60)
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:90 +0xd3
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/db.go:142 +0x40c
goroutine 22 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).mpoolDrain(0xc00009ab60)
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/db_state.go:101 +0xe7
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/db.go:143 +0x42e
goroutine 23 [select, 52 minutes]:
github.com/syndtr/goleveldb/leveldb.(*DB).tCompaction(0xc00009ab60)
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:834 +0x331
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/db.go:149 +0x58c
goroutine 24 [select, 52 minutes]:
github.com/syndtr/goleveldb/leveldb.(*DB).mCompaction(0xc00009ab60)
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:762 +0x12e
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/nick/go/src/github.com/syndtr/goleveldb/leveldb/db.go:150 +0x5ae
goroutine 25 [running]:
goroutine running on other thread; stack unavailable
created by github.com/nmrshll/gphotos-uploader-cli/upload.StartFileUploadWorker
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/upload/fileUpload.go:29 +0x87
goroutine 26 [chan receive, 52 minutes]:
github.com/nmrshll/gphotos-uploader-cli/fileshandling.StartDeletionsWorker.func1(0xc00014c058)
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/fileshandling/image.go:41 +0xa2
created by github.com/nmrshll/gphotos-uploader-cli/fileshandling.StartDeletionsWorker
/home/nick/go/src/github.com/nmrshll/gphotos-uploader-cli/fileshandling/image.go:40 +0x87
goroutine 27 [IO wait, 52 minutes]:
internal/poll.runtime_pollWait(0x7f2a4991af00, 0x72, 0xc0001b2860)
/usr/local/go/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc00013e198, 0x72, 0xc000136000, 0x1000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc00013e198, 0xc0001b2800, 0x10, 0x10)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).ReadMsg(0xc00013e180, 0xc0001b2860, 0x10, 0x10, 0xc000136020, 0x1000, 0x1000, 0x0, 0x0, 0x0, ...)
/usr/local/go/src/internal/poll/fd_unix.go:243 +0x200
net.(*netFD).readMsg(0xc00013e180, 0xc0001b2860, 0x10, 0x10, 0xc000136020, 0x1000, 0x1000, 0xc0000abdc0, 0x7bf202, 0x8a2820, ...)
/usr/local/go/src/net/fd_unix.go:214 +0x90
net.(*UnixConn).readMsg(0xc00014c068, 0xc0001b2860, 0x10, 0x10, 0xc000136020, 0x1000, 0x1000, 0x97, 0xc000149600, 0xc0001b2758, ...)
/usr/local/go/src/net/unixsock_posix.go:115 +0x91
net.(*UnixConn).ReadMsgUnix(0xc00014c068, 0xc0001b2860, 0x10, 0x10, 0xc000136020, 0x1000, 0x1000, 0x7, 0xcdcf53, 0x203000, ...)
/usr/local/go/src/net/unixsock.go:140 +0xa8
github.com/godbus/dbus.(*oobReader).Read(0xc000136000, 0xc0001b2860, 0x10, 0x10, 0x18, 0xc000149980, 0x0)
/home/nick/go/src/github.com/godbus/dbus/transport_unix.go:21 +0x8f
io.ReadAtLeast(0x9bf7c0, 0xc000136000, 0xc0001b2860, 0x10, 0x10, 0x10, 0x8795e0, 0xc000566a01, 0xc000149980)
/usr/local/go/src/io/io.go:310 +0x88
io.ReadFull(0x9bf7c0, 0xc000136000, 0xc0001b2860, 0x10, 0x10, 0xc00011c3d0, 0x0, 0x0)
/usr/local/go/src/io/io.go:329 +0x58
github.com/godbus/dbus.(*unixTransport).ReadMessage(0xc00000c0a0, 0xc000000007, 0x7, 0xc0001c2301)
/home/nick/go/src/github.com/godbus/dbus/transport_unix.go:91 +0x10f
github.com/godbus/dbus.(*Conn).inWorker(0xc00010a120)
/home/nick/go/src/github.com/godbus/dbus/conn.go:292 +0x37
created by github.com/godbus/dbus.(*Conn).Auth
/home/nick/go/src/github.com/godbus/dbus/auth.go:118 +0x76f
goroutine 1448 [IO wait]:
internal/poll.runtime_pollWait(0x7f2a4991ad60, 0x72, 0xc001c57870)
/usr/local/go/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc00013ec18, 0x72, 0xffffffffffffff00, 0x9c0f20, 0xcd76b8)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc00013ec18, 0xc000144000, 0x1000, 0x1000)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc00013ec00, 0xc000144000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc00013ec00, 0xc000144000, 0x1000, 0x1000, 0x40a4cb, 0xc000010000, 0x8bc4c0)
/usr/local/go/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc00000e008, 0xc000144000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
/usr/local/go/src/net/net.go:177 +0x68
crypto/tls.(*block).readFromUntil(0xc001a0cde0, 0x9bfd00, 0xc00000e008, 0x5, 0xc00000e008, 0x490fa2)
/usr/local/go/src/crypto/tls/conn.go:492 +0x89
crypto/tls.(*Conn).readRecord(0xc000564e00, 0x95f317, 0xc000564f20, 0x10)
/usr/local/go/src/crypto/tls/conn.go:593 +0xdd
crypto/tls.(*Conn).Read(0xc000564e00, 0xc001a10000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
/usr/local/go/src/crypto/tls/conn.go:1145 +0xf1
bufio.(*Reader).Read(0xc0015702a0, 0xc001abe3b8, 0x9, 0x9, 0xc001c57c50, 0xc001c57ca8, 0x60c91d)
/usr/local/go/src/bufio/bufio.go:216 +0x22f
io.ReadAtLeast(0x9bf460, 0xc0015702a0, 0xc001abe3b8, 0x9, 0x9, 0x9, 0xc001c57cf0, 0x680858, 0xc000564e00)
/usr/local/go/src/io/io.go:310 +0x88
io.ReadFull(0x9bf460, 0xc0015702a0, 0xc001abe3b8, 0x9, 0x9, 0x6cdeb4, 0x7f2a499354b8, 0xc000564e00)
/usr/local/go/src/io/io.go:329 +0x58
net/http.http2readFrameHeader(0xc001abe3b8, 0x9, 0x9, 0x9bf460, 0xc0015702a0, 0x0, 0xc000000000, 0x42be11, 0x95f3c0)
/usr/local/go/src/net/http/h2_bundle.go:1545 +0x7b
net/http.(*http2Framer).ReadFrame(0xc001abe380, 0xc001bc6080, 0x0, 0x0, 0x0)
/usr/local/go/src/net/http/h2_bundle.go:1803 +0xa3
net/http.(*http2clientConnReadLoop).run(0xc001c57fb8, 0x95ed40, 0xc001b667b8)
/usr/local/go/src/net/http/h2_bundle.go:8261 +0x9e
net/http.(*http2ClientConn).readLoop(0xc00170e380)
/usr/local/go/src/net/http/h2_bundle.go:8189 +0x76
created by net/http.(*http2Transport).newClientConn
/usr/local/go/src/net/http/h2_bundle.go:7264 +0x636
exit status 2