<p>рд░реЗрд╕реНрдЯрд┐рдХ рдкреНрд░реВрди: рдореЗрдореЛрд░реА рд╕реЗ рдмрд╛рд╣рд░</p>

рдХреЛ рдирд┐рд░реНрдорд┐рдд 16 рдЕрдкреНрд░реИрд▓ 2018  ┬╖  31рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: restic/restic

restic version рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ

рд░реЗрд╕реНрдЯрд┐рдХ 0.8.3 (v0.8.3-0-g272ccec7)
linux / amd64 рдкрд░ go1.10 рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд

рдЖрдкрдиреЗ рдЖрд░рд╛рдо рд╕реЗ рдХреИрд╕реЗ рдЪрд▓рд╛рдпрд╛?

RESTIC_PASSWORD = foobar
RESTIC_REPOSITORY = / рдбреЗрдЯрд╛ / рдЬреЛ / restic
рдЖрд░рд╛рдо рдХрд░рдиреЗ рдХрд╛ рднрд╛рд╡

рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдиреЗ рдХрд┐рд╕ рдмреИрдХреЗрдВрдб / рд╕рд░реНрд╡рд░ / рд╕рд░реНрд╡рд┐рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛?

рдкреНрд░рддреНрдпрдХреНрд╖ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧред

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░

рд░реЗрдкрд┐рдХ рд░реЗрдкреЛ рдХреЛ рдкреНрд░рдгрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░

2018-04-16 18:33:51: Starting restic prune
counting files in repo
building new index for repo
[11:59] 100.00%  291017 / 291017 packs

incomplete pack file (will be removed): 02b612398378d4b6d7b6a77b5f51cf3c541baa78f542886810c27488fc52f8a2
incomplete pack file (will be removed): 08ce4b79b2adacd1d85373c59ad28777e215cec52b16bf9963cb03106e1d547f
incomplete pack file (will be removed): 08d76e1953f8b06d936f46679986f0af9bfb0260ca1b81e641d30262f4e2fb69
incomplete pack file (will be removed): 0ada7a6774140391104de82da908a1027eaedc97be83a2c30ae26db85093aba1
incomplete pack file (will be removed): 0f960d42718f0e0b29ea10a47fef530638811fd1620843e13e4c4c3c139c9477
incomplete pack file (will be removed): 11aa5b87e3a44ff1678de573e21280ff56e8cdf93755c363c7ba1a03537b84b0
incomplete pack file (will be removed): 13b211c7fc26e7de47e8a5387749bb93f7737217809143e01caf7f826deeea13
incomplete pack file (will be removed): 13f00bb9960f95b0d71abc9ff5e5b86f53d370cd602a4c45e03505cefab328ab
incomplete pack file (will be removed): 1b0be1e761e0c369aaed7b2d03f07163854946dfe7b6bb749d4ff5d5c62cfd61
incomplete pack file (will be removed): 1ee341e8778661a76bc0f4d2a285457851cb5984f6ac6ee51d42bbdf705025ab
incomplete pack file (will be removed): 26de4ab07458e880217accac26098edcc46622d11d20dcbb57996cfebedbc859
incomplete pack file (will be removed): 274ede1a69f1f2634abeb6f7f7a9af2a4027a7f224d7a61a6e209ef8ee4c152f
incomplete pack file (will be removed): 383bad67ef592da43d0cc9793bc6e1afc4a4327fc2c504b753111888b6c189f3
incomplete pack file (will be removed): 39d74d322db6b80f613efabe4c1b7242b3ff31ab936b60a0a4ee903713f9b299
incomplete pack file (will be removed): 419b5a6e3ebbab53150b5106316e8f3183ef7dd6d3b0c10de0a611dedb7ea846
incomplete pack file (will be removed): 44ba8b9892a33391201339cbea4c963707ee16d30c6ca96d38d96bbeadfe23ca
incomplete pack file (will be removed): 45b75bb12def8334143681bf89811c68baace1376311e3ca79478021faf6b062
incomplete pack file (will be removed): 47947ddb8dd54856e22ec44b0de268668b89ccac77e6145a61f05870ab23c57d
incomplete pack file (will be removed): 4ba9ef53b1579d10d0682153382a6a30d12e444bf3ac0b55dd3e5bbe1f151d9f
incomplete pack file (will be removed): 4d36946b6c368baf824590d0846b1c28cb34943c8fd16734b83847b42ded8dab
incomplete pack file (will be removed): 61b294bea904324ef980d75c5b5da2f0e8b6d9be1aa16e55b7606afe5623df69
incomplete pack file (will be removed): 65555bcda953ddb00af9e3d141a4c274614d5dfd3a6345bf396872028852797c
incomplete pack file (will be removed): 716d9a5a48c2d364069fc9c9576c1683bd99cecc7b0232c53034a70bca9aed2b
incomplete pack file (will be removed): 71766e7583ba835480aa87e02566b23c26ba940ecc0f697beb2aaa0621422f4c
incomplete pack file (will be removed): 74f82d71b0f881c95f5eb54668355ce2d9f32a5a6087ec61e52618f909af377c
incomplete pack file (will be removed): 8476543253237a28264c87c70f41eb87883488f8d84314045cc07c3e7deee656
incomplete pack file (will be removed): 8d9d77e05a32a84da1a62159c245a004d55386923137f406c74b1b01281d07d3
incomplete pack file (will be removed): 8fa209c571b2cace97f5725c12c3a110deef8b8f7cfe6705f28175ac6182e9b8
incomplete pack file (will be removed): 9146ec8c10a77c248aa0db6aa291c25b83498848afddfbb4bb33b9928b003fdf
incomplete pack file (will be removed): 9f5e6c422683e05fe9cb7212d44c6492c55d24cb55230407cc59ebd06c96dde7
incomplete pack file (will be removed): a4ac5898b871d3a4343e2fd4c88aaae2e1a31879cce0d90d4e93527334a9deeb
incomplete pack file (will be removed): aa0d2b035ebcab381cd816ba2000d61c43f824621fafc74b81e5cfa1524ae94c
incomplete pack file (will be removed): aa2f5ba3a21a7b12ed23ab198ee457c5fde4921344cd350f2cb9ea675d05a1d6
incomplete pack file (will be removed): aa8f152200a3657728e68eddc1a9ad4c3cecf20af568d4fa01727ffb86005856
incomplete pack file (will be removed): af13847a8a95013afc34b59dfb40daa1c74f0067100a49adf5b1279559d3afd5
incomplete pack file (will be removed): af287ee5aa3c436cba495f4a73f30bf43d23e995d94913c9e64e12dd670b0a36
incomplete pack file (will be removed): ba38890edd8e2c84feb3af506427b6fd5cb4bd4150d7a5784f15f82e01598ca1
incomplete pack file (will be removed): bca933d271cd67feb9b42c55eb168d9f44bb568a121d3947fa443975e47e1ba1
incomplete pack file (will be removed): bd6cdb11204f445cc413cd04fbf56038eee417bc6312dd26624c037eba153417
incomplete pack file (will be removed): c436f5f332c6dbefa57456c8b0532cb3a89beb99564ab67b3ecc433bb0654df3
incomplete pack file (will be removed): cffa984794599843ec0b673c906a84f7813a4ee2346af3bacb6b7c2a217e172f
incomplete pack file (will be removed): d1aeb4847d269c3e6c469e2ac7a82e846f7891f357b0c3b25ef7fa8cc1bd9388
incomplete pack file (will be removed): d2269e9659755adb4d0c8944cb2abe1d6b2e75fa48e9c2ac749ec07c1222e196
incomplete pack file (will be removed): d29e8e66df6380d8f6bf65e18f35bc4597539e73c9a1932bca3dc067fa219ad6
incomplete pack file (will be removed): eb9e4049591e77ad69bc52d9bf830872798bc5c0814ad7cf65eb03befc38bed8
incomplete pack file (will be removed): ec458035798f3e4159314a50e0b7e3f5b8766564aef307c7f10fa7ac3f6dfa5d
incomplete pack file (will be removed): ecf1542bf4a15bc44d447973fc6312fe1a4e2528b5fd07aa9264f5b4bae6820c
incomplete pack file (will be removed): ee2ce3bd4a13ee395ad3a4a95dd0aa017e0b17ecf2cbd1faa66124e510717762
incomplete pack file (will be removed): ee637a1a84fc5819dee56c3192f38bf3895a00b42f6d3ddec5e2ed43c208e18a
incomplete pack file (will be removed): ef4e136efdd73d6e667c8afc8deccaf1d8e6c425d66eb377d5fa1fa85c484394
incomplete pack file (will be removed): f1d0b28ff0c5bdb8d77f9a7381324a54f574a7e9eb0f7e7320f315a26a71cb7a
repository contains 290966 packs (4042496 blobs) with 1.350 TiB
processed 4042496 blobs: 14417 duplicate blobs, 947.112 MiB duplicate
load all snapshots
find data that is still in use for 30 snapshots
[14:50] 100.00%  30 / 30 snapshots

