Sometimes it just happens. You have a bloated Java application at your hand and it does not perform well. You may have built this application yourself or just got it as it is now. It doesn't matter, thing is - you do not have a slightest idea what is wrong here.
Java ecosystem have abundance of diagnostic tools (thank for interfaces exposed at JVM itself), but they are mostly focused on some specific narrow kinds (more...)
In many cases – when talking about Java 8 – lambda-functions are the first thing that comes up. I found it a concept hard to grasp, as it slightly changes the way you think about coding. In this blog, I would like to show you some very simple examples, and explain what is what in the lambda world.
In versions prior to Java 8, we had SAM interfaces : Single Abstract (more...)
Earlier this month we began getting frequent email warnings from our EM12c server that some agents were experience read time outs. Then we saw that the emagent java process was using A LOT of CPU, regularly around 500% but sometimes as high as 800% as seen from "top". Restarting the agent did nothing.
I opened an SR with Oracle Support, where I was first instructed to apply a JDBC patch and then a PSU agent (more...)
Read this article on my new blog
Apache Drill allows users to explore any type of data using ANSI SQL. This is great, but Drill goes even further than that and allows you to create custom functions to extend the query engine. These custom functions have all the performance of any of the Drill primitive operations, but allowing that performance makes writing these functions a little trickier
This Log Buffer Edition cuts through the crowd and picks some of the outstanding blog posts from Oracle, SQL Server and MySQL.
- Continuous Delivery (CD) is a software engineering approach in which teams keep producing valuable software in short cycles and ensure that the software can be reliably released at any time.
- Query existing HBase tables with SQL using Apache Phoenix.
- Even though WebLogic with Active GridlLink are Oracle’s suggested approach to deploy (more...)
I had a need to Ping a server to see if the server could get to it. I also tried to post to it. This code could be helpful for others, so I want to share it. A post should normally go through the Integration Broker, but I first developed it at a time when I had a product that was supposed to go on servers with diverse versions of Integration Broker.
The Ping code (more...)
Monday June 22nd was the launch date for Oracle for 24 (and more) Cloud Services. June is traditionally an important month for Oracle when it comes to product launches and important announcements. This year is the same in that respect. The announcements came in a many-hour live webcast including a 45 minute presentation by Oracle CTO Larry Ellison (see videos from Oracle Cloud Platform Launch). I have harvested some of the most relevant slides (more...)
A lot of new annotations have been introduced since the JEE6 spec. Before we had EJBs and servlets to cover most of our server-side objects in a JEE application. But in JEE6, CDI and JAX-RS have been added, along with a few other JSRs that are implemented using annotations. This results in a long list of annotations, where – in my opinion – it is not always clear which one to use, nor to understand how they work together.
In this blog, I would like to (more...)
While I previously blogged about installing Netbeans 8, some of my students would prefer to use the Eclipse IDE. This post shows how to install and configure Eclipse IDE, include the mysql-connector-java.jar, and write Java to access the MySQL.
You can download Eclipse IDE and then open it in Fedora’s Archive Manager. You can use the Archive Manager to Extract the Eclipse IDE to a directory of your choice. I opted to extract (more...)
I was invited to join the vJUG
and give a talk about Large Enterprise Java Architecture
and as a follow-up I also had the chance to be among the first guests of the newly created Virtual JUG Podcast
|Recording the Podcast with Hangouts, Audacity, Skype and Google Docs.|
Featuring regulars Simon Maple, Trisha Gee and Martijn Verburg with guests Markus Eisele and, Daniel Fullarton. The team did a great job guiding the guests through the (more...)
I was being teased by SQL Developer.
Everytime I started it came nagging about that it was being forced to live in an old Java version called jdk1.7.0_45 and that is was not feeling happy about it.
So, I should remedy this, I thought to myself.
First visit was, inspired by some search-work on the WWW, a file called product.conf. Which offered two possiblities:
SetJavaHome to some logical location
SetJavaHome to (more...)
The Oracle SOA Suite 12c quick start is an excellent way to get started with all the new features of 12c. I imagine it must be frustrating when you log in to http://localhost:7101/servicebus and are confronted with an 401 – Access Denied error message. Rest assured, there is nothing wrong with your credential configuration. The cause is likely much more simple; you use the wrong Java version.
Although the certification matrix for FMW 12.1. (more...)
I was looking at a bit of code was leaking class loaders when deployed to tomcat - so I wanted to quick rule out that a background Thread was holding onto the loader. Pain by eye, it is quite easy with a few unix commands to process the stack trace, filter for the lines that contain the thread name, filter for just the thread names and sort:
sudo -u tomcat jstack 1853 | grep " (more...)
150 GiB worth of JVM heap dump is laying on hard drive and I need analyze specific problem detected in that process.
This is a dump of proprietary hybrid of in-memory RDBMS and CEP system, I'm responsible for. All data are stored in Java heap, so heap size of some installation is huge (400 GiB heap is largest to the date).
Problem of analyzing huge heap dumps were on my radar for some time, so (more...)
We know each other since some years now. And I am very very pleased to see, that we finally could make it happen to have him speaking at JavaLand
as a Keynoter. And what would be better for a JVM veteran than talking about this years anniversary: Happy Birthday Java!
Thank you Marcus, for taking the time!
I am looking forward to a beer or two at JavaLand! Follow his rumblings about dynamic languages on (more...)
If you have a sorted collection of elements, how would you find index of specific value?
"Binary search" is likely to be your answer.
Algorithms theory is teaching us what binary search is most optimal algorithm for this task with log(N) complexity.
Well, hash table can do better, if you need to find key by exact match. In many cases, though, you have reasons to have your collection sorted, not hashed.
On my job, I'm (more...)