Questions tagged [tuxedo]

Tuxedo (Transactions for Unix, Extended for Distributed Operations) is a middleware platform used to manage transaction processing in distributed computing environments. Developed in the 1980s, as of 2008 it is a product of Oracle Corporation.

Tuxedo (Transactions for Unix, Extended for Distributed Operations) is a middleware platform used to manage transaction processing in Unix based distributed computing environments. It was developed at Bell Labs in Cherry Hill, NJ by a team lead by Marc Carges. TUXEDO started out life as a Bell Labs project call TUX (Transactions for UniX). TUX set out to do for Unix databases what IBM IMS (Information Management System) did for IBM Mainframe Databases, that being manage the resources required by a client application needing access to a database resource.

IMS introduced a third tier in the application stack, instead of the client directly accessing the database, IMS forced the mainframe application (Mostly COBOL applications) to access the database via a middle tier, IMS. The mainframe application would communicate with the IMS layer, and the IMS layer would communicate with the mainframe database. This allowed IMS to manage the database resource, and take steps to ensure the database resource was being utilized in the most efficient way possible.

For example, prior to the arrival of IMS in the mainframe world, a Cobol application that needed access to a mainframe database would open a private and dedicated connection to the mainframe database. If there were 200 instances of this COBOL application, the mainframe database would have to manage 200 connections. When IMS was introduced, the IMS middle tier would open ONE connection to the mainframe database, and multiplex that ONE connection to the 200 COBOL applications needing access, (session concentration).

This is one of the main features the TUX middleware brought to Unix database based applications, session concentration. It was originally deployed on the internal Bell Labs system that managed patents. The Bell Labs patent search application wasn't scaling, and the introduction of the TUX middleware to the search application was a great success, allowing it to remain performant as the number of concurrent users increased. Once proven on the patent search application, TUX was rolled out to AT&T's OSS (Operational Support System).

So TUX was established as a 'must have' feature internally at Bell Labs. Then TCP/IP got wired into Bell Labs Unix. When that happened, the TUX team set about to make TUX distributed, and TUXEDO was born (TUX Extended for Distributed Operations). TUXEDO kept to it's original goal, introduce a middle tier who's main goal is to make access to the database resources efficient), but now do so when the database resources are Distributed!

Distributed databases in the Unix world, at that time, implied the XA protocol, so TUXEDO had to incorporate the XA protocol, so it could manage database transactions that spanned multiples hosts/database engines. So for example, if you declare an autonomic update, and there are two separate databases involved, so long as they both supported the XA protocol, the automiticity could be enforced by TUXEDO. I.e. one table is Oracle on host A, one table is Sybase on host B, TUXEDO would enable an atomic update involving both databases.

Around the 1989 timeframe, several small development shops acquired the rights to the TUXEDO product from AT&T. They established boutique consulting operations focused on high transaction throughput applications on Unix. These boutique consultants would build very large scale transactional systems for their clients using TUXEDO middleware.

By 1996 there were approximately 11 TUXEDO boutique consultants. In 1996 BEA systems was born, with the goal of acquiring TUXEDO from AT&T and creating a middleware company. Alas AT&T would not agree to sell TUXEDO to BEA. So instead of acquiring the rights to TUXEDO, BEA instead bought all 11 TUXEDO boutique consultancies. All of a sudden, BEA owned all of the companies that were paying royalties to AT&T for TUXEDO! Soon a deal was reached, and BEA became the owner of TUXEDO.

BEA acquired the entire TUXEDO development team from Bell Labs (Marc Carges, etc.) and acquired the TUXEDO development talent from the 11 boutique consultancy practices, all of which had TUXEDO source and had modified TUXEDO for their own purposes. BEA then set out to unify all of the boutique modifications into a new production release. From early 1996 BEA made a business out of selling their TUXEDO product to customers who needed to build highly scalable Unix based systems.

In September 1998, BEA acquired Weblogic, a J2EE based Application Server. At this point in time J2EE and Java application servers were the hot item. BEA's sales increased substantially due to their acquisition of WebLogic. At first, BEA tried to blend the features of TUXEDO with J2EE in a product called 'WebLogic Enterprise' and later called 'M3'. These products failed, due mostly to the fact that they weren't Weblogic, but more generic J2EE containers.

Starting from 2000, BEA shifted to selling Weblogic, relegating TUXEDO sales to 'special case' status, i.e. if it absolutely won't scale in the Weblogic world, and you've exhausted all 'consulting resources', and it still won't scale with Weblogic, then sell TUXEDO.

In January 2008, Oracle acquired BEA. The WebLogic app server was morphed into the 'Oracle Weblogic Server' product moniker. TUXEDO is still a special case at Oracle. It is only considered when high concurrent user loads are paramount, or an application is distributed amongst several hosts/databases. TUXEDO is still used by Oracle to report TPC benchmark results. The highest TPC-C benchmark results from Oracle are reported when using TUXEDO.