found 4020862 of 4042496 data blobs still in use, removing 21634 blobs
will remove 51 invalid files
will delete 110 packs and rewrite 34143 packs, this frees 1.797 GiB
fatal error: runtime: out of memory

runtime stack:
runtime.throw(0xae011d, 0x16)
    /usr/local/go/src/runtime/panic.go:619 +0x81
runtime.sysMap(0xc4f7c60000, 0x490000, 0x43fd00, 0xe91e58)
    /usr/local/go/src/runtime/mem_linux.go:216 +0x20a
runtime.(*mheap).sysAlloc(0xe78660, 0x490000, 0x7fd3f522c098)
    /usr/local/go/src/runtime/malloc.go:470 +0xd4
runtime.(*mheap).grow(0xe78660, 0x248, 0x0)
    /usr/local/go/src/runtime/mheap.go:907 +0x60
runtime.(*mheap).allocSpanLocked(0xe78660, 0x248, 0xe91e68, 0xc45cd39ee0)
    /usr/local/go/src/runtime/mheap.go:820 +0x301
runtime.(*mheap).alloc_m(0xe78660, 0x248, 0x410101, 0xc41e8c7fff)
    /usr/local/go/src/runtime/mheap.go:686 +0x118
runtime.(*mheap).alloc.func1()
    /usr/local/go/src/runtime/mheap.go:753 +0x4d
runtime.(*mheap).alloc(0xe78660, 0x248, 0xc45c010101, 0x4142ac)
    /usr/local/go/src/runtime/mheap.go:752 +0x8a
runtime.largeAlloc(0x48f87c, 0x450101, 0x7fd3f5ca56c8)
    /usr/local/go/src/runtime/malloc.go:826 +0x94
runtime.mallocgc.func1()
    /usr/local/go/src/runtime/malloc.go:721 +0x46
runtime.systemstack(0x0)
    /usr/local/go/src/runtime/asm_amd64.s:409 +0x79
runtime.mstart()
    /usr/local/go/src/runtime/proc.go:1170

goroutine 1 [running]:
runtime.systemstack_switch()
    /usr/local/go/src/runtime/asm_amd64.s:363 fp=0xc480ad81c8 sp=0xc480ad81c0 pc=0x454010
runtime.mallocgc(0x48f87c, 0x9cfd20, 0x979301, 0xc4d6371720)
    /usr/local/go/src/runtime/malloc.go:720 +0x8a2 fp=0xc480ad8268 sp=0xc480ad81c8 pc=0x410882
runtime.makeslice(0x9cfd20, 0x48f87c, 0x48f87c, 0x1, 0x1, 0x58f)
    /usr/local/go/src/runtime/slice.go:61 +0x77 fp=0xc480ad8298 sp=0xc480ad8268 pc=0x43fdc7
github.com/restic/restic/internal/repository.Repack(0xb5a640, 0xc420068e40, 0xb62260, 0xc4202510a0, 0xc424eb4120, 0xc475dfecf0, 0xc4200c38c0, 0x9c5582208afec32f, 0xc475dfecf0, 0xc475dfed20)
    /tmp/restic-build-762914258/src/github.com/restic/restic/internal/repository/repack.go:60 +0xec3 fp=0xc480ad8a60 sp=0xc480ad8298 pc=0x752d93
