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

Jobs getting enqueued but not processed #373

Closed
bploetz opened this issue Jul 28, 2021 · 16 comments
Closed

Jobs getting enqueued but not processed #373

bploetz opened this issue Jul 28, 2021 · 16 comments

Comments

@bploetz
Copy link

bploetz commented Jul 28, 2021

  • Which Faktory package and version?

Docker container contribsys/faktory:1.4.1

  • Which Faktory worker package and version?

faktory_worker_go v1.4.0

  • Please include any relevant worker configuration
	mgr := worker.NewManager()

	// use up to N goroutines to execute jobs
	concurrencyString := os.Getenv("NUM_GO_ROUTINES")
	concurrency, err := strconv.Atoi(concurrencyString)
	if err != nil {
		panic("NUM_GO_ROUTINES is not a number")
	}
	mgr.Concurrency = concurrency

	pool, nperr := faktory.NewPool(concurrency + 2)
	if nperr != nil {
		log.Panicf("Couldn't create Faktory connection pool: %+v", nperr)
	}
	mgr.Pool = pool

	receiptClient, cerr := mgr.Pool.Get()
	if cerr != nil {
		log.Panicf("Couldn't get Faktory client from pool: %+v", cerr)
	}

	// register job types and the function to execute them
	mgr.Register("foo", fooProcessor.Process)
        // etc.....

	// pull jobs from these queues, in this order of precedence
	mgr.ProcessStrictPriorityQueues("foo", "bar", "baz", "etc")

	// Start processing jobs, this method does not return
	fmt.Println("starting job workers")
	mgr.Run()
  • Please include any relevant error messages or stacktraces

Are you using an old version?
Have you checked the changelogs to see if your issue has been fixed in a later version?

https://github.com/contribsys/faktory/blob/master/Changes.md
https://github.com/contribsys/faktory/blob/master/Pro-Changes.md
https://github.com/contribsys/faktory/blob/master/Ent-Changes.md

Yes, using an old version, nothing in changelog of note as far as I can tell.

We've been running Faktory in production with no issues for over a year. All of a sudden today, we got an alert that the number of enqueued jobs was high. We saw the Enqueued size keep growing but nothing was getting processed. I restarted the worker process, which processed through the backlog, then everything got stuck again.

I sent the TTIN signal as noted here contribsys/faktory_worker_go#33 but I can't make heads or tails of the thread dump.

We killed the Faktory server itself and that seems to have fixed the issue. Unfortunately I did not get a thread dump on the server itself, but it had been running since 2020-08-28 09:49:22 -0400.

Unfortunately when you kill the server, you lose all of the enqueued jobs. I copied all of the enqueued jobs and their arguments from the Faktory UI and re-enqueued them manually in the new Faktory server, but is there a better way to gracefully shut down Faktory and bring it back up with the same data? Ironically all of the jobs in the Dead queue survived into the new instance and the old metrics (number of jobs run, etc), so I assume that means it is using the mounted volume into the container correctly for persisting redis data?

@mperham
Copy link
Collaborator

mperham commented Jul 29, 2021

There's not a lot to go on here. I need more data.

  1. Can you show me the TTIN output?
  2. Can you update to the latest version and see if that helps?
  3. Can you show me the contents of the /debug page when it is misbehaving?

@bploetz
Copy link
Author

bploetz commented Jul 29, 2021

worker_thread_dump.txt

@mperham

  1. worker TTIN thread dump attached.
  2. Not quickly, no
  3. I didn't happen to look at the /debug page when this was happening, and like I said I killed the server, so I can't go back in time unfortunately. I can't force the server/worker into this state at will, so if it happens to happen again I'll grab the /debug page output if/when it happens.

@mperham
Copy link
Collaborator

mperham commented Jul 31, 2021

The only unusual thing I see there is a panic recovery (maybe your NewRelic layer tries to recover?):

panic: runtime error: slice bounds out of range [91:80] [recovered]
	panic: runtime error: slice bounds out of range [91:80]
goroutine 67 [running]:
github.com/newrelic/go-agent/v3/newrelic.(*thread).End(0xc000483b10, 0xcf7a40, 0xc000388000, 0x0, 0x0)
	/go/pkg/mod/github.com/newrelic/go-agent/[email protected]/newrelic/internal_txn.go:475 +0x163c
github.com/newrelic/go-agent/v3/newrelic.(*Transaction).End(0xc0005ed4e0)
	/go/pkg/mod/github.com/newrelic/go-agent/[email protected]/newrelic/transaction.go:41 +0x67
panic(0xcf7a40, 0xc000388000)
	/usr/local/go/src/runtime/panic.go:679 +0x1b2
bufio.(*Reader).ReadSlice(0xc0000a8f00, 0xa, 0xc00069aa78, 0x4c55c8, 0x0, 0x0, 0xc00069ad70)
	/usr/local/go/src/bufio/bufio.go:334 +0x22d