40 questions
2
votes
3 answers

Cost saving alternatives to Oracle Tuxedo

What are cost saving alternatives to Oracle Tuxedo middleware platform to whom is possible to migrate existing code base?
Gatis Bergšpics
  • 441
  • 6
  • 14
2
votes
2 answers

Does Postgres provide an XA compliant resource manager?

I would like to know if it is possible to use Postgres as a database backend with transaction monitors like Oracle Tuxedo or Microfocus Enterprise server on Linux. This can be possible if postgres provides an XA compilant ressource manager... I…
y.chraibi
  • 66
  • 4
2
votes
3 answers

How to monitor Tuxedo via mib

Currently I am tring to write a program to monitor Tuxedo. from the official documents, I found MIB is suitable for writting program to monitor it. I have read a quite lot of document of here…
Junfeng
  • 93
  • 9
2
votes
0 answers

Going from CORBA WLE in C++ to Java

We are trying to ditch our WLE/Tuxedo/BEA/etc legacy licenses, and get Java instead. We have some old CORBA clients who are out of development, so we must be backward-compatible. if they are trying to connect using the TObj_Boostrap and/or the…
Josh Winkler
  • 166
  • 12
1
vote
0 answers

Need some help ORA-24550: signal received:

This is my first question.If I have missed to add any information. Please let me know. I am getting below error while executing a batch program. ORA-24550: signal received: [si_signo=4] [si_errno=0] [si_code=30]…
user11953765
  • 21
  • 1
  • 3
1
vote
1 answer

oracle Tuxedo cleint in java

I am trying to write one simple oracle Tuxedo client in Java , with Jolt Class Library. I got the sample code in BEA documentation. But I am not able to find out required jars anywhere. import bea.jolt.*; public static void main(String…
Biswajit
  • 323
  • 4
  • 15
1
vote
1 answer

Connect tuxedo Services in Spring boot

Is there any possibility to connect tuxedo Services in Spring boot application using Oracle JCA tuxedo resource adaptor?
Jay
  • 11
  • 3
1
vote
2 answers

How do i connect to Tuxedo using wsnaddr?

How do i connect to Tuxedo using wsnaddr?
anand
  • 1,375
  • 5
  • 14
  • 13
1
vote
1 answer

echo psc | tmadmin - How does it work as individual?

I am using the following command: echo psc | tmadmin Its output is like: seFreeSusp00 seFreeSusp00 julRSecur JUL 146 xyz 0 AVAIL seExpireUse+ seExpireUse+ julRSecur JUL 146 xyz 0 AVAIL I understand that it returns the…
Neeraj Lad
  • 59
  • 2
  • 10
1
vote
1 answer

What is the best way to extract big data to file?

I am using Oracle as a DBMS and Tuxedo for application server. Customer has the need to export data from Oracle to SAMFILE for interface purpose. Unfortunately, the total number of records size is huge (over 10 million) so I was wondering what is…
Ham Dong Kyun
  • 756
  • 4
  • 28
0
votes
1 answer

Segregating Tuxedo services per server (performance considerations)

Using Tuxedo 11.1 on Solaris.... Question is about performance/admin considerations when segregating services per server. We have a development gig that is looking to shave about 250 services down to 11 situations offered as 11 services. The idea…
Matthew Campbell
  • 1,864
  • 3
  • 24
  • 51
0
votes
0 answers

Transactions are getting stuck because of tperrno issues

After migrating the OS from RHEL-7.9 to RHEL-8 we are continuously receiving the below errors. A system exception has occurred : Commit transaction failed: tperrno = 1, error text = A system exception has…
USER
  • 11
  • 3
0
votes
1 answer

Narrowing conversion of 'int' value to 'short' is not allowed here

Recently I upgraded my SourcePro to 2021 Version and during RCB setup when it prompts me to select C++ dialect, I selected the only option available i.e. C++14. After the setup I started compiling Tuxedo code and currently facing the following…
Puneeth
  • 419
  • 1
  • 6
  • 18
0
votes
1 answer

Does Tuxedo XA transaction manager support ActiveMQ as resource manager for C++ applications?

I am looking for examples or resources to prove support for ActiveMQ as one of the resource managers with Tuxedo as the XA transaction manager. I am working on building a C++ Application to do the same. I am unable to find any documentation on…
N3Xg3N
  • 97
  • 1
  • 12
0
votes
0 answers

Effective user id, 0, must match the owner of QMCONFIG, 0

I've installed Tuxedo 12c 64 bits in a Windows Server 2012. But when I execute the command "qmadmin" the console raise the next error: ERROR: Effective user id, 0, must match the owner of QMCONFIG, 0. I use the same user that I used to install…
David Flores
  • 43
  • 2
  • 7
1
2 3