main.pruneRepository(0xc420024012, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
    src/github.com/restic/restic/cmd/restic/cmd_prune.go:278 +0x1e99 fp=0xc480ad9990 sp=0xc480ad8a60 pc=0x94d959
main.runPrune(0xc420024012, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
    src/github.com/restic/restic/cmd/restic/cmd_prune.go:85 +0x153 fp=0xc480ad9ab8 sp=0xc480ad9990 pc=0x94b943
main.glob..func17(0xe6b180, 0xe8ffd8, 0x0, 0x0, 0x0, 0x0)
    src/github.com/restic/restic/cmd/restic/cmd_prune.go:25 +0x4d fp=0xc480ad9bb8 sp=0xc480ad9ab8 pc=0x95e07d
github.com/restic/restic/vendor/github.com/spf13/cobra.(*Command).execute(0xe6b180, 0xe8ffd8, 0x0, 0x0, 0xe6b180, 0xe8ffd8)
    /tmp/restic-build-762914258/src/github.com/restic/restic/vendor/github.com/spf13/cobra/command.go:698 +0x46d fp=0xc480ad9c60 sp=0xc480ad9bb8 pc=0x6b34ed
github.com/restic/restic/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0xe69e60, 0xffffffffffffffff, 0x0, 0x19)
    /tmp/restic-build-762914258/src/github.com/restic/restic/vendor/github.com/spf13/cobra/command.go:783 +0x2e4 fp=0xc480ad9d90 sp=0xc480ad9c60 pc=0x6b3c64
github.com/restic/restic/vendor/github.com/spf13/cobra.(*Command).Execute(0xe69e60, 0x24, 0xc420217eb8)
    /tmp/restic-build-762914258/src/github.com/restic/restic/vendor/github.com/spf13/cobra/command.go:736 +0x2b fp=0xc480ad9dc0 sp=0xc480ad9d90 pc=0x6b395b
main.main()
    src/github.com/restic/restic/cmd/restic/main.go:69 +0x1d6 fp=0xc480ad9f88 sp=0xc480ad9dc0 pc=0x95c796
runtime.main()
    /usr/local/go/src/runtime/proc.go:198 +0x212 fp=0xc480ad9fe0 sp=0xc480ad9f88 pc=0x42b472
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:2361 +0x1 fp=0xc480ad9fe8 sp=0xc480ad9fe0 pc=0x456b31

goroutine 5 [syscall, 28 minutes]:
os/signal.signal_recv(0x0)
    /usr/local/go/src/runtime/sigqueue.go:139 +0xa6
os/signal.loop()
    /usr/local/go/src/os/signal/signal_unix.go:22 +0x22
created by os/signal.init.0
    /usr/local/go/src/os/signal/signal_unix.go:28 +0x41

goroutine 6 [chan receive, 28 minutes]:
github.com/restic/restic/internal/restic.init.0.func1.1()
    /tmp/restic-build-762914258/src/github.com/restic/restic/internal/restic/lock.go:266 +0xef
created by github.com/restic/restic/internal/restic.init.0.func1
    /tmp/restic-build-762914258/src/github.com/restic/restic/internal/restic/lock.go:263 +0x35

goroutine 7 [select, 28 minutes, locked to thread]:
runtime.gopark(0xb01d80, 0x0, 0xad384f, 0x6, 0x18, 0x1)
    /usr/local/go/src/runtime/proc.go:291 +0x11a
runtime.selectgo(0xc420042f50, 0xc42002c2a0)
    /usr/local/go/src/runtime/select.go:392 +0xe50
runtime.ensureSigM.func1()
    /usr/local/go/src/runtime/signal_unix.go:549 +0x1f4
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:2361 +0x1

goroutine 17 [chan receive, 28 minutes]:
github.com/restic/restic/internal/restic.init.2.func1(0xc42002c1e0)
    /tmp/restic-build-762914258/src/github.com/restic/restic/internal/restic/progress_unix.go:17 +0xa3
created by github.com/restic/restic/internal/restic.init.2
    /tmp/restic-build-762914258/src/github.com/restic/restic/internal/restic/progress_unix.go:16 +0xab

goroutine 18 [chan receive, 28 minutes]:
main.CleanupHandler(0xc42021c1e0)
    src/github.com/restic/restic/cmd/restic/cleanup.go:62 +0x5d
created by main.init.0
    src/github.com/restic/restic/cmd/restic/cleanup.go:24 +0x6d

goroutine 33 [select, 3 minutes]:
main.refreshLocks(0xe71be0, 0xc4201322a0)
    src/github.com/restic/restic/cmd/restic/lock.go:72 +0x221
created by main.lockRepository
    src/github.com/restic/restic/cmd/restic/lock.go:49 +0x373

goroutine 40 [select]:
github.com/restic/restic/internal/restic.(*Progress).reporter(0xc4200c38c0)
    /tmp/restic-build-762914258/src/github.com/restic/restic/internal/restic/progress.go:169 +0x130
created by github.com/restic/restic/internal/restic.(*Progress).Start
    /tmp/restic-build-762914258/src/github.com/restic/restic/internal/restic/progress.go:96 +0x132
2018-04-16 19:02:18: Terminated: restic prune (return code 2)

рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо

рдПрдХ рдбреЗрдмрд┐рдпрди рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ (рд▓рд┐рдирдХреНрд╕ рдмреИрдХрдЕрдк 4.9.0-6-amd64 # 1 рдПрд╕рдПрдордкреА рдбреЗрдмрд┐рдпрди 4.9.82-1 + deb9u3 (2018-03-02) x86_64 GNU / рд▓рд┐рдирдХреНрд╕) рд╕реНрдореГрддрд┐ рдХреЗ 4 GiB рдФрд░ рдПрдХ рдЗрдВрдЯреЗрд▓ (R) Core (рдХреЗ рд╕рд╛рде) TM) i3-3225 CPU @ 3.30GHzред рдлрд┐рд░ рдЖрдХрд╛рд░ рдореЗрдВ ~ 1.5 рдЯреАрдмреА рдХреЗ рд╕рд╛рде рд░реЗрдкреЛ рдмрдирд╛рдПрдВ рдФрд░ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкрд░ рд░реЗрд╕реНрдЯрд┐рдХ рдкреНрд░реВрди рдЪрд▓рд╛рдПрдВред

рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ?

рдЬрд┐рд╕ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдореИрдВ рд░реЗрд╕реНрдЯрд┐рдХ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рдЙрд╕рдореЗрдВ 4 рдЧрд┐рдмреА рдореЗрдореЛрд░реА рд╣реИред рдпрдХреАрди рд╣реИ, рдФрд░ рдЕрдзрд┐рдХ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдпрд╣ рдФрд░ рднреА рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП рдЖрд░рд╛рдо рд╡рд┐рдлрд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП?

рдЬрд╝рд░реВрд░ред рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЕрдзрд┐рдХ рдореЗрдореЛрд░реА рдЬреЛрдбрд╝реЗрдВ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реЛрдЧрд╛ред рдпрд╛ рдЖрд░рд╛рдо рдХреЛ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рдмрдирд╛рдПрдВ (рдФрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдХреЛрдИ рд╕рдВрд╕рд╛рдзрди рд▓реАрдХ рдирд╣реАрдВ рд╣реИ)ред

рдХреНрдпрд╛ рдЖрд░рд╛рдо рдиреЗ рдЖрдкрдХреА рдорджрдж рдХреА рдпрд╛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЦреБрд╢ рдХрд┐рдпрд╛?

рддрд╛рд░реАрдл рдХреЗ рд▓рд┐рдП рдорддреНрд╕реНрдп рдкрд╛рд▓рди, рдПрд╣? рдЬрд░реВрд░, рдХреНрдпреЛрдВ рдирд╣реАрдВред рдЖрд░рд╛рдо рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╕рд╛рдорд╛рди рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд╛рдЗрдб рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди, рдХреЗрдбреАрдПрдл рдХрд╛ рдЙрдЪрд┐рдд рдЙрдкрдпреЛрдЧ, рдПрд╕реАрдПрд▓ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди, рдлрд╝реНрдпреВрдЬрд╝ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрдврд╝рддреЗ рдмреИрдХрдЕрдк рдкрд╕рдВрдж рд╣реИред рдпрд╣ рдореЗрд░реЗ рдкрд┐рдЫрд▓реЗ rsync рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдкрд╛рдиреА рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ pleeease рдереЛрдбрд╝рд╛ рдХрдо рд╕рдВрд╕рд╛рдзрди рднреВрдЦ рд╣реЛ рд╕рдХрддреА рд╣реИ? :-)

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╣реЗ рдЕрд▓реЗрдХреНрдЬреЗрдВрдбрд░, рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣рд╛рдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рддрдХрдиреАрдХреА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреА рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдмрд╛рдж рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдпрд╣ рдХрд╣рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдХрд┐рд╕реА рднреА рдФрд░ рд╕рднреА рдПрдХреНрд╕рдЪреЗрдВрдЬреЛрдВ рдореЗрдВ рдЬреЛ рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рд╣реИ, рдЖрдк рдкреЗрд╢реЗрд╡рд░, рджрдпрд╛рд▓реБ рдФрд░ рдХреБрдЫ рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдЬрд▓реНрджреАред рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдпрд╣рд╛рдВ рдлрд░реНрдЬреА рдмрдЧ рдХреА рд╕реВрдЪрдирд╛ рджреА рд╣реИ (рдЬреЛ рдХрд┐ рдПрдЪрдбрдмреНрд▓реНрдпреВ рдореБрджреНрджреЛрдВ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП) рдФрд░ рдЖрдк рд╣рдореЗрд╢рд╛ рд╕реБрдкрд░ рд╕рд╣рд╛рдпрдХ рд░рд╣реЗ рд╣реИрдВред рдХреЛрдИ рднреА рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЖрдкрдХреЛ рдЦреБрдж рдХреЛ рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдорд╛рди рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЙрдирдХреЗ рд╕рдВрд░рдХреНрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рд╣реИрдВ рдФрд░ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЖрд░рд╛рдо рд╕реЗ рдКрдкрд░ рдФрд░ рдкрд░реЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рдПрдХ рдЕрджреНрднреБрдд рдЙрдкрдХрд░рдг рд╣реИ рдФрд░ рд╣рдо рд╕рднреА рдЗрд╕реЗ рдЬрд╛рдирддреЗ рд╣реИрдВред рдирд┐рд╢реНрдЪрд┐рдВрдд рд░рд╣реЗрдВ рдХрд┐ рднрд▓реЗ рд╣реА рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЬрдм рдЖрдк рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдХрд▓ рдЖрдкрдХрд╛ рдореВрдб рдЦрд░рд╛рдм рдерд╛, рддреЛ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдирд╣реАрдВ рджрд┐рдЦрд╛ред рд░реЗрд╕реНрдЯрд▓реЗрд╕ рдЕрдердХ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрд╛рддрд╛рд░ рдХрд╛рдо рдХрд░рддреЗ рд░рд╣реЗрдВ рдФрд░ рдзрдиреНрдпрд╡рд╛рдж рджреЗрдВред рдЪреАрдпрд░реНрд╕, рдЬреЛрд╣рд╛рдиреНрд╕

рд╕рднреА 31 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдмреИрдХрдЯреНрд░реЗрд╕ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЦреНрдп рдореБрджреНрджрд╛ рдЧреЛрд░реЛрдЗрди 1 рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ:

https://github.com/restic/restic/blob/6a34e0d10fb978cb8988a460bf4b04e9976cca17/internal/repository/repack.go#L60

рдпрд╣ рд╕рд╡рд╛рд▓ рдЙрдард╛рддрд╛ рд╣реИ: рдХреНрдпрд╛ рд╣рдо рдФрд░ рдЕрдзрд┐рдХ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рджреЛрд╣рд░рд╛ рд╕рдХрддреЗ рд╣реИрдВ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдиреБрдХреНрд░рдорд┐рдХ рдмрд▓реНрдХ рдСрдкрд░реЗрд╢рдВрд╕ рдореЗрдВ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ рдпрд╛ рдХреЙрдкреА-рдСрди-рд░рд╛рдЗрдЯ рдХреЗ рд╕рд╛рде рдмреНрд▓реЙрдм рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рд╣реИ ... рдХрд┐рд╕реА рдХреЛ рдореБрдЭрд╕реЗ рдЕрдзрд┐рдХ рд╡рд╛рд╕реНрддреБ рдЬреНрдЮрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╣рд╛рдБ, рдкреНрд░реВрди рдХреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реНрдореГрддрд┐ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдФрд░ рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдореБрдЭреЗ рдЗрд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╕ рдХреБрдЫ рд╕рдордп рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдпрд╣ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рдЬрдЧрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдбреЗрдЯрд╛ рдмрд┐рдВрджреБред рдХрд▓ рд░рд╛рдд рдХреБрдЫ OOM рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдХрд╛рд░рдг рдореИрдВ рдлрд┐рд░ рд╕реЗ рдЖрд░рд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдпрд╣ рд╣рдорд╛рд░реЗ рд╕рд░реНрд╡рд░ рдкрд░ рдмреИрдХрдЕрдк рдХреЗ рджреМрд░рд╛рди рд▓рдЧрднрдЧ 25GB RAM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛:

Aug 21 03:24:35 courtlistener kernel: [3131661.383314] Out of memory: Kill process 28903 (restic) score 359 or sacrifice child
Aug 21 03:24:35 courtlistener kernel: [3131661.384564] Killed process 28903 (restic) total-vm:25856956kB, anon-rss:24415312kB, file-rss:0kB
Aug 21 03:24:35 courtlistener kernel: [3131661.400102] postgres invoked oom-killer: gfp_mask=0x2000d0, order=2, oom_score_adj=0

рд▓рдЧрднрдЧ 20GB RAM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдУрд╡рд░рд╣реЗрдб рд╣реЛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рд╣рдо рдЖрд░рд╛рдо рдХреА рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╕-рдкрд╛рд╕ рд░рдЦрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рдХреЗрд╡рд▓ рдмреИрдХрдЕрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 30GB RAM (рдпрд╛ рдЕрдзрд┐рдХ?) рдореБрдХреНрдд рдирд╣реАрдВ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЕрднреА рднреА DB рдХреЗ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдмреИрдХрдЕрдк рдХреЗ рд▓рд┐рдП рд░реЗрд╕реНрдЯрд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЦрддрд░реЗ, рдпрд╣ рд╕рд┐рд░реНрдл рдмрд╣реБрдд рдЕрдзрд┐рдХ рдореЗрдореЛрд░реА рд╣реИред

рдЙрдо, рдпрд╣ рдмреИрдХрдЕрдк рдХреЗ рджреМрд░рд╛рди рдерд╛? рдпрд╛ рдкреНрд░реВрди?

рдмреИрдХрдЕрдк рдХреЗ рджреМрд░рд╛рдиред рд╣рдордиреЗ рдкреНрд░реВрди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдкреНрд░реВрди рди рд╣реЛрдиреЗ рдХрд╛ рдорддрд▓рдм рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реИ рдХрд┐ Backblaze рд╣рдорд╕реЗ рдЬреНрдпрд╛рджрд╛ рдЪрд╛рд░реНрдЬ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЬрдм рддрдХ рдкрд░рдлреЙрд░реНрдореЗрдВрд╕ / рдореЗрдореЛрд░реА рдкреНрд░реЙрдмреНрд▓рдо рдареАрдХ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддреА, рддрдм рддрдХ рдЗрд╕реЗ рдбрд┐рд╕рдПрдмрд▓ рдХрд░рдирд╛ рдареАрдХ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдм рд╣рдореЗрдВ рдмреИрдХрдЕрдк рдХреЛ рднреА рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдЖрд╣, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрд╖рдорд╛ рдХрд░реЗрдВред

рдЦреИрд░, рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдпрд╣ рд╣реИ! рд╣рдо рдХрд┐рд╕реА рдХреЛ рднреА рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рдФрд░ рд╣рдо рдХрднреА-рдХрднреА рдЪреАрдЬреЛрдВ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рддреЗ рд╣реИрдВред рдореИрдВ рдЕрднреА рднреА рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдЖрд░рд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдмреИрдХрдЕрдк? Mmmmред рдЙрдВрдЧрд▓рд┐рдпреЛрдВ рдЪреВрдо рд▓реЗрддреА рд╣реИред рд╕реНрд╡рд╛рджрд┐рд╖реНрдЯред

@mlissner рдЖрдкрдХрд╛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЖрдХрд╛рд░ рдХреНрдпрд╛ рд╣реИ?

рдореИрдВ рдХрд▓ рдорд╣рд╛рди рдореВрдб рдореЗрдВ рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рдЖрдЬ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реИ :)

рд╣реЗ рдЕрд▓реЗрдХреНрдЬреЗрдВрдбрд░, рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣рд╛рдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рддрдХрдиреАрдХреА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреА рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдмрд╛рдж рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдпрд╣ рдХрд╣рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдХрд┐рд╕реА рднреА рдФрд░ рд╕рднреА рдПрдХреНрд╕рдЪреЗрдВрдЬреЛрдВ рдореЗрдВ рдЬреЛ рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рд╣реИ, рдЖрдк рдкреЗрд╢реЗрд╡рд░, рджрдпрд╛рд▓реБ рдФрд░ рдХреБрдЫ рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдЬрд▓реНрджреАред рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдпрд╣рд╛рдВ рдлрд░реНрдЬреА рдмрдЧ рдХреА рд╕реВрдЪрдирд╛ рджреА рд╣реИ (рдЬреЛ рдХрд┐ рдПрдЪрдбрдмреНрд▓реНрдпреВ рдореБрджреНрджреЛрдВ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП) рдФрд░ рдЖрдк рд╣рдореЗрд╢рд╛ рд╕реБрдкрд░ рд╕рд╣рд╛рдпрдХ рд░рд╣реЗ рд╣реИрдВред рдХреЛрдИ рднреА рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЖрдкрдХреЛ рдЦреБрдж рдХреЛ рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдорд╛рди рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЙрдирдХреЗ рд╕рдВрд░рдХреНрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рд╣реИрдВ рдФрд░ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЖрд░рд╛рдо рд╕реЗ рдКрдкрд░ рдФрд░ рдкрд░реЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рдПрдХ рдЕрджреНрднреБрдд рдЙрдкрдХрд░рдг рд╣реИ рдФрд░ рд╣рдо рд╕рднреА рдЗрд╕реЗ рдЬрд╛рдирддреЗ рд╣реИрдВред рдирд┐рд╢реНрдЪрд┐рдВрдд рд░рд╣реЗрдВ рдХрд┐ рднрд▓реЗ рд╣реА рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЬрдм рдЖрдк рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдХрд▓ рдЖрдкрдХрд╛ рдореВрдб рдЦрд░рд╛рдм рдерд╛, рддреЛ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдирд╣реАрдВ рджрд┐рдЦрд╛ред рд░реЗрд╕реНрдЯрд▓реЗрд╕ рдЕрдердХ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрд╛рддрд╛рд░ рдХрд╛рдо рдХрд░рддреЗ рд░рд╣реЗрдВ рдФрд░ рдзрдиреНрдпрд╡рд╛рдж рджреЗрдВред рдЪреАрдпрд░реНрд╕, рдЬреЛрд╣рд╛рдиреНрд╕

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ # 1830 рдореЗрдВ рд░реЗрд╕реНрдЯрд┐рдХ рдЪреЗрдХ рдХреЗ рд╕рд╛рдеред
GOGC = 20 рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд▓реЗрдХрд┐рди рдХреЛрдИ рдХрд┐рд╕реНрдордд рдирд╣реАрдВред рдереЛрдбрд╝реА рджреЗрд░ (8 рдЬреАрдмреА рд░реИрдо, ~ 1,5 рдЯреАрдмреА рд░реЗрдкреЛ) рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрд╛рдж рд░реЗрд╕реНрдЯрд┐рдХ рдЪреЗрдХ рдЕрднреА рднреА oom-рдорд╛рд░рд╛ рдЧрдпрд╛ рд╣реИред

рдЕрд╕реНрдерд╛рдпреА рдХреИрд╢ рдореЗрдВ / tmp / restic-check-cache-961467159 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА 02a14a0b рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЦреЛрд▓рд╛ рдЧрдпрд╛, рдкрд╛рд╕рд╡рд░реНрдб рд╕рд╣реА рд╣реИ
рднрдВрдбрд╛рд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рддрд╛рд▓рд╛ рдмрдирд╛рдПрдБ
рднрд╛рд░ рд╕реВрдЪрдХрд╛рдВрдХ
рд╕рднреА рдкреИрдХ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ
рд╕реНрдиреИрдкрд╢реЙрдЯ, рдкреЗрдбрд╝ рдФрд░ рдмреВрдБрджреЗрдВ рдЬрд╛рдВрдЪреЗрдВ
рдорд╛рд░реЗ рдЧрдП

рддрдерд╛
рдХрд┐рд▓реНрдб рдкреНрд░реЛрд╕реЗрд╕ 16350 (рд░реЗрд╕реНрдЯрд┐рдХ) рдХреБрд▓-рд╡реАрдПрдо: 2428260kB, anon- rss: 2375472kB , рдлрд╝рд╛рдЗрд▓- rss: 0kB , shmem- rss: 0kB

@mlissner рдЖрдкрдХрд╛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЖрдХрд╛рд░ рдХреНрдпрд╛ рд╣реИ?

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ "рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА" рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЖрдкрдХреЛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЬрд┐рддрдирд╛ рд╕рд╛рдорд╛рди рд╣реИ рд╡рд╣ рдмреИрдХрдмреНрд▓реИрдЬ рдкрд░ рд╣реИ? рдпрджрд┐ рдпрд╣ рд╕рд╣реА рд╣реИ, рддреЛ рдЖрдХрд╛рд░ рдмрд╛рд▓реНрдЯреА рдореЗрдВ рд▓рдЧрднрдЧ 5.2TB рд╣реИред

рдЕрдЧрд░ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдХрд┐рддрдирд╛ рд╕рдорд░реНрдерди рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╢рд╛рдпрдж 2TB рдХреЗ рдЖрд╕рдкрд╛рд╕ рд╣реИ рд╢рд╛рдпрдж 15M рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде? рдЗрд╕рдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрднреА рдирд╣реАрдВ рдмрджрд▓рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рд╣рд░ рджрд┐рди рдЕрдзрд┐рдХ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рдореИрдВ рдХрд╛рдиреВрдиреА рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХрд╛ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, CourtListener.comред

@ johndoe31415 рддрд░рд╣ рдХреЗ рд╢рдмреНрджреЛрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рдХрднреА-рдХрднреА рдХрд╛рдо рдХреА рдорд╛рддреНрд░рд╛ рдЕрднреА рднреА рднрд╛рд░реА рдкрдбрд╝ рд╕рдХрддреА рд╣реИ ...

рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ (8 рдЬреАрдмреА рд░реИрдо, рд░реЗрдкреЛ 267 рдЬреАрдмреА рд╣реИ)

$ restic version
restic 0.9.3 compiled with go1.10.4 on linux/amd64

рдЖрджреЗрд╢: restic -r sftp:[email protected]:/mybackup --password-file mypassword --cache-dir /var/cache/restic forget --prune --keep-daily=7 --keep-weekly=4 --keep-monthly=6 --keep-yearly=1

1 snapshots have been removed, running prune
counting files in repo
building new index for repo
[1:14:56] 100.00%  56025 / 56025 packs

repository contains 56025 packs (4844700 blobs) with 257.876 GiB
processed 4844700 blobs: 0 duplicate blobs, 0B duplicate
load all snapshots
find data that is still in use for 44 snapshots
fatal error: runtime: out of memory

runtime stack:
runtime.throw(0xb92259, 0x16)
        /usr/lib/go-1.10/src/runtime/panic.go:616 +0x81
runtime.sysMap(0xc50f780000, 0x12980000, 0xf6ce00, 0xf85fd8)
        /usr/lib/go-1.10/src/runtime/mem_linux.go:216 +0x20a
runtime.(*mheap).sysAlloc(0xf6c6e0, 0x12980000, 0x7f7d482609c8)
        /usr/lib/go-1.10/src/runtime/malloc.go:470 +0xd4
runtime.(*mheap).grow(0xf6c6e0, 0x94c0, 0x0)
        /usr/lib/go-1.10/src/runtime/mheap.go:907 +0x60
runtime.(*mheap).allocSpanLocked(0xf6c6e0, 0x94c0, 0xf85fe8, 0x7f7d6bffed88)
        /usr/lib/go-1.10/src/runtime/mheap.go:820 +0x301
runtime.(*mheap).alloc_m(0xf6c6e0, 0x94c0, 0x410101, 0xc41a96e1ff)
        /usr/lib/go-1.10/src/runtime/mheap.go:686 +0x118
runtime.(*mheap).alloc.func1()
        /usr/lib/go-1.10/src/runtime/mheap.go:753 +0x4d
runtime.(*mheap).alloc(0xf6c6e0, 0x94c0, 0x7f7d6b010101, 0x415afc)
        /usr/lib/go-1.10/src/runtime/mheap.go:752 +0x8a
runtime.largeAlloc(0x12980000, 0x450101, 0x7f7d79aded90)
        /usr/lib/go-1.10/src/runtime/malloc.go:826 +0x94
runtime.mallocgc.func1()
        /usr/lib/go-1.10/src/runtime/malloc.go:721 +0x46
runtime.systemstack(0xc400000000)
        /usr/lib/go-1.10/src/runtime/asm_amd64.s:409 +0x79
runtime.mstart()
        /usr/lib/go-1.10/src/runtime/proc.go:1175

goroutine 1 [running]:
runtime.systemstack_switch()
        /usr/lib/go-1.10/src/runtime/asm_amd64.s:363 fp=0xc4d2cc6b88 sp=0xc4d2cc6b80 pc=0x4552d0
runtime.mallocgc(0x12980000, 0xaffe40, 0xbb6b01, 0xaed4a0)
        /usr/lib/go-1.10/src/runtime/malloc.go:720 +0x8a2 fp=0xc4d2cc6c28 sp=0xc4d2cc6b88 pc=0x4120d2
runtime.newarray(0xaffe40, 0x110000, 0xc42013c000)
        /usr/lib/go-1.10/src/runtime/malloc.go:855 +0x6a fp=0xc4d2cc6c58 sp=0xc4d2cc6c28 pc=0x41245a
runtime.makeBucketArray(0xb32640, 0x42f5cad737fd4814, 0xc4d2cc6cd0, 0x401e32)
        /usr/lib/go-1.10/src/runtime/hashmap.go:881 +0xe2 fp=0xc4d2cc6c90 sp=0xc4d2cc6c58 pc=0x40a6b2
runtime.hashGrow(0xb32640, 0xc44ee1c960)
        /usr/lib/go-1.10/src/runtime/hashmap.go:905 +0x80 fp=0xc4d2cc6ce0 sp=0xc4d2cc6c90 pc=0x40a830
runtime.mapassign(0xb32640, 0xc44ee1c960, 0xc4d2cc6f9f, 0xc4cd1f7d40)
        /usr/lib/go-1.10/src/runtime/hashmap.go:579 +0x2b7 fp=0xc4d2cc6d70 sp=0xc4d2cc6ce0 pc=0x409777
github.com/restic/restic/internal/restic.BlobSet.Insert(...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/blob_set.go:26
github.com/restic/restic/internal/restic.FindUsedBlobs(0xc15640, 0xc42020e9c0, 0xc1d760, 0xc42021fa40, 0x467d86ab22e4ce70, 0x21a44382a1438885, 0x829c686ff3f4eb07, 0x2bbf9f1c26cb983a,
0xc44ee1c960, 0xc44ee1c990, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/find.go:9 +0x10c fp=0xc4d2cc6fe8 sp=0xc4d2cc6d70 pc=0x6f9ecc
github.com/restic/restic/internal/restic.FindUsedBlobs(0xc15640, 0xc42020e9c0, 0xc1d760, 0xc42021fa40, 0xad0966088f423528, 0xc0855b2604177a2c, 0x416e998bdcc27c99, 0xd45bd561fbc152b3,
0xc44ee1c960, 0xc44ee1c990, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/find.go:31 +0x5a6 fp=0xc4d2cc7260 sp=0xc4d2cc6fe8 pc=0x6fa366
github.com/restic/restic/internal/restic.FindUsedBlobs(0xc15640, 0xc42020e9c0, 0xc1d760, 0xc42021fa40, 0x7ed337032395c12e, 0x697a1ab6f4be111b, 0x77f9fa7adfc1bd09, 0x1821c35434fcefb9,
0xc44ee1c960, 0xc44ee1c990, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/find.go:31 +0x5a6 fp=0xc4d2cc74d8 sp=0xc4d2cc7260 pc=0x6fa366
github.com/restic/restic/internal/restic.FindUsedBlobs(0xc15640, 0xc42020e9c0, 0xc1d760, 0xc42021fa40, 0x4edfb5f894134ac9, 0xf0bba160fd7f8f19, 0xe83800bc1f59b772, 0xc1b5cb4b8c32a833,
0xc44ee1c960, 0xc44ee1c990, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/find.go:31 +0x5a6 fp=0xc4d2cc7750 sp=0xc4d2cc74d8 pc=0x6fa366
github.com/restic/restic/internal/restic.FindUsedBlobs(0xc15640, 0xc42020e9c0, 0xc1d760, 0xc42021fa40, 0x5efbd8585a9898d2, 0x448917a1ace19706, 0x8ee237ec0622eb45, 0xc9d306cd39e8d05d,
0xc44ee1c960, 0xc44ee1c990, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/find.go:31 +0x5a6 fp=0xc4d2cc79c8 sp=0xc4d2cc7750 pc=0x6fa366
github.com/restic/restic/internal/restic.FindUsedBlobs(0xc15640, 0xc42020e9c0, 0xc1d760, 0xc42021fa40, 0x260fdd5acba993c3, 0x3ed04f4eeab05c9f, 0xe5ef8da60b35f98, 0xd090ad85e968ef5f,
0xc44ee1c960, 0xc44ee1c990, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/find.go:31 +0x5a6 fp=0xc4d2cc7c40 sp=0xc4d2cc79c8 pc=0x6fa366
github.com/restic/restic/internal/restic.FindUsedBlobs(0xc15640, 0xc42020e9c0, 0xc1d760, 0xc42021fa40, 0x60f7906c006bf615, 0x1bd2d33fc9768849, 0xee593a9983a1f5bf, 0x9ab809619e8cc152,
0xc44ee1c960, 0xc44ee1c990, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/find.go:31 +0x5a6 fp=0xc4d2cc7eb8 sp=0xc4d2cc7c40 pc=0x6fa366
github.com/restic/restic/internal/restic.FindUsedBlobs(0xc15640, 0xc42020e9c0, 0xc1d760, 0xc42021fa40, 0x8f00b9047475f470, 0x2094345d9e4dbb28, 0x3905971b8623f05c, 0x14b3bcdc097489ee,
0xc44ee1c960, 0xc44ee1c990, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/find.go:31 +0x5a6 fp=0xc4d2cc8130 sp=0xc4d2cc7eb8 pc=0x6fa366
main.pruneRepository(0x7ffc3e67bcea, 0x39, 0x7ffc3e67bd34, 0x58, 0x0, 0x0, 0x0, 0x7ffc3e67bd99, 0x11, 0x0, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/cmd/restic/cmd_prune.go:191 +0xea3 fp=0xc4d2cc9060 sp=0xc4d2cc8130 pc=0x9d23e3
main.runForget(0x0, 0x0, 0x7, 0x4, 0x6, 0x1, 0x0, 0x0, 0x0, 0x0, ...)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/cmd/restic/cmd_forget.go:241 +0xece fp=0xc4d2cc9970 sp=0xc4d2cc9060 pc=0x9ca82e
main.glob..func10(0xf59720, 0xc420276160, 0x0, 0xb, 0x0, 0x0)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/cmd/restic/cmd_forget.go:24 +0xb5 fp=0xc4d2cc9b60 sp=0xc4d2cc9970 pc=0x9e4935
github.com/spf13/cobra.(*Command).execute(0xf59720, 0xc420282180, 0xb, 0xc, 0xf59720, 0xc420282180)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/spf13/cobra/command.go:762 +0x468 fp=0xc4d2cc9c50 sp=0xc4d2cc9b60 pc=0x6bae28
github.com/spf13/cobra.(*Command).ExecuteC(0xf59980, 0xffffffffffffffff, 0x0, 0x19)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/spf13/cobra/command.go:852 +0x30a fp=0xc4d2cc9d90 sp=0xc4d2cc9c50 pc=0x6bb83a
github.com/spf13/cobra.(*Command).Execute(0xf59980, 0x23, 0xc4201cfeb8)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/spf13/cobra/command.go:800 +0x2b fp=0xc4d2cc9dc0 sp=0xc4d2cc9d90 pc=0x6bb50b
main.main()
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/cmd/restic/main.go:86 +0x1d6 fp=0xc4d2cc9f88 sp=0xc4d2cc9dc0 pc=0x9e3ac6
runtime.main()
        /usr/lib/go-1.10/src/runtime/proc.go:198 +0x212 fp=0xc4d2cc9fe0 sp=0xc4d2cc9f88 pc=0x42ccc2
runtime.goexit()
        /usr/lib/go-1.10/src/runtime/asm_amd64.s:2361 +0x1 fp=0xc4d2cc9fe8 sp=0xc4d2cc9fe0 pc=0x457e61

goroutine 5 [syscall, 92 minutes]:
os/signal.signal_recv(0x0)
        /usr/lib/go-1.10/src/runtime/sigqueue.go:139 +0xa6
os/signal.loop()
        /usr/lib/go-1.10/src/os/signal/signal_unix.go:22 +0x22
created by os/signal.init.0
        /usr/lib/go-1.10/src/os/signal/signal_unix.go:28 +0x41

goroutine 6 [chan receive, 92 minutes]:
github.com/restic/restic/internal/restic.init.0.func1.1()
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/lock.go:257 +0xef
created by github.com/restic/restic/internal/restic.init.0.func1
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/lock.go:254 +0x35

goroutine 7 [select, 92 minutes, locked to thread]:
runtime.gopark(0xbb6a48, 0x0, 0xb84e9f, 0x6, 0x18, 0x1)
        /usr/lib/go-1.10/src/runtime/proc.go:291 +0x11a
runtime.selectgo(0xc42003ef50, 0xc420086240)
        /usr/lib/go-1.10/src/runtime/select.go:392 +0xe50
runtime.ensureSigM.func1()
        /usr/lib/go-1.10/src/runtime/signal_unix.go:549 +0x1f4
runtime.goexit()
        /usr/lib/go-1.10/src/runtime/asm_amd64.s:2361 +0x1

goroutine 8 [chan receive, 92 minutes]:
github.com/restic/restic/internal/restic.init.2.func1(0xc420086180)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/progress_unix.go:17 +0xa3
created by github.com/restic/restic/internal/restic.init.2
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/progress_unix.go:16 +0xab

goroutine 10 [IO wait, 2 minutes]:
internal/poll.runtime_pollWait(0x7f7d7829fbc0, 0x72, 0xc42004abe0)
        /usr/lib/go-1.10/src/runtime/netpoll.go:173 +0x57
internal/poll.(*pollDesc).wait(0xc4202146a8, 0x72, 0xffffffffffffff01, 0xc0ef60, 0xf14738)
        /usr/lib/go-1.10/src/internal/poll/fd_poll_runtime.go:85 +0x9b
internal/poll.(*pollDesc).waitRead(0xc4202146a8, 0xc4b4f12001, 0x4, 0x4)
        /usr/lib/go-1.10/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc420214690, 0xc4b4f120c4, 0x4, 0x4, 0x0, 0x0, 0x0)
        /usr/lib/go-1.10/src/internal/poll/fd_unix.go:157 +0x17d
os.(*File).read(0xc42020a140, 0xc4b4f120c4, 0x4, 0x4, 0x18, 0x0, 0x0)
        /usr/lib/go-1.10/src/os/file_unix.go:226 +0x4e
os.(*File).Read(0xc42020a140, 0xc4b4f120c4, 0x4, 0x4, 0x18, 0x0, 0x0)
        /usr/lib/go-1.10/src/os/file.go:107 +0x6a
io.ReadAtLeast(0xc0d480, 0xc420144ae0, 0xc4b4f120c4, 0x4, 0x4, 0x4, 0xa6e780, 0xc42013a301, 0xc4b4f120c4)
        /usr/lib/go-1.10/src/io/io.go:309 +0x86
io.ReadFull(0xc0d480, 0xc420144ae0, 0xc4b4f120c4, 0x4, 0x4, 0xc42004aea8, 0x4056e7, 0xc42d7cc420)
        /usr/lib/go-1.10/src/io/io.go:327 +0x58
github.com/pkg/sftp.recvPacket(0xc0d480, 0xc420144ae0, 0x4051c5, 0xc42d7cc420, 0xc42004af70, 0x1, 0x985f32, 0xc445504001)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/pkg/sftp/packet.go:143 +0x86
github.com/pkg/sftp.(*conn).recvPacket(0xc420144ae0, 0xc42004af70, 0xc4000378eb, 0xc445504108, 0x1, 0x0, 0x0)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/pkg/sftp/conn.go:22 +0x37
github.com/pkg/sftp.(*clientConn).recv(0xc420144ae0, 0x0, 0x0)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/pkg/sftp/conn.go:64 +0xe5
github.com/pkg/sftp.(*clientConn).loop(0xc420144ae0)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/pkg/sftp/conn.go:49 +0x5b
created by github.com/pkg/sftp.NewClientPipe
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/pkg/sftp/client.go:128 +0x1c3

goroutine 18 [chan receive, 92 minutes]:
main.CleanupHandler(0xc4201fa060)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/cmd/restic/cleanup.go:62 +0x5d
created by main.init.0
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/cmd/restic/cleanup.go:24 +0x6d

goroutine 19 [IO wait, 92 minutes]:
internal/poll.runtime_pollWait(0x7f7d7829ff00, 0x72, 0xc420038c70)
        /usr/lib/go-1.10/src/runtime/netpoll.go:173 +0x57
internal/poll.(*pollDesc).wait(0xc420214568, 0x72, 0xffffffffffffff01, 0xc0ef60, 0xf14738)
        /usr/lib/go-1.10/src/internal/poll/fd_poll_runtime.go:85 +0x9b
internal/poll.(*pollDesc).waitRead(0xc420214568, 0xc4202b8001, 0x1000, 0x1000)
        /usr/lib/go-1.10/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc420214550, 0xc4202b8000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
        /usr/lib/go-1.10/src/internal/poll/fd_unix.go:157 +0x17d
os.(*File).read(0xc42020a120, 0xc4202b8000, 0x1000, 0x1000, 0x0, 0x0, 0xc420038d78)
        /usr/lib/go-1.10/src/os/file_unix.go:226 +0x4e
os.(*File).Read(0xc42020a120, 0xc4202b8000, 0x1000, 0x1000, 0x1000, 0x1000, 0x0)
        /usr/lib/go-1.10/src/os/file.go:107 +0x6a
bufio.(*Scanner).Scan(0xc420038f30, 0xc115a0)
        /usr/lib/go-1.10/src/bufio/scan.go:208 +0xbf
github.com/restic/restic/internal/backend/sftp.startClient.func1(0xc115a0, 0xc42020a120, 0xb827c8, 0x3)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/backend/sftp/sftp.go:53 +0x1e6
created by github.com/restic/restic/internal/backend/sftp.startClient
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/backend/sftp/sftp.go:51 +0x1b9

goroutine 20 [syscall, 92 minutes]:
syscall.Syscall6(0xf7, 0x1, 0x2035, 0xc420039598, 0x1000004, 0x0, 0x0, 0x0, 0x0, 0x0)
        /usr/lib/go-1.10/src/syscall/asm_linux_amd64.s:44 +0x5
os.(*Process).blockUntilWaitable(0xc4202326c0, 0x0, 0x0, 0x0)
        /usr/lib/go-1.10/src/os/wait_waitid.go:31 +0x98
os.(*Process).wait(0xc4202326c0, 0x0, 0x0, 0x0)
        /usr/lib/go-1.10/src/os/exec_unix.go:22 +0x3c
os.(*Process).Wait(0xc4202326c0, 0x0, 0x0, 0x0)
        /usr/lib/go-1.10/src/os/exec.go:123 +0x2b
os/exec.(*Cmd).Wait(0xc420238580, 0x0, 0x0)
        /usr/lib/go-1.10/src/os/exec/exec.go:461 +0x5c
github.com/restic/restic/internal/backend/sftp.startClient.func2(0xc420238580, 0xc420144a80)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/backend/sftp/sftp.go:76 +0x2f
created by github.com/restic/restic/internal/backend/sftp.startClient
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/backend/sftp/sftp.go:75 +0x29e

goroutine 34 [select, 2 minutes]:
main.refreshLocks(0xf65c00, 0xc420136060)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/cmd/restic/lock.go:72 +0x221
created by main.lockRepository
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/cmd/restic/lock.go:49 +0x373

goroutine 98 [select, 15 minutes]:
github.com/restic/restic/internal/restic.(*Progress).reporter(0xc44ee282c0)
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/progress.go:169 +0x130
created by github.com/restic/restic/internal/restic.(*Progress).Start
        /build/restic-XDCNVl/restic-0.9.3+ds/obj-x86_64-linux-gnu/src/github.com/restic/restic/internal/restic/progress.go:96 +0x132

рд╕реНрдерд╛рдпреА рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛ - рдЗрддрдирд╛ "рдкреЛрд░реНрдЯреЗрдмрд▓" рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж - рдмрд╕ рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдмрд╛рджрд▓ рдореЗрдВ рдПрдХ рд╡реАрдПрдо рдХреЛ рд╕реНрдкрд┐рди рдХрд░рдирд╛ рдерд╛ (рдореИрдВрдиреЗ DigitalOcean рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди AWS рдпрд╛ рдЬреЛ рднреА рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдареАрдХ рд╣реИ)ред рдЗрд╕реЗ рд╡реАрд╕реАрдкреАрдпреВ рдФрд░ рд░реИрдо рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рджреЗрдВ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ 16 рдХреЛрд░ рдФрд░ 64 рдЬреАрдмреА рд░реИрдо рдпрд╛ рдЬреЛ рднреА рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рд╣реИ) рдФрд░ рд╡рд╣рд╛рдВ рдЖрд░рд╛рдо рд╕реЗ рднрд╛рдЧ рдЧрдпрд╛ред

рдпрд╣ рдХреБрдЫ рдШрдВрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛, рдФрд░ рдореБрдЭреЗ рдХреБрдЫ рд╣реА $ рдХреА рд▓рд╛рдЧрдд рд▓рдЧреА, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдпрд╣ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ред

рдпрд╣ рдкреБрд░рд╛рдиреЗ рд╕рд╛рдорд╛рди рдХреЛ рд╕рд╛рдл рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдЕрдм рдЕрдкрдиреЗ рдирд┐рдпрдорд┐рдд рд╕рд░реНрд╡рд░ рдкрд░ рднреВрд▓ - рдЪреВрдХ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВред

рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдмреИрдХрдЕрдк-рд╕рд░реНрд╡рд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреНрд▓рд╛рдЙрдб рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реЛ ...

рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдмреИрдХрдЕрдк-рд╕рд░реНрд╡рд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреНрд▓рд╛рдЙрдб рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реЛ ...

(рдЕрди) рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ рдирд╣реАрдВ рд╣реИ ... рд╡реИрд╕реЗ рднреА рдзрдиреНрдпрд╡рд╛рдж!

рдирдорд╕реНрддреЗ

рдореИрдВ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдЖ рд░рд╣реА рд╣реИ, рднрд▓реЗ рд╣реА рд╕рд░реНрд╡рд░ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдореЗрдореЛрд░реА рд╣реЛред рдореИрдВ рд▓рдЧрднрдЧ 150T рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдХреБрдЫ рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рддреНрд░реБрдЯрд┐ рдФрд░ рдореЗрдореЛрд░реА рдЙрдкрдпреЛрдЧ рд╕рдВрд▓рдЧреНрди рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдореЗрдВ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВред

рджреМрдбрд╝рдиреЗ рдХрд╛ рдЖрд░рд╛рдо 0.9.3ред
prune_outofmemory.txt

screenshot from 2019-01-20 11-24-52
screenshot from 2019-01-20 11-24-23

рдореИрдВ рдЗрд╕реЗ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ:

restic 0.9.4 (1107eef2) compiled with go1.10.4 on linux/arm

рд░реЗрдбреАрдирд╛рд╕ рдбреБрдУ v1 рдкрд░ рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ 512 рдПрдордмреА рд░реИрдо рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдмреА 2 рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреБрд▓ 130190 рдлрд╛рдЗрд▓реЗрдВ @ 689.646 GiB (рд░реЗрд╕реНрдЯрд┐рдХ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░) рд╣реИрдВред

рдПрдХ prune рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ (~ 32hrs), рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд┐рдирд╛ рдкреВрд░рд╛ рд╣реЛрддрд╛ рд╣реИред
рдПрдХ рдХрд╛рдо рдЬреЛ рдореИрдВрдиреЗ рдХрд┐рдпрд╛, рд╡рд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:

$ export GOGC=33
$ restic --option b2.connections=3 <other options here are omitted>

рдЬреИрд╕рд╛ рдХрд┐ рдореЗрд░рд╛ рд░реЗрдкреЛ рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рд╣реИ, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рд╕рднреА рд╕реЗрдЯрдЕрдкреЛрдВ рдХреЗ рд╕рд╛рде рди рд╣реЛ?

рдпрд╣рд╛рдБ рдХреБрдЫ рдмрд╣реБрдд рд╣реА рдЕрдЬреАрдм рдЪрд▓ рд░рд╣рд╛ рд╣реИ ... рдореИрдВ рдЗрд╕реЗ рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдпрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ prune рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реНрдореГрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдВрдзреЗрд░реЗ рдореЗрдВ рд╣реВрдБ рдЬрд╣рд╛рдБ рдпрд╣ рд╣реЛрддрд╛ рд╣реИ ...

рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рдХреБрдЫ рд╕рдордп рдЖрд░рд╛рдо рдХрд░рдиреЗ рдФрд░ рдЕрдкрдиреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рдЙрдЪреНрдЪ рдореЗрдореЛрд░реА рдЙрдкрдпреЛрдЧ рдХреЗ рдХрд╛рд░рдг рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдЦрд░реНрдЪ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рддреЛ рдЗрд╕рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреА, рдФрд░ рдПрдХ рдЧрддрд┐ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред

рд░рд┐рдмреВрдЯ рдХреЗ рдмрд╛рдж рдореИрдВ 0.93 рдХреЗ рд╕рд╛рде prune рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрднреА рднреА рдзреАрдорд╛ рд╣реИ рдФрд░ рдереЛрдбрд╝реА рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ

screenshot from 2019-01-22 11-59-29

screenshot from 2019-01-22 11-59-14

рдореИрдВ рдХреБрдЫ рд░реВрдкрд░реЗрдЦрд╛ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВ, рдЕрдЧрд░ рдХреЛрдИ рднреА рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдореБрдЭреЗ рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
8 рдЬреАрдмреА рд░реИрдо рд╡рд╛рд▓реЗ рд╡реАрдПрдо рдкрд░ рд▓рдЧрднрдЧ 500 рдЬреАрдмреА рдбреЗрдЯрд╛, рдмреИрдХрдПрдВрдб рдЕрдореЗрдЬрд╝рди рдПрд╕ 3 рд╣реИред

@ рдУрд▓реЗрди рдЖрдкрдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧреА рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Go рдореЗрдВ рдЕрдиреБрднрд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдФрд░ рдкрд╛рда рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреБрдирд░рд╛рд╡реГрддреНрдд рдФрд░ рдЬрдЯрд┐рд▓ рдФрд░ рдЬрдЯрд┐рд▓ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╣рдо рдПрдХ рдордВрдЪ рдкрд░ рдирд╣реАрдВ рд╣реИрдВ рдЬрд╣рд╛рдБ рдЖрдк рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╣реБрдд рдЗрд░рд╛рджреЛрдВ рдХреЗ рдмрд╛рд╡рдЬреВрдж рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ :)

рдпрд╣ рдЬрд╛рдирдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ рдХрд┐ рдкреНрд░реВрдирд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХрд┐рд╕ рдЪрд░рдг рдкрд░ рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рд╛рде рд╕реЗ рдирд┐рдХрд▓ рдЬрд╛рддрд╛ рд╣реИ?

рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рддрдм рд╣реБрдЖ рдЬрдм restic check prune. рдЪрд▓ рд░рд╣рд╛ рдерд╛

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрдм рддрдХ prune рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ, рдлрд┐рд░ рднреА рдХреЛрдИ рд╕реНрдореГрддрд┐ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИред

рддреЛ рдХреНрдпрд╛ рд╣рд░ prune рдСрдкрд░реЗрд╢рди рд╕реЗ рдкрд╣рд▓реЗ restic check рдЪрд▓рддрд╛ рд╣реИ?
screenshot from 2019-01-23 18-16-13

рддреЛ рдХреНрдпрд╛ рд░реЗрдХреА рдЪреЗрдХ рд╣рд░ рдкреНрд░реВрди рдСрдкрд░реЗрд╢рди рд╕реЗ рдкрд╣рд▓реЗ рдЪрд▓рддрд╛ рд╣реИ?

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭ рд░рд╣рд╛ рд╣реВрдВ, рдЖрдк restic check рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рдХреЗ рдмрд╛рдж restic prune ?

рдпреЗ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдСрдкрд░реЗрд╢рди рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ prune check рд╕рдорд╛рди рдХреБрдЫ рднреА рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди prune рдХреЗ рдХрдИ рдЪрд░рдг рд╣реИрдВ (рдЗрдВрдбреЗрдХреНрд╕ рдмрдирд╛рдПрдВ, рд╕рдВрджрд░реНрднрд┐рдд рдбреЗрдЯрд╛ рдвреВрдВрдвреЗрдВ, рдкреБрдирдГ рд▓рд┐рдЦреЗрдВ, рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╣рдЯрд╛рдПрдВ, рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдПрдВ ) рдФрд░ рдпрд╣ рдЬрд╛рдирдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЪрд░рдг рдХреЗ рджреМрд░рд╛рди рдмрдврд╝ рдЬрд╛рддреА рд╣реИ ...

рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдореИрдВ рдХреБрдЫ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рдЗрд╕реЗ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╕рд╛рде рд╣реА рд╕рд┐рд░реНрдл рдПрдХ рдЪреЗрдХ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ:

restic check --no-lock
using temporary cache in /tmp/restic-check-cache-300914548
repository a63c6698 opened successfully, password is correct
created new cache in /tmp/restic-check-cache-300914548
load indexes
check all packs
check snapshots, trees and blobs
fatal error: runtime: out of memory

runtime stack:
runtime.throw(0xc0d786, 0x16)
    /usr/local/go/src/runtime/panic.go:608 +0x72
runtime.sysMap(0xc0f0000000, 0x4000000, 0x11e41d8)
    /usr/local/go/src/runtime/mem_linux.go:156 +0xc7
runtime.(*mheap).sysAlloc(0x11ca7a0, 0x4000000, 0x11ca7b8, 0x7ff95adeb1e0)
    /usr/local/go/src/runtime/malloc.go:619 +0x1c7
runtime.(*mheap).grow(0x11ca7a0, 0x1, 0x0)
    /usr/local/go/src/runtime/mheap.go:920 +0x42
runtime.(*mheap).allocSpanLocked(0x11ca7a0, 0x1, 0x11e41e8, 0x400)

etc etc

рдпрд╣ 200GB рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА, 4GB рд░реИрдо рдФрд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ 2.3GB рдлреНрд░реА рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡рд░ рдкрд░ рд╣реИред

рдореИрдВрдиреЗ рдЕрднреА рднреА рдореЗрдореЛрд░реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рднрд╛рдЧ рд▓рд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди check ред рдореИрдВрдиреЗ рдкрд╣рд▓реА рдмрд╛рд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ рдПрдХ prune рднрд╛рдЧ рд▓рд┐рдпрд╛ (130-рд╕реНрдиреИрдкрд╢реЙрдЯ рдкрд░, 200GB рд░реЗрдкреЛ рдЬреЛ рдХрд┐ 17 рд╕реНрдиреИрдкрд╢реЙрдЯ рдФрд░ 100GB рддрдХ рдХрдо рд╣реЛ рдЧрдпрд╛ рдерд╛), рд▓реЗрдХрд┐рди рдмрд╛рдж рдореЗрдВ рдПрдХ рдЪреЗрдХ рдореЗрдореЛрд░реА рд╕реЗ рдмрд╛рд╣рд░ рдЪрд▓рд╛ рдЧрдпрд╛ (рджреЛ рдмрд╛рд░, рдПрдХ рд╣реА рдкрд░рд┐рдгрд╛рдо):

using temporary cache in /data/backup/restic/restic-check-cache-567709739
created new cache in /data/backup/restic/restic-check-cache-567709739
create exclusive lock for repository
load indexes
check all packs
check snapshots, trees and blobs
fatal error: runtime: out of memory

рдЗрд╕рдХреЗ рдмрд╛рдж рдкреНрд░рддреНрдпреЗрдХ рдЧреЛрд░реЛрдЗрди рдХреЗ рд▓рд┐рдП рдмреИрдХрдЯреНрд░реИрдХ рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИ (рдЬреЛ рд╕рдВрджрд┐рдЧреНрдз рд░реВрдк рд╕реЗ рдХрдИ рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ, grep рдЙрдирдореЗрдВ рд╕реЗ 90 рдХреЛ рдЧрд┐рдирддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдорддреМрд░ рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдереНрд░реЗрдб рд╕реЗ рдЬреБрдбрд╝реЗ рдПрдХ рдореБрдЯреНрдареА рднрд░ рдЧреЛрд░реЛрдЗрдВрдЯреНрд╕ рд╣реИрдВ)ред

рдпрд╣ рдХреБрдЫ рд╣рдж рддрдХ рдкреБрд░рд╛рдиреЗ рдПрдЯрдо рд╕рд┐рд╕реНрдЯрдо (4 рдЬреАрдмреА рд░реИрдо, рд▓рдЧрднрдЧ 2.5 рдЬреА рдореБрдлреНрдд, рд╕реНрд╡реИрдк рдЬреНрдпрд╛рджрд╛рддрд░ рдкреВрд░реНрдг рд▓рдЧрддрд╛ рд╣реИ) рдкрд░ рд╣реИред рдореИрдВ рдбреЗрдмрд┐рдпрди рдкрд░реАрдХреНрд╖рдг рд╕реЗ рдЖрд░рд╛рдо рд╕рдВрд╕реНрдХрд░рдг 0.9.4 + рдбреАрдПрд╕ -1 рдЪрд▓рд╛ рд░рд╣рд╛ рдерд╛ред

рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдУрдкреА рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдХреБрдЫ рдЬрд╛рдирдХрд╛рд░реА рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВред

рдпреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореВрд▓реНрдпрд╡рд╛рди рдбреЗрдЯрд╛ рдмрд┐рдВрджреБ рд╣реИрдВ: рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╕рд╛рди рд╕реНрдерд┐рддрд┐ рд╣реИ (рдЪреВрдВрдХрд┐ check рд░реЗрдкреЛ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛)ред рдзрдиреНрдпрд╡рд╛рдж!

рд╡рд░реНрддрдорд╛рди рдорд╛рд╕реНрдЯрд░ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рдореЗрдореЛрд░реА рдЙрдкрдпреЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрдо рд╣реЛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдХреБрдЫ рдФрд░ рдЕрдиреБрдХреВрд▓рди рд░рд╛рд╕реНрддреЗ рдореЗрдВ рд╣реИрдВред

рдореБрдЦреНрдп рд╡рд┐рд╖рдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ: @ johndoe31415 рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдмрд╛рдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдЕрднреА рднреА рд╡рд░реНрддрдорд╛рди рд╕реНрд╡рд╛рдореА рдХреЗ рд╕рд╛рде рдЦреБрд▓рд╛ рд╣реИ?

рдпрджрд┐ рд╣рд╛рдБ, рддреЛ рдХреНрдпрд╛ рдЖрдк # 2718 рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдпрд╣ рдЖрдкрдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рддрд╛ рд╣реИ?
рдпрджрд┐ рдирд╣реАрдВ, рддреЛ IMO рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдмрдВрдж рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

рдЕрд░реЗ @ рдЕрд╕реНрд╡рд╕реНрде - рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореИрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдорд╢реАрди рдЬреЛ рдореИрдВрдиреЗ рдореВрд▓ рд░реВрдк рд╕реЗ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдереА, рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ рдбрд┐рдХрдореАрд╢рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдПрдХ рдЕрд▓рдЧ рд╕рдВрд░рдЪрд┐рдд рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рд╕реЗ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдХрднреА рднреА рд╡рд░реНрдгрд┐рдд рдореБрджреНрджреЗ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдорд╛рдлреА рдЪрд╛рд╣рддрд╛ рд╣реВрдБред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
4 / 5 - 1 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

stevesbrain picture stevesbrain  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

christian-vent picture christian-vent  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

fbartels picture fbartels  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

fd0 picture fd0  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

fd0 picture fd0  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