profile
viewpoint
Paul Fortin pfortin-urbn Urban Outfitters Philadelphia, PA http://urbanoutfitters.com

brianmoran/mockify 82

Easy, configurable API mocking you can change on-the-fly

pfortin-urbn/stalk 1

The best part of the celery

p4tin/Algorithms 0

CS Algorightms

p4tin/awsutil 0

Utility to work with SQS/ElasticMQ Queues

p4tin/imperius 0

Make APIs do what you want with the unforgiveable Imperius

pfortin-urbn/5MinWebServer 0

This is a simple webserver to demonstrate how easy it is to build a webapp in golang.

pfortin-urbn/a15cli 0

A Dev tool for the A15 environment.

pfortin-urbn/cop_golang 0

Golang Talk for Community Of Practice

pfortin-urbn/env 0

Simple lib to parse environment variables to structs

pfortin-urbn/gomodifytags 0

Go tool to modify struct field tags

issue closedlovoo/goka

Panics in goka

I see that your code sometimes panics and it seems like it could happen during the normal course of running - as an example I incurrered a panic because my decode returned an error - but that is NOT a wanted panic in production when my just dies and then might get restarted with the same consumer offset in kafka so this scenario just panics forever - I adjusted my decoder to stop returning errors so my application would not die.

Can I get an explanation on the scenario I just talked about and also why goka actually panics instead of passing a fatal error back to the application and let the app decide what to do?

closed time in 2 months

pfortin-urbn

issue commentlovoo/goka

Panics in goka

The way I got around it was to put error values in the return struct and always return a nil for the error. Then I had my processor handle the error by logging and aborting the processing of that message.

pfortin-urbn

comment created time in 2 months

issue commentlovoo/goka

Panics in goka

What should happen on a decode error?

pfortin-urbn

comment created time in 2 months

issue commentlovoo/goka

Panics in goka

I believe that your change will definitely help but my though is always that a library should never panic unless you are in the creation phase of the application and a critical dependancies does not exist or is inaccessible for any reason but having the library panic in the middle of a running application could cause other inconsistencies in that application's code or state that "could" be worse. My thinking is always that a library should always return errors (some being fatal) which the application MUST always handle properly and in the case of a "fatal"ensure that what caused the error is fixed or then the application code can decide to panic.

Thanks for the great library!!

pfortin-urbn

comment created time in 2 months

issue openedlovoo/goka

Panics in goka

I see that your code sometimes panics and it seems like it could happen during the normal course of running - as an example I incurrered a panic because my decode returned an error - but that is NOT a wanted panic in production when my just dies and then might get restarted with the same consumer offset in kafka so this scenario just panics forever - I adjusted my decoder to stop returning errors so my application would not die.

Can I get an explanation on the scenario I just talked about and also why goka actually panics instead of passing a fatal error back to the application and let the app decide what to do?

created time in 2 months

issue closedlovoo/goka

Can I `Emit` to a KTable?

@frairon - I am in a processor and it has received a message to update the KTable but it could be for another key that the context key. Can I use ctx.Emit to update the KTable and if I do that will local storage also be updated? What is the preferred way to update the state of a key that is determined in the processor?

closed time in 3 months

pfortin-urbn

issue commentlovoo/goka

Can I `Emit` to a KTable?

@db7 Thanks I kinda knew that but wanted to know if there was easier way thanks!

pfortin-urbn

comment created time in 3 months

more