Skip to main content

Posts

Big Data: A Brief Historical Description

The Evolution of Big Data: Understanding its Definition and Applications In recent years, the term "big data" has become a household phrase, describing an overwhelming amount of data that is being generated at an unprecedented rate. However, what does it truly mean to have big data? In this article, we'll delve into the history, characteristics, and applications of big data. The concept of big data dates back to the late 1990s, when experts like Michael Cox, David Ellsworth, John Mashey, and Francis Diebold first began using the term to describe the "information explosion" that was occurring. Since then, our understanding of big data has evolved significantly, with Doug Laney from Gartner's early attempts to define its key parameters. The Three V's of Big Data Laney's work highlighted three critical aspects of big data: volume, variety, and velocity. Volume refers to the sheer amount of data being generated; variety encompasses the diverse types of d...
Recent posts

Catch persistence java.sql.sqlintegrityconstraintviolationexception

Handling SQL Integrity Constraint Violation Exceptions This tutorial will guide you through handling `SQLIntegrityConstraintViolationException` when persisting objects that violate database constraints. Step 1: Catch the EJB Exception Catch a `javax.ejb.EJBException` which wraps the underlying exception. try {     // persistence transactions } catch (Exception e) {     if (e instanceof javax.ejb.EJBException) {         logger.debug("Exception instance of javax.ejb.EjbException");     } } Step 2: Get the Underlying Exception Get the underlying exception from the `EJBException` using `e.getCause()`. try {     // persistence transactions } catch (Exception e) {     if (e instanceof javax.ejb.EJBException) {         logger.debug("Exception instance of javax.ejb.EjbException");         Throwable cause = e.getCause();         if (cause != null) {     ...

Quick Reminder: Golang subfolder import

Here is a tip for importing into your project. First, you import with the folder path but you use the declared package name in the imported class as the anchor to the methods in the imported class. For example, let's say you have your project in the following structure: example    main.go    pwd/       foldering.go To import foldering.go even if the package name declared in foldering.go is different e.g. secondPwd  into main.go main.go package main import (      "example/pwd" ) func main(){     secondPwd.PrintPWD(); } foldering.go package secondPwd import(      "os"      "fmt"      "log" ) //PrintPWD... func PrintPWD() {     dir, err := os.Getwd()      if err != nil {          log.Fatal(err)      }  ...

Fix HTTP error code 513 on Wildfly

The Mysterious Case of TIME_WAIT and IDLE Connections Have you ever encountered a network issue where your server is consistently showing a high number of connections in the TIME_WAIT and IDLE states? This phenomenon can be frustrating, especially when it indicates that the connections are not being closed properly by the server or client. In our investigation, we found that the culprit behind this issue was an HTTP error code 513 being sent to clients from servers. This error code indicates that the server is overloaded and cannot handle more requests. Furthermore, the client was logging a socket close event, which meant it was terminating the connection prematurely. To replicate this issue, we used JMeter and found that the max concurrent connection limit was reached, resulting in an HTTP error code 513. The allowed queue was also full, contributing to the problem. So, what are the consequences of this issue? Performance degradation and resource wastage on both servers and clients ca...

Java Client SSL Setup and Related Errors

Troubleshooting Tips for Effective Configuration Configuring Secure Sockets Layer (SSL) is a crucial step in ensuring the security of your Java client's communication. In this article, we'll walk you through the process of configuring SSL and provide guidance on troubleshooting common errors that may arise during the setup. To troubleshoot issues effectively, follow these steps: - Enable the JVM option -Djavax.net.debug=all - Capture the network traffic dump for faster analysis. Certificate Setup Go to your console and access your <JAVA_HOME>/bin/keytool NB :  The default location for saving the generated files is the user home directory. You can change this by specifying a path. STEP 1: Generate a new key (private key) for a Keystore. This either creates a file called <KEYSTORE_NAME>.keystore or update an existing file if it already exists. The CSR which will be presented to a Certificate Authority (CA) will be generated with this key and alias. <J...

ORA-12514: TNS:listener does not currently know of service requested in connect descriptor /ora-12505 tns listener does not currently know of sid

If you intend to connect with service name XE, edit your listener.ora to look include the XE name. Sample below SID_LIST_LISTENER =   (SID_LIST =   (SID_DESC =       (SID_NAME = XE)       (ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)     )     (SID_DESC =       (SID_NAME = PLSExtProc)       (ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)       (PROGRAM = extproc)     )     (SID_DESC =       (SID_NAME = CLRExtProc)       (ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)       (PROGRAM = extproc)     )   ) LISTENER =   (DESCRIPTION_LIST =     (DESCRIPTION =       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))     )   ) ...

Not Able to Start OracleXNTNSListener in Windows Environment

To resolve this issue, Goto your oraclexe directory and navigate to network/ADMIN     e.g oraclexe\app\oracle\product\11.2.0\server\network\ADMIN Open ( listener .ora) in notepad and replace the HOST address with your localhost or current-ip e.g LISTENER =   (DESCRIPTION_LIST =     (DESCRIPTION =       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))     )   ) DEFAULT_SERVICE_LISTENER = (XE) Open ( tnsnames .ora) with notepad and replace HOST address with your localhost or current-ip address. e.g XE =   (DESCRIPTION =     (ADDRESS = (PROTOCOL = TCP)(HOST =  localhost )(PORT = 1521))     (CONNECT_DATA =       (SERVER = DEDICATED)       (SERVICE_NAME = XE)     )   ) Open your command prompt as adminstrator and run  lsnrctl start NB: Yo...