Handle HTTP PATCH request with Java Servlet

The Java Servlet specification does not include handling a PATCH request. That means that class  javax.servlet.http.HttpServlet does not have a doPatch() method, unlike doGet, doPost, doPut etc.

That does not mean that a Java Servlet can not handle PATCH requests. It is quite simple to make it do that.

The trick is overriding the service(request,response) method – and have it respond to PATCH requests (in a special way) and to all other (more...)

A few new MongoDB performance blogs

Most of my recent blogging has been done on the dbKoda website where I've been writing mostly about MongoDB performance tuning.   If you are interested, here are links to a few of the more interesting posts:

 

 

 

List of “Dashboard” Startups and Products

The idea of building a dashboard application has become synonymous to the idea of a developer thinking let us build a "To-do" application.

This is evident by the sheer amount of dashboard related applications that developers/founders have submitted to Hacker News over the past several years.

The dashboards range from wide spectrum, on one side to personal dashboards, project management dashboards, network dashboards to full blown social media dashboards.

If you are looking to build (more...)

asmcmd “connected to an idle instance” – not

This is more a note to myself in case I’ll encounter a similar environment. But maybe it helps others – at least my search results weren’t suitable to Windows in the first place. Issue C:\> set ORACLE_HOME=C:\path\to\grid\home C:\> set ORACLE_SID=+ASM1 C:\> asmcmd connected to an idle instance. Environment Windows 2012R2 Oracle Grid Infrastructure 12.1.0.1 2 […]

oratop with TFA 12.2.1.3.0

We are facing an issue where Oracles Trace File Analyzer creates high load on some servers.
During the discussion with Oracle Support I installed the latest version of TFA which is 12.2.1.3.0 right now.
With this version, oratop - which oracle calls
oratop is a utility similar to the unix OS utility top which gives a overview of database performance and can be used in combination with top to get a (more...)

LEAP#356 PX088A Für Elise Music Chip

Another potted music chip! Figuring them out is half the fun;-)

The PX088A is a simple, nondescript single-tune chip. Found out it plays the main theme from Beethoven’s Für Elise. The recommended configuration turned out to be a battery killer, but I was able to get it working with a few adjustments.

As always, all notes, schematics and code are in the Little Electronics & Arduino Projects repo on GitHub

hero_image

FREE, Trial access to Oracle Licensing training portal​


Here's your final chance for 2017 to get access to the FREE, TRIAL training module on ORACLE LICENSING. My friend Sibaji Dey Choudhury has created this unique, comprehensive training portal on Oracle License Management, with an objective towards understanding Oracle's complex licensing rules, optimizing costs and avoiding non-compliance.

So, how do you get the Free, Trial access?

Step 1: Sign up on www.LicensingCircle.com (takes 1 minute)
Step 2: Request Free, trial access on (more...)

Using sed to backup file and remove lines

[oracle@racnode-dc1-2 ~]$ cd /u01/app/oracle/12.1.0.2/db1/rdbms/log/

--- DDL will fail since datafile is hard coded!
[oracle@racnode-dc1-2 log]$ cat tablespaces_ddl.sql
-- CONNECT SYS
ALTER SESSION SET EVENTS '10150 TRACE NAME CONTEXT FOREVER, LEVEL 1';
ALTER SESSION SET EVENTS '10904 TRACE NAME CONTEXT FOREVER, LEVEL 1';
ALTER SESSION SET EVENTS '25475 TRACE NAME CONTEXT FOREVER, LEVEL 1';
ALTER SESSION SET EVENTS '10407 TRACE NAME CONTEXT FOREVER, LEVEL 1';
ALTER SESSION SET EVENTS '10851 TRACE NAME  (more...)

12.2 Datapump Improvements

Datafile for tablespace USERS was resize to 5242880.

12.2.0.1.0
5242880 size is part of create tablespace.

CREATE TABLESPACE "USERS" DATAFILE
  SIZE 5242880
  AUTOEXTEND ON NEXT 1310720 MAXSIZE 32767M,
  SIZE 5242880
  LOGGING ONLINE PERMANENT BLOCKSIZE 8192
  EXTENT MANAGEMENT LOCAL AUTOALLOCATE DEFAULT
 NOCOMPRESS  SEGMENT SPACE MANAGEMENT AUTO;

12.1.0.2.0
5242880 size is part of alter tablespace.

Why is this important?
Manual intervention is no longer required to have correct datafiles (more...)

Google dashboard for lazy businessman

Once you start your own business or startup, the very first thing that comes to mind is "How many visitors did my website receive?"

Google Analytics provides tons of metrics and it becomes quite a chore to keep up with all the dashboard pages and filter options. As a small biz owner myself, I went through a phase where I ended up spending significant amount of time checking out Google Analytics

To save time and (more...)

Docker-CE: Setting up a tomcat in less than a minute and running your JSP…

Last time i wrote about processes and files of a docker container hosting the docker example myapp.py.
Next step was to run a tomcat with a small application inside.

This can be done with theses commands:
  1. Get tomcat from the docker library:
    # docker pull tomcat
    Using default tag: latest
    latest: Pulling from library/tomcat
    3e17c6eae66c: Pull complete
    fdfb54153de7: Pull complete
    a4ca6e73242a: Pull complete
    5161d2a139e2: Pull complete
    7659b327f9ec: Pull complete
    ce47e69f11ad: Pull complete
    7d946df3a3d8: Pull (more...)

Order of Predicate Execution #2

In the previous post I talked about the order of predicate execution based on the predicate position and inline view. As promised, in this post I’ll add statistics and see what happens. Creating extended statistics In this demo I’m using functions, so Oracle doesn’t really know what the output of the function is. That’s why … Continue reading Order of Predicate Execution #2

Both talks accepted for Collaborate 18

IOUG accepted both my Toastmasters and Python talks for Collaborate 18. RMOUG also accepted them both so I will be doing these two talks in both February and April. I am a little surprised because I have had talks rejected by IOUG in the past. There are a lot of great speakers competing for speaking slots. This is my first time for RMOUG so I did not know how hard it would be to get (more...)

Move Proxmox Container to Different Storage (Updated for LXC)

The Proxmox Web GUI does not give us the ability to migrate a container from one storage device to another directly. To move a container onto different storage we have to take a backup of the container and restore it to the same ID with a different storage device specified. This can be time laborious when working

Oracle Traffic Director 12.2.1.3.0 in Docker

As I am currently working a lot with Docker and I already managed to place Oracle Forms & Reports into Docker, my next goal was to use the Oracle Traffic Director as well in Docker.

Based on my blog post "How to install and configure Oracle Traffic Director 12c - fully unattended" http://dirknachbar.blogspot.ch/2017/09/how-to-install-and-configure-oracle.html, I have converted and aligned my scripts to be used in a Docker Image.

The Oracle Traffic Director (more...)

ORA-14452: attempt to create, alter or drop an index on temporary table already in use

I wanted to begin all my GoldenGate configurations as new setup. So I have disabled ddl support and removed marker. Then I have dropped all GG schema tables but one table named GGS_STICK is returned error “ERROR at line 1:
ORA-14452: attempt to create, alter or drop an index on temporary table already in use

SQL> drop user gg cascade;
drop user gg cascade
*
ERROR at line 1:
ORA-00604: error occurred at  (more...)

How does IT work at bol.com?

How does IT work at bol.com?

Check part 1 of the video we created on How IT works at bol.com.

deltalounge

ORA-01450: maximum key length (3800) exceeded

This is an oddity as essentially I have an index on a table but I cannot rebuild it because it suggests the block size should be bigger than 8K – however both the database and tablespace block size are 16K already.

The maximum allowed index key length depends on your block size. So the minimum allowed size reported in ORA-01450 varies, depending on which block size your index is using:

ORA-01450 maximum key length (758) (more...)

Little things worth knowing: redo transport in Data Guard 12.2 part 1

I have researched Data Guard redo transport quite a bit, but so far haven’t really blogged about some of the details that I have worked out. This is what I am trying to do in this post.

In order to have a somewhat meaningful setup, I created a Data Guard configuration with 1 primary and 2 standby databases. They all reside on my lab (virtual) machines:

  • CDB1 currently operates in primary mode on server1
  • CDB2 (more...)

“Collection iterator pickler fetch”: pipelined vs simple table functions

Alex R recently discovered interesting thing: in SQL pipelined functions work much faster than simple non-pipelined table functions, so if you already have simple non-pipelined table function and want to get its results in sql (select * from table(fff)), it’s much better to create another pipelined function which will get and return its results through PIPE ROW().

A bit more details:

Assume we need to return collection “RESULT” from PL/SQL function into SQL query “select (more...)