Questions tagged [exceptions]
An exception is an occurrence in an application process that requires deviation from the program's normal flow.
488
questions
0
votes
2
answers
480
views
Is Authentication a good use case for a checked exception according to Effective Java (Bloch)?
There's a section about use of checked exceptions in Josh Bloch Effective Java and I find it a bit abstract to understand what he means by saying "when a user can recover from it". ...
1
vote
1
answer
70
views
Throw generic exception vs front end friendly exception from util methods?
The below code sample given is for Salesforce but it is close to Java and you should be able to understand easily what I am trying to ask here.
AccountController.getAccountsThatMeetSpecificCrtieria is ...
0
votes
1
answer
66
views
Communicating unpredicted Failure from Repository implementation to Applicaiton Layer
My application follows Clean Architecture wherein the Application Layer wraps the Domain Layer. I try to adhere to DDD more-so as a "guiding light" than a strict rulebook.
Within the Domain ...
1
vote
3
answers
333
views
Exceptions vs Monads
I am curious about the utility of something like monads in the C# world.
My experience with these kinds of things is mainly through Rust but I'm a dotnet dev for work
I was thinking about the ...
10
votes
8
answers
970
views
When are try/exceptions not an anti-pattern?
I just finished a discussion with colleagues regarding the use of exceptions in code. Here is the code (pseudocode) that they had written:
resp = fetch(URL)
if resp.status_code != 200:
return ...
5
votes
5
answers
1k
views
Java Exception Error Enumerations Anti-pattern
Over the years I've many times seen folks enumerate error codes for exceptions in Java. I generally have felt this leads to more tedious code and does not provide value.
For example, there will be an ...
3
votes
4
answers
610
views
How to avoid code duplication when else and except are the same?
A simplified version of my code looks like this:
def process( object ):
try:
if suitedForA( object ):
try:
methodA( object )
except:
...
0
votes
1
answer
109
views
Reuse same code for validation and runtime integrity checks?
Scenario
I have a system where a user can upload an Excel file which is validated and then used to provide data for the application.
There are two distinct operations I need to handle with this file:
...
20
votes
4
answers
4k
views
How do non-RAII languages free resources during stack unwinding?
C++ features deterministic order of calling destructors up the call stack until the exception is handled somewhere.
To my knowledge, neither Java nor (object oriented) Python provide this. In those ...
1
vote
3
answers
203
views
Should you reuse a PHP exception's code when wrapping it?
When catching and wrapping an exception in PHP, assuming the new exception doesn't have a meaningful code of its own, should you also use the caught exception's code value? or the default value? In ...
-2
votes
2
answers
3k
views
What are the possible *root causes* of a SocketTimeoutException?
I understand that a SocketTimeoutException (I'm in Java, but I guess it's the same in just about every major language) happens after a server or client doesn't respond after a period of time, let say ...
1
vote
2
answers
229
views
Should domain know about exceptions thrown from outer layer?
Let's take a hypothetical system, a state based,
exceptions thrown from persistence layer or other outer layer, should propagate to ui layer through domain layer. Domain need not know about this ...
-1
votes
1
answer
484
views
How to handle third-party libraries that can potentially throw, without knowing what kind of exceptions they may have?
I'm starting to run into this sort of dilemma while many third-party APIs, but I will use MongoDB for my examples. Consider the following code:
var settings = MongoClientSettings....
1
vote
1
answer
325
views
Is the use of a catch block as a "rollback mechanism" a bad thing?
I have a service that performs a series of actions based on user information (name, address, etc), one of the problems is that the User entity comes from a legacy third party API (as a repository) ...
5
votes
6
answers
476
views
Unsupported concurrent calls, throw exception or log a warning?
Context
Let's say I have a navigation service that allows me to navigate to a page.
The Navigate method is async because an animation (about 250ms) is involved.
public interface INavigator
{
...
14
votes
14
answers
7k
views
Should I raise an exception/error when an optional argument is used but is not necessary?
Take this constructed example:
def fetch_person(person_id, country_code=None):
if is_fully_qualified(person_id):
return person_source_1.fetch_person(person_id)
else:
return ...
0
votes
3
answers
148
views
Communicating error conditions in client API for remote RESTful server, what's the best way?
I'm writing an application based on a RESTful API located in a server (written in Python).
An Android app will access the API endpoints to get, post, put or delete data. The usual.
The server has a ...
2
votes
3
answers
836
views
Handling exogenous exceptions in layered architecture
Exogenous exceptions are that kind of exception that are unavoidable because they are throwed outside of our system's pristine logic.
A good practice is to throw wrapped exceptions in lower layers ...
1
vote
2
answers
147
views
Is nesting try-except sequence in try-else block bad form?
Ive got a boot sequence that needs to check some registry values, they may or may not be present, so each check needs to be wrapped in its own try-except. I try to avoid nesting as I think it can lead ...
2
votes
1
answer
158
views
How do we maintain consistent-read promise to clients + handling ID collision when using a fallback queue?
In my company, we are using Event Sourcing pattern to implement a storage for all changes to the price of a booking. Across the company, different services might try to append events to a booking ...
8
votes
10
answers
639
views
Boneheaded exceptions should not be caught. Then how to provide fault tolerance and reliability?
I've always been taught that fatal exceptions (indicating problems that cannot be solved programmaticaly) and boneheaded exceptions (resulting from bugs in my code) should not be caught, should not be ...
7
votes
2
answers
2k
views
Is returning true or throwing an exception good or bad code practice?
I am focusing on learning better design and wondered if this code is good or an anti-pattern? The function Validate() returns true if the data is correct, else it will throw an exception with a ...
4
votes
3
answers
3k
views
Business logic error handling. Should exceptions really be avoided?
C#'s primary error handling mechanism are exceptions and try pattern.
We don't have access to discriminated unions yet like in case of F# and Rust Option<T> and Result<T, E> types.
The ...
27
votes
14
answers
9k
views
What's the logic behind the design of exceptions?
I'm writing an application in C#. I'm facing an InvalidConstraintException, but from that Exception, I seem not to be able to access the Constraint, causing the Exception. That specific question is ...
0
votes
2
answers
156
views
How can I avoid re-running code when exceptions are thrown and user re-submits?
I have a checkout process that 1) creates a user account in Stripe and my database, 2) creates a paymentMethod in Stripe and logs the last4 in the database, 3) creates the subscription in Stripe and ...
0
votes
2
answers
252
views
Is it bad to use checked exceptions as API response?
Consider the following code:
public class User {
private String password;
public void changePassword( String oldPassword,
String newPassword) throws ...
6
votes
3
answers
970
views
How to simplify exception handling for library users?
Suppose of having a library exposing the following piece of functionality:
public static class AwesomeHelpers
{
public static async Task<int> ComputeSomethingImportAsync(CalculationInputs ...
0
votes
1
answer
140
views
Exception handling with failure atomicity in desktop applications
When it comes to exception handling, there are many guidelines and best practices on the web. On of them is to throw early, catch late, or even Don't Catch. So when facing an exception, the current ...
2
votes
2
answers
2k
views
Validations and throwing exceptions in DDD?
I have a question regarding validations and exceptions in DDD.
I have a ValueObject say, PasswordText which takes a string argument in it's constructor. Checks if the string matches the password ...
4
votes
3
answers
6k
views
Should try-catch blocks be used when calling functions that already have them?
In JavaScript, if I have try catch blocks in a function that is meant to be called from another function, should I also put them in the calling function or just let the called functions handle them.
...
1
vote
2
answers
251
views
Best Practice: Unit test coverage vs. in-method sanity checks [duplicate]
I have a code-coverage requirement of of a certain percentage, and face the following tradeoff:
Should I sacrifice in-method sanity checks and error handling for ease of (unit-) testability?
Lets ...
1
vote
2
answers
585
views
Catch "foreign" exception in adapter and convert them in own business exception is a good practice?
I am currently thinking about some design choices regarding exception handling.
My current architecture looks a little like this:
You can see that I have a UI where a try-catch middleware is cathing ...
1
vote
2
answers
123
views
Are the exceptions used in BeanValidation/JAX-RS's ExceptionMapper an anti pattern?
I am reading a lot about patterns and code structure and something that bothers me is BeanValidation's way to handle errors. I like Java and think that BeanValidation is easy to use, but it seems to ...
-2
votes
4
answers
118
views
Is this a good approach to stop an API function and return relevant error message?
I am writing an API function using DRF where I want the API execution to stop if it fails in any of the steps and return an appropriate response. So I created a custom exception which takes an error ...
0
votes
3
answers
446
views
Confusion about basic exception handling and rethrowing exception [duplicate]
I came across this question and super confused about rethrowing concept in the following example:
try
{
// code that may throw exceptions
}
catch(Exception ex)
{
// add error logging ...
-1
votes
2
answers
709
views
Where to place exception handling while using Decorator design pattern
How to design a service layer structure that will be resistant to exceptions. Let's say I have a simple OrderService service, this service performs basic operations - saving an order.
public interface ...
1
vote
1
answer
38
views
Failed uploads layer
I am trying to find an optimal way to handle the following scenario:
I have an application where there are a lot of file uploads on a certain endpoint, but the validation is rather strict as per the ...
3
votes
1
answer
1k
views
Handling same exception thrown by different methods
Is there an idiomatic way to catch an exception when multiple methods may throw?:
try:
someMethod() # raises OSError
someOtherMethod() # raises OSError
except OSError:
handle()
The ...
0
votes
3
answers
501
views
What is the proper way to throwing an exception?
I'm currently make a Helper class that can be used by multiple team members. Helper class uses third party API. And I have a question about that handles exceptions in the Helper class.
https://docs....
2
votes
4
answers
525
views
Is it common practice to declare exceptions in a library that won't be thrown or caught anywhere within that library?
I have a very basic library that serves the purpose of collecting some useful but simple pieces of code. Like for example a Percent struct or functions like ToDegrees() and ToRadians(), just to give ...
31
votes
10
answers
8k
views
What is a good approach to handling exceptions?
I have trouble reconciling "best practices" and real-world approaches to handling exceptions. In my day to day routine, I find myself running into the following examples:
try:
...
1
vote
4
answers
250
views
Displaying exceptions
I read/watch about Uncle Bob's clean code and when he talks about exceptions he suggested to have a well named exception over a description which make perfect sense for the programmer, for decoupling ...
63
votes
9
answers
8k
views
Why do "checked exceptions", i.e., "value-or-error return values", work well in Rust and Go but not in Java?
Java has "checked exceptions", which force the caller of the method to either handle an exception or to rethrow it, e.g.
// requires ParseException to be handled or rethrown
int i = ...
8
votes
3
answers
432
views
How to deal with abandoned idempotent operations?
I have implemented idempotent order placement (mostly to avoid accidental double submissions) but I am not sure how to handle incomplete operations. Example scenario:
User tries to place an order.
An ...
5
votes
1
answer
165
views
Clean way to handle different exceptions in Javascript?
I'm Java developer and I'm now learning Javascript creating a personal project.
I don't know how to handle different errors in Javascript in a clean way and I can't find a good solution on the web.
I'...
0
votes
2
answers
584
views
Code repeated in multiple exception blocks
I'm starting to notice this pattern throughout some of my code:
try:
some_func()
except FirstException as err: # known possible err
# log err
notify_user(err)
except SecondException as ...
-2
votes
2
answers
2k
views
Is using nested try-except blocks problematic?
I've been seeing a lot of this construct throughout my application:
def doSomething():
try:
# setup some variables
try:
# do something that could throw an OSError
...
2
votes
1
answer
246
views
Exception handling with adapter design pattern in JavaScript
I am using an opencv.js Web Assembly build in the browser. The build comes with a JavaScript interface to call the WASM functions but it does not provide any memory management. For example every time ...
1
vote
1
answer
101
views
Should exception-blocks handle only exceptions raised from try-blocks?
Should the exception blocks in a try-except sequence be specific only to those exceptions which may originate from the try? Or can they be inclusive of exceptions that may arise from handling the ...
0
votes
1
answer
691
views
Mark exception as handled, rethrow, display
Inside my business logic, I have something like a pipeline with multiple actions. Each action wrapped into try/catch and can handle exceptions by himself (logging, saving state for retry ex). And I ...