bufio.(*Reader).ReadBytes(0xc0000a8f00, 0xa, 0x0, 0x0, 0x0, 0x0, 0xc0004a12ec)
	/usr/local/go/src/bufio/bufio.go:437 +0x73
github.com/contribsys/faktory/client.readResponse(0xc0000a8f00, 0x2, 0x0, 0x0, 0xc00069acd0, 0x8de4ca)
	/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:493 +0x72
github.com/contribsys/faktory/client.ok(0xc0000a8f00, 0x0, 0x0)
	/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:456 +0x2f
github.com/contribsys/faktory/client.(*Client).ok(0xc000206100, 0xc0000a8f00, 0xd64a71, 0x4)
	/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:394 +0x2b
github.com/contribsys/faktory/client.(*Client).Push(0xc000206100, 0xc0006e5720, 0xc000b8b070, 0x1)
	/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:257 +0xd2
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc000414920, 0xc0006f2c30, 0x24, 0xfd6040, 0xc000206100, 0x0, 0x0)
	/opt/reward-service/processors/receipt_processing_helpers.go:697 +0x1da
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e240, 0xfe7b00, 0xc0002e1c80, 0xc0000f4900, 0x1, 0x4, 0x0, 0x0)
	/opt/reward-service/processors/digital_receipt.go:217 +0x23d3

Otherwise I don't see any type of smoking gun. You are using Faktory client 1.3.0 but I don't see any bug fixes that would definitely help. I would recommend upgrading both Faktory and the client version if possible just so you are on the latest code and we can rule out any old, fixed bugs.

@mperham mperham closed this as completed Nov 15, 2021
@bploetz
Copy link
Author

bploetz commented Apr 13, 2022

@mperham this has happened twice in the last week. Output from the /debug page:

Debugging:
Screen Shot 2022-04-13 at 12 04 31 PM

Redis info:

# Server
redis_version:5.0.7
redis_git_sha1:bed89672
redis_git_dirty:0
redis_build_id:575dc7b6da705497
redis_mode:standalone
os:Linux 4.14.158-129.185.amzn2.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:9.2.0
process_id:10
run_id:840f9e5c395f841819460a39d1c9c8f9cf38c7f8
tcp_port:0
uptime_in_seconds:22380553
uptime_in_days:259
hz:10
configured_hz:10
lru_clock:5698488
executable:/usr/bin/redis-server
config_file:/tmp/redis.conf

# Clients
connected_clients:3
client_recent_max_input_buffer:2
client_recent_max_output_buffer:0
blocked_clients:2

# Memory
used_memory:789480
used_memory_human:770.98K
used_memory_rss:3846144
used_memory_rss_human:3.67M
used_memory_peak:3098629
used_memory_peak_human:2.96M
used_memory_peak_perc:25.48%
used_memory_overhead:699998
used_memory_startup:550324
used_memory_dataset:89482
used_memory_dataset_perc:37.42%
allocator_allocated:755718
allocator_active:3808256
allocator_resident:3808256
total_system_memory:8053796864
total_system_memory_human:7.50G
used_memory_lua:37888
used_memory_lua_human:37.00K
used_memory_scripts:0
used_memory_scripts_human:0B
number_of_cached_scripts:0
maxmemory:0
maxmemory_human:0B
maxmemory_policy:noeviction
allocator_frag_ratio:5.04
allocator_frag_bytes:3052538
allocator_rss_ratio:1.00
allocator_rss_bytes:0
rss_overhead_ratio:1.01
rss_overhead_bytes:37888
mem_fragmentation_ratio:5.09
mem_fragmentation_bytes:3090426
mem_not_counted_for_evict:0
mem_replication_backlog:0
mem_clients_slaves:0
mem_clients_normal:83538
mem_aof_buffer:0
mem_allocator:libc
active_defrag_running:0
lazyfree_pending_objects:0

# Persistence
loading:0
rdb_changes_since_last_save:2
rdb_bgsave_in_progress:0
rdb_last_save_time:1649865643
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:0
rdb_current_bgsave_time_sec:-1
rdb_last_cow_size:487424
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
aof_last_cow_size:0

# Stats
total_connections_received:3015
total_commands_processed:231609196
instantaneous_ops_per_sec:1
total_net_input_bytes:31338644618
total_net_output_bytes:1584414740
instantaneous_input_kbps:0.17
instantaneous_output_kbps:0.01
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:0
expired_stale_perc:0.00
expired_time_cap_reached_count:0
evicted_keys:0
keyspace_hits:5367534
keyspace_misses:7711769
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:116
migrate_cached_sockets:0
slave_expires_tracked_keys:0
active_defrag_hits:0
active_defrag_misses:0
active_defrag_key_hits:0
active_defrag_key_misses:0

# Replication
role:master
connected_slaves:0
master_replid:a5f09e94d96c9a74e05086116c8f27b5e64e4671
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

# CPU
used_cpu_sys:10506.235012
used_cpu_user:9990.253246
used_cpu_sys_children:75.834772
used_cpu_user_children:403.868009

# Cluster
cluster_enabled:0

# Keyspace
db0:keys=1243,expires=0,avg_ttl=0

Disk Usage:

> df -h
Filesystem                Size      Used Available Use% Mounted on
overlay                  98.3G      4.8G     93.1G   5% /
tmpfs                    64.0M         0     64.0M   0% /dev
tmpfs                     3.8G         0      3.8G   0% /sys/fs/cgroup
/dev/nvme0n1p1           98.3G      4.8G     93.1G   5% /etc/resolv.conf
/dev/nvme0n1p1           98.3G      4.8G     93.1G   5% /etc/hostname
/dev/nvme0n1p1           98.3G      4.8G     93.1G   5% /etc/hosts
shm                      64.0M         0     64.0M   0% /dev/shm
fs-006ac882.efs.us-east-1.amazonaws.com:/
                          8.0E         0      8.0E   0% /var/lib/faktory
tmpfs                     3.8G         0      3.8G   0% /proc/acpi
tmpfs                    64.0M         0     64.0M   0% /proc/kcore
tmpfs                    64.0M         0     64.0M   0% /proc/keys
tmpfs                    64.0M         0     64.0M   0% /proc/latency_stats
tmpfs                    64.0M         0     64.0M   0% /proc/timer_list
tmpfs                    64.0M         0     64.0M   0% /proc/sched_debug
tmpfs                     3.8G         0      3.8G   0% /sys/firmware

@mperham
Copy link
Collaborator

mperham commented Apr 13, 2022 via email

@bploetz
Copy link
Author

bploetz commented Apr 13, 2022

@mperham not quickly, but we'll get that work planned.

@bploetz
Copy link
Author

bploetz commented Jul 4, 2022

@mperham OK, just ran into this again after upgrading to the latest and greatest Faktory. Here's the relevant info:

Thread dump:

2022/07/04 19:23:00.140693 FULL PROCESS THREAD DUMP:
--
2022/07/04 19:23:00.140757 goroutine 1 [running]:
github.com/contribsys/faktory_worker_go.dumpThreads({0xe3d2e8, 0xc00000e048})
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:240 +0x4d
github.com/contribsys/faktory_worker_go.(*Manager).handleEvent(0xc0002ae1a0, {0xc98978, 0x15})
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:249 +0x105
github.com/contribsys/faktory_worker_go.(*Manager).Run(0xe1eea0)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:187 +0x88
main.setupWorkers(0xc000238960, 0xc000230500, 0xc000230600, 0xc000230800, 0xc000230700, 0xc000230900, 0xc000230a00, 0xc000230b00, 0xc000230c00, {0xe4aa70, ...})
/opt/reward-service/workers/work.go:150 +0x150f
main.main()
/opt/reward-service/workers/work.go:75 +0x6f0
goroutine 18 [select]:
github.com/newrelic/go-agent/v3/newrelic.(*app).process(0xc0002d5200)
/go/pkg/mod/github.com/newrelic/go-agent/[email protected]/newrelic/internal_app.go:223 +0x1dc
created by github.com/newrelic/go-agent/v3/newrelic.newApp
/go/pkg/mod/github.com/newrelic/go-agent/[email protected]/newrelic/internal_app.go:431 +0x6e6
goroutine 1114 [select, 4362 minutes]:
net/http.(*persistConn).readLoop(0xc00007dd40)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 20 [select, 1 minutes]:
github.com/newrelic/go-agent/v3/newrelic.runSampler(0xc0002d5200, 0x0)
/go/pkg/mod/github.com/newrelic/go-agent/[email protected]/newrelic/internal_app.go:339 +0x245
created by github.com/newrelic/go-agent/v3/newrelic.newApp
/go/pkg/mod/github.com/newrelic/go-agent/[email protected]/newrelic/internal_app.go:434 +0x79d
goroutine 21 [select, 4376 minutes]:
database/sql.(*DB).connectionOpener(0xc0002af1e0, {0xe2e7d8, 0xc00023ae40})
/usr/local/go/src/database/sql/sql.go:1196 +0x93
created by database/sql.OpenDB
/usr/local/go/src/database/sql/sql.go:794 +0x188
goroutine 1937 [select, 4362 minutes]:
net/http.(*persistConn).writeLoop(0xc0007d3e60)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1748 +0x1e65
goroutine 34 [semacquire, 49 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c04b, 0xfb5, 0xfb5})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c04b, 0xec6a2ef23e87, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c04b, 0xc0000011e0, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc00052aa90)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc00044b040)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc000794ec0, {0xc000c7e5d0, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc00065df80}, {0xc000794ec0, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc00065df80}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc002345f10, 0xc00105af70}, {0xe2e880, 0xc00065df80}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0xc0002d6fc0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 1015 [select]:
github.com/segmentio/kafka-go.(*connPool).discover(0xc0002db5c0, {0xe2e7d8, 0xc000794940}, 0xc000680d20)
/go/pkg/mod/github.com/segmentio/[email protected]/transport.go:578 +0x4bd
created by github.com/segmentio/kafka-go.(*Transport).grabPool
/go/pkg/mod/github.com/segmentio/[email protected]/transport.go:254 +0x5a7
goroutine 36 [semacquire, 80 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c017, 0xfe9, 0xfe9})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c017, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c017, 0xc000001520, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fcd00)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc0009a5b80)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc0009acfc0, {0xc001a36570, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc000d19470}, {0xc0009acfc0, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc000d19470}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc00127df10, 0xc0016ce9a0}, {0xe2e880, 0xc000d19470}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0xc0002d5200)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 32 [select]:
github.com/contribsys/faktory_worker_go.heartbeat(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:39 +0x105
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:167 +0x7f
goroutine 35 [semacquire, 62 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c01f, 0xfe1, 0xfe1})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c01f, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c01f, 0xc000001ba0, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fc9c0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc0007f5e00)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc00023a180, {0xc001e9c420, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc00088e120}, {0xc00023a180, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc00088e120}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc00212bf10, 0xc0010cec40}, {0xe2e880, 0xc00088e120}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0xc0002d6fc0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 33 [semacquire, 81 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c00b, 0xff5, 0xff5})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c00b, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c00b, 0xc000092000, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc001a14c30)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc000b16320)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc000204300, {0xc001ecec60, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc00065dd70}, {0xc000204300, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc00065dd70}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc001f5ff10, 0xc00115c6d0}, {0xe2e880, 0xc00065dd70}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x1)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 965 [select, 4362 minutes]:
net/http.(*persistConn).readLoop(0xc000106120)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 37 [semacquire, 63 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c037, 0xfc9, 0xfc9})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c037, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c037, 0xc000001d40, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc00052aea0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc000a85b80)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc000b3d200, {0xc0012f74d0, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc00095ab40}, {0xc000b3d200, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc00095ab40}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc0016a9f10, 0xc0018268b0}, {0xe2e880, 0xc00095ab40}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x1c)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 38 [semacquire, 62 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c03f, 0xfc1, 0xfc1})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c03f, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c03f, 0xc000143d40, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc00052b2b0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc00044a6e0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc00094f400, {0xc000e21aa0, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc0006e51a0}, {0xc00094f400, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc0006e51a0}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc001003f10, 0xc001dc3990}, {0xe2e880, 0xc0006e51a0}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 39 [semacquire, 73 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c01b, 0xfe5, 0xfe5})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c01b, 0xea8cb85b955a, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c01b, 0xc000198000, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x50)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x7f8ad5aff798, 0x0)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x4)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fc000)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc0009a4fa0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc0009ad940, {0xc0017d4090, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc0014c2de0}, {0xc0009ad940, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc0014c2de0}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc001ac3f10, 0xc000f87800}, {0xe2e880, 0xc0014c2de0}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 40 [semacquire, 57 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c047, 0xfb9, 0xfb9})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c047, 0xebfc0ed1c5af, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c047, 0xc0001981a0, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x7f8ad5884df8, 0x0)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x4)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc00052a9c0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc000b17180)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc00021cb00, {0xc001aaac60, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc0003497a0}, {0xc00021cb00, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc0003497a0}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc001987f10, 0xc001d0a570}, {0xe2e880, 0xc0003497a0}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 41 [semacquire, 62 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c003, 0xffd, 0xffd})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c003, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c003, 0xc000198680, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fd1e0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc00094b860)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc000204480, {0xc001eced20, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc00065df80}, {0xc000204480, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc00065df80}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc0013fdf10, 0xc00115c730}, {0xe2e880, 0xc00065df80}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 42 [semacquire, 80 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c02b, 0xfd5, 0xfd5})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c02b, 0xeaaf563774a3, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c02b, 0xc000198820, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x7f8afc7abf60, 0x0)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x4)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc00052a9c0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc0007f5c20)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc000205d80, {0xc00105e9c0, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc0009f6690}, {0xc000205d80, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc0009f6690}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc001bd5f10, 0xc0004dc3d0}, {0xe2e880, 0xc0009f6690}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 43 [IO wait, 49 minutes]:
internal/poll.runtime_pollWait(0x7f8ad5b3a948, 0x72)
/usr/local/go/src/runtime/netpoll.go:303 +0x85
internal/poll.(*pollDesc).wait(0xc00036a400, 0xc00031c050, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c050, 0xfb0, 0xfb0})
/usr/local/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc00036a400, {0xc00031c050, 0x200000003, 0xc0001989c0})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c050, 0x4c3da5, 0x5})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0xa8)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0xc00031c000, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fc340)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc0009a5d60)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc0009ac740, {0xc001e9ccc0, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc000bf0c60}, {0xc0009ac740, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc000bf0c60}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc001ce1f10, 0xc000e930f0}, {0xe2e880, 0xc000bf0c60}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 44 [semacquire, 59 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c023, 0xfdd, 0xfdd})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c023, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c023, 0xc000198b60, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x7f8ad5affe80, 0x0)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x4)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fcd00)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc0002bd180)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc00023a040, {0xc001e9c360, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc001865e90}, {0xc00023a040, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc001865e90}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc00127ff10, 0xc0010cebf0}, {0xe2e880, 0xc001865e90}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 45 [semacquire, 73 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c033, 0xfcd, 0xfcd})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c033, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c033, 0xc000198d00, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc00052a9c0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc00094aaa0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc00023ad80, {0xc0017d5bf0, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc001d41920}, {0xc00023ad80, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc001d41920}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc000441f10, 0xc000f377c0}, {0xe2e880, 0xc001d41920}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 46 [semacquire, 73 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c007, 0xff9, 0xff9})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c007, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c007, 0xc000198ea0, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fd2b0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc00073a320)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc000204600, {0xc001ecee10, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc001638240}, {0xc000204600, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc001638240}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc001ac3f10, 0xc00115c790}, {0xe2e880, 0xc001638240}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 47 [semacquire, 73 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c02f, 0xfd1, 0xfd1})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c02f, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c02f, 0xc000199040, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x7f8ad5884df8, 0x0)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x4)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fc680)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc000b172c0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc0004c8bc0, {0xc001f6fd10, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc001891200}, {0xc0004c8bc0, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc001891200}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc0000b5f10, 0xc000b6f730}, {0xe2e880, 0xc001891200}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 48 [semacquire, 62 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c03b, 0xfc5, 0xfc5})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c03b, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c03b, 0xc0001991e0, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x7f8ad58ae7b0, 0x0)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x4)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fc8f0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc0009a4b40)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc00094f3c0, {0xc000e21950, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc0006e4fc0}, {0xc00094f3c0, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc0006e4fc0}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc000441f10, 0xc001dc3940}, {0xe2e880, 0xc0006e4fc0}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 49 [semacquire, 63 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c00f, 0xff1, 0xff1})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c00f, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c00f, 0xc000199380, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x50)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x0, 0x0)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fc000)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc0009a41e0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc00094fb00, {0xc000e2a750, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc002028510}, {0xc00094fb00, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc002028510}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc001ce1f10, 0xc0005d8ab0}, {0xe2e880, 0xc002028510}, 0x3, 0x1)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 50 [semacquire, 49 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c027, 0xfd9, 0xfd9})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c027, 0xeaaa99ca78b9, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c027, 0xc000199520, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x7f8ad5890da8, 0x0)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x4)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc00052ad00)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc0007f4000)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc00022a5c0, {0xc001e9d3b0, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc000c6b9b0}, {0xc00022a5c0, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc000c6b9b0}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc00114ff10, 0xc000f87d80}, {0xe2e880, 0xc000c6b9b0}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 51 [semacquire, 59 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c043, 0xfbd, 0xfbd})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c043, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c043, 0xc0001996c0, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x50)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x7f8ad5882ae8, 0x0)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x4)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc0002fc000)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc00073ae60)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc0009ac980, {0xc001aab110, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc000a298c0}, {0xc0009ac980, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc000a298c0}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc000441f10, 0xc001cbddd0}, {0xe2e880, 0xc000a298c0}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 52 [semacquire, 57 minutes]:
internal/poll.runtime_Semacquire(0x6a3f5b)
/usr/local/go/src/runtime/sema.go:61 +0x25
internal/poll.(*fdMutex).rwlock(0xc00036a400, 0x35)
/usr/local/go/src/internal/poll/fd_mutex.go:154 +0xd2
internal/poll.(*FD).readLock(...)
/usr/local/go/src/internal/poll/fd_mutex.go:221
internal/poll.(*FD).Read(0xc00036a400, {0xc00031c013, 0xfed, 0xfed})
/usr/local/go/src/internal/poll/fd_unix.go:144 +0x65
net.(*netFD).Read(0xc00036a400, {0xc00031c013, 0x403a49, 0x195})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000e090, {0xc00031c013, 0xc000199860, 0x200000003})
/usr/local/go/src/net/net.go:183 +0x45
bufio.(*Reader).fill(0xc0004e4840)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0004e4840, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).collectFragments(0x8, 0x80)
/usr/local/go/src/bufio/bufio.go:435 +0x74
bufio.(*Reader).ReadBytes(0xc0004e4840, 0x10)
/usr/local/go/src/bufio/bufio.go:463 +0x1d
github.com/contribsys/faktory/client.readResponse(0xc00052a9c0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc00044bea0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc00021c940, {0xc001dc11d0, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc00124c810}, {0xc00021c940, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b
github.com/contribsys/faktory_worker_go.(*Manager).Register.func1({0xe2e880, 0xc00124c810}, 0xc00360)
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:47 +0x37
github.com/contribsys/faktory_worker_go.dispatch({0x0, 0xc001ac3f10, 0xc0015720e0}, {0xe2e880, 0xc00124c810}, 0x3, 0x40cef4)
/go/pkg/mod/github.com/contribsys/[email protected]/middleware.go:19 +0x118
github.com/contribsys/faktory_worker_go.processOne(0xc0002ae1a0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:139 +0x145
github.com/contribsys/faktory_worker_go.process(0xc0002ae1a0, 0x0)
/go/pkg/mod/github.com/contribsys/[email protected]/runner.go:95 +0xc7
created by github.com/contribsys/faktory_worker_go.(*Manager).boot
/go/pkg/mod/github.com/contribsys/[email protected]/manager.go:172 +0x1df
goroutine 54 [runnable]:
os/signal.process({0xe29a20, 0x12ce4e8})
/usr/local/go/src/os/signal/signal.go:241 +0x14b
os/signal.loop()
/usr/local/go/src/os/signal/signal_unix.go:24 +0x34
created by os/signal.Notify.func1.1
/usr/local/go/src/os/signal/signal.go:151 +0x2c
goroutine 967 [select, 4362 minutes]:
net/http.(*persistConn).readLoop(0xc0001065a0)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 2289 [select, 4355 minutes]:
net/http.(*persistConn).writeLoop(0xc0004297a0)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1748 +0x1e65
goroutine 286 [select]:
github.com/segmentio/kafka-go.(*connPool).discover(0xc0002da480, {0xe2e7d8, 0xc0000a7500}, 0xc000988a80)
/go/pkg/mod/github.com/segmentio/[email protected]/transport.go:578 +0x4bd
created by github.com/segmentio/kafka-go.(*Transport).grabPool
/go/pkg/mod/github.com/segmentio/[email protected]/transport.go:254 +0x5a7
goroutine 117717 [select, 1673 minutes]:
net/http.(*persistConn).writeLoop(0xc0011e8480)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1748 +0x1e65
goroutine 7695 [select, 4257 minutes]:
net/http.(*persistConn).readLoop(0xc0007d2d80)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 1450 [select, 4362 minutes]:
net/http.(*persistConn).writeLoop(0xc0007d38c0)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1748 +0x1e65
goroutine 171 [chan receive]:
github.com/segmentio/kafka-go.(*conn).run(0xc000080230, 0xc0004c89c0, 0x0)
/go/pkg/mod/github.com/segmentio/[email protected]/transport.go:1190 +0xb3
created by github.com/segmentio/kafka-go.(*connGroup).connect
/go/pkg/mod/github.com/segmentio/[email protected]/transport.go:1168 +0xc72
goroutine 166 [select]:
github.com/segmentio/kafka-go.(*connPool).discover(0xc0002db8c0, {0xe2e7d8, 0xc0004c9fc0}, 0xc00003f9e0)
/go/pkg/mod/github.com/segmentio/[email protected]/transport.go:578 +0x4bd
created by github.com/segmentio/kafka-go.(*Transport).grabPool
/go/pkg/mod/github.com/segmentio/[email protected]/transport.go:254 +0x5a7
goroutine 1833 [select, 4362 minutes]:
net/http.(*persistConn).readLoop(0xc000d0d680)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 1428 [select, 4362 minutes]:
net/http.(*persistConn).readLoop(0xc000a80b40)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 47377 [select, 3278 minutes]:
net/http.(*persistConn).writeLoop(0xc000d0c900)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1748 +0x1e65
goroutine 1012 [select, 4362 minutes]:
net/http.(*persistConn).readLoop(0xc0001070e0)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 1514 [select, 4362 minutes]:
net/http.(*persistConn).readLoop(0xc0002d6fc0)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 1005 [select, 4362 minutes]:
net/http.(*persistConn).writeLoop(0xc000106d80)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1748 +0x1e65
goroutine 6195 [select, 4285 minutes]:
net/http.(*persistConn).writeLoop(0xc00007c6c0)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1748 +0x1e65
goroutine 67884 [select, 2892 minutes]:
net/http.(*persistConn).readLoop(0xc00007c000)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 54248 [select, 3139 minutes]:
net/http.(*persistConn).writeLoop(0xc00007cea0)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1748 +0x1e65
goroutine 7552 [select, 4259 minutes]:
net/http.(*persistConn).readLoop(0xc0007d2240)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 72879 [select, 2793 minutes]:
net/http.(*persistConn).readLoop(0xc000bc6ea0)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 1377 [select, 4362 minutes]:
net/http.(*persistConn).writeLoop(0xc0007d2ea0)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1748 +0x1e65
goroutine 1392 [select, 4362 minutes]:
net/http.(*persistConn).readLoop(0xc0007d2360)
/usr/local/go/src/net/http/transport.go:2207 +0xd8a
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1747 +0x1e05
goroutine 1756 [select, 4362 minutes]:
net/http.(*persistConn).writeLoop(0xc000d0c480)
/usr/local/go/src/net/http/transport.go:2386 +0xfb
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go

Debug page Info:

Screen Shot 2022-07-04 at 3 20 31 PM

Redis Info
# Server
redis_version:6.0.16
redis_git_sha1:2858e290
redis_git_dirty:0
redis_build_id:fde4023792433f1f
redis_mode:standalone
os:Linux 4.14.158-129.185.amzn2.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:10.2.1
process_id:11
run_id:cdfc1aa2e5d3c5f152d7e782b2fde8becb9bbd70
tcp_port:0
uptime_in_seconds:4512512
uptime_in_days:52
hz:10
configured_hz:10
lru_clock:12795606
executable:/usr/bin/redis-server
config_file:/tmp/redis.conf
io_threads_active:0

# Clients
connected_clients:3
client_recent_max_input_buffer:2
client_recent_max_output_buffer:0
blocked_clients:2
tracking_clients:0
clients_in_timeout_table:2

# Memory
used_memory:924794
used_memory_human:903.12K
used_memory_rss:3006464
used_memory_rss_human:2.87M
used_memory_peak:2726417
used_memory_peak_human:2.60M
used_memory_peak_perc:33.92%
used_memory_overhead:839470
used_memory_startup:779592
used_memory_dataset:85324
used_memory_dataset_perc:58.76%
allocator_allocated:890564
allocator_active:2968576
allocator_resident:2968576
total_system_memory:8053731328
total_system_memory_human:7.50G
used_memory_lua:37888
used_memory_lua_human:37.00K
used_memory_scripts:0
used_memory_scripts_human:0B
number_of_cached_scripts:0
maxmemory:0
maxmemory_human:0B
maxmemory_policy:noeviction
allocator_frag_ratio:3.33
allocator_frag_bytes:2078012
allocator_rss_ratio:1.00
allocator_rss_bytes:0
rss_overhead_ratio:1.01
rss_overhead_bytes:37888
mem_fragmentation_ratio:3.38
mem_fragmentation_bytes:2115900
mem_not_counted_for_evict:0
mem_replication_backlog:0
mem_clients_slaves:0
mem_clients_normal:51110
mem_aof_buffer:0
mem_allocator:libc
active_defrag_running:0
lazyfree_pending_objects:0

# Persistence
loading:0
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0
rdb_last_save_time:1656962771
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:0
rdb_current_bgsave_time_sec:-1
rdb_last_cow_size:409600
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
aof_last_cow_size:0
module_fork_in_progress:0
module_fork_last_cow_size:0

# Stats
total_connections_received:852
total_commands_processed:51593012
instantaneous_ops_per_sec:0
total_net_input_bytes:7049168493
total_net_output_bytes:434225279
instantaneous_input_kbps:0.00
instantaneous_output_kbps:0.00
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:0
expired_stale_perc:0.00
expired_time_cap_reached_count:0
expire_cycle_cpu_milliseconds:30370
evicted_keys:0
keyspace_hits:1301495
keyspace_misses:1850741
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:117
migrate_cached_sockets:0
slave_expires_tracked_keys:0
active_defrag_hits:0
active_defrag_misses:0
active_defrag_key_hits:0
active_defrag_key_misses:0
tracking_total_keys:0
tracking_total_items:0
tracking_total_prefixes:0
unexpected_error_replies:0
total_reads_processed:51114444
total_writes_processed:51113592
io_threaded_reads_processed:0
io_threaded_writes_processed:0

# Replication
role:master
connected_slaves:0
master_replid:826847018880014ba77227fcc47b9792c8e9a726
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

# CPU
used_cpu_sys:2623.619967
used_cpu_user:2384.584774
used_cpu_sys_children:16.453156
used_cpu_user_children:88.965642

# Modules

# Cluster
cluster_enabled:0

# Keyspace
db0:keys=168,expires=0,avg_ttl=0

Disk Usage
> df -h
Filesystem                Size      Used Available Use% Mounted on
overlay                  98.3G      2.3G     95.7G   2% /
tmpfs                    64.0M         0     64.0M   0% /dev
tmpfs                     3.8G         0      3.8G   0% /sys/fs/cgroup
/dev/nvme0n1p1           98.3G      2.3G     95.7G   2% /etc/resolv.conf
/dev/nvme0n1p1           98.3G      2.3G     95.7G   2% /etc/hostname
/dev/nvme0n1p1           98.3G      2.3G     95.7G   2% /etc/hosts
shm                      64.0M         0     64.0M   0% /dev/shm
fs-0cf5522094df503bd.efs.us-east-1.amazonaws.com:/
                          8.0E         0      8.0E   0% /var/lib/faktory
tmpfs                     3.8G         0      3.8G   0% /proc/acpi
tmpfs                    64.0M         0     64.0M   0% /proc/kcore
tmpfs                    64.0M         0     64.0M   0% /proc/keys
tmpfs                    64.0M         0     64.0M   0% /proc/latency_stats
tmpfs                    64.0M         0     64.0M   0% /proc/timer_list
tmpfs                    64.0M         0     64.0M   0% /proc/sched_debug
tmpfs                     3.8G         0      3.8G   0% /sys/firmware

@mperham
Copy link
Collaborator

mperham commented Jul 15, 2022

Looks like a ton of goroutines are trying to enqueue a job and all stuck waiting for the response. I need to put a read timeout on the IO so that this issue doesn't result in the process deadlocked completely.

github.com/contribsys/faktory/client.readResponse(0xc0002fc000)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:630 +0x45
github.com/contribsys/faktory/client.ok(0xd0)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:593 +0x1d
github.com/contribsys/faktory/client.(*Client).ok(0xc0004c8340, 0xc00073ae60)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:527 +0x25
github.com/contribsys/faktory/client.(*Client).Push(0xc0004c8340, 0xe)
/go/pkg/mod/github.com/contribsys/[email protected]/client/client.go:323 +0x74
github.com/merryfield/reward-service/processors.enqueueUpdateProfileJob(0xc0009ac980, {0xc001aab110, 0x24}, {0xe1d760, 0xc0004c8340})
/opt/reward-service/processors/receipt_processing_helpers.go:759 +0x248
github.com/merryfield/reward-service/processors.(*DigitalReceiptProcessor).Process(0xc00023e510, {0xe2e880, 0xc000a298c0}, {0xc0009ac980, 0x1, 0x4})
/opt/reward-service/processors/digital_receipt.go:223 +0x2c6b

@mperham
Copy link
Collaborator

mperham commented Jul 15, 2022

^^^^^ You can try compiling your worker against main and see if it works better.

@bploetz
Copy link
Author

bploetz commented Jul 15, 2022

@mperham I don't know if it helps and/or is relevant, but the few times we've run into this, it always seems to get stuck when jobs are enqueuing other jobs (enqueueUpdateProfileJob() in the thread dumps above). We do that like so:

// in our main(), create a pool and a job client      
mgr := worker.NewManager()

pool, nperr := faktory.NewPool(concurrency + 2)
if nperr != nil {
	log.Panicf("Couldn't create Faktory connection pool: %+v", nperr)
}
mgr.Pool = pool
jobClient, cerr := mgr.Pool.Get()

// We pass the jobClient to the job processing functions, which use it to enqueue another job like so:
jobArgument := make(map[string]interface{})
jobArgument["id"] = receiptID
jobArgs := []interface{}{jobArgument}
retry := 5
updateProfileJob := faktory.NewJob("update-profile", jobArgs...)
updateProfileJob.Queue = "profiles"
updateProfileJob.ReserveFor = 60
updateProfileJob.Retry = &retry

jpperr := jobClient.Push(updateProfileJob)
if jpperr != nil {
	return fmt.Errorf("error enqueueing job: %v", jpperr)
}

@mperham
Copy link
Collaborator

mperham commented Jul 15, 2022

The one thing I noticed with that code is your use of the pool. I would urge you to use mgr.Pool.With(function...) instead of Get so that the connection is automatically returned to the pool for you.

https://github.com/contribsys/faktory_worker_go/blob/b8c6acd2d930d8c6bbd5fda6518b47eb68fe7ac0/manager.go#L227

I traced thru the codepath for Push on the server-side and I don't see anything obviously wrong or that would block infinitely unless Redis is not responding for some reason. It's not clear to me which push middleware, if any, are running, that could be another possible source of trouble.

@bploetz
Copy link
Author

bploetz commented Jul 15, 2022

Duly noted, will try switching over to mgr.Pool.With(function...).

@bploetz
Copy link
Author

bploetz commented Sep 10, 2022

@mperham this issue is absolutely killing us. Above you suggested using mgr.Pool.With(function...) to have a job enqueue another job. However, the FAQ in faktory_worker_go says:

Inside a job, you can check out a connection from the Pool of Faktory connections using the job helper's With method:

func someFunc(ctx context.Context, args ...interface{}) error {
  help := worker.HelperFor(ctx)
  return help.With(func(cl *faktory.Client) error {
    job := faktory.NewJob("SomeJob", 1, 2, 3)
    return cl.Push(job)
  })
}

Which is the preferred way of having a job enqueue another job? If it's with mgr.Pool.With(function....) like you said above, can you elaborate on how exactly this should be done within a hypothetical someFunc like above? It's not clear to me based on the link you posted to the source.

Thanks.

@mperham
Copy link
Collaborator

mperham commented Sep 10, 2022

helper.With is the preferred way since you can get access to it easily within a job func. Maybe the faq needs to be updated.

@bploetz
Copy link
Author

bploetz commented Oct 28, 2022

@mperham we just released version 1.6.2 which has your fix for this (44668c7) and we're still seeing the same behavior of jobs getting enqueued and not processed.

@mperham
Copy link
Collaborator

mperham commented Oct 28, 2022

Use TTIN to get stacks from Faktory and worker processes. Im not sure what else to do.

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

2 participants