The title of this post come from a phrase I heard used by one of the AIX kernel developers when discussing techniques for debugging system crashes or bugs without having to ask the customer to reproduce a problem that occurred on a production. Even though it would be totally unacceptable to take a customers car and try to make the brakes fail “with a debug build”, developers often ask similar things of customers running software in production systems. At the time I heard this quote, I felt frustrated as a developer because there was not much that we could change in the software project I was building to avoid ever having to ask a customer to “re-crash the car”. The best thing that was offered up was coming up with some kind of unified set of error messages in the code base. A good idea, but far from actually solving the problem. At that time, the best system available was Windows crashdumps - but they only helped to find crashes, not with …
[Read more]I’ve never used Federated. I’m waiting for the JDBC version capabilities so I can connect to a non MySQL Server (specifically Oracle). In reading the docs, I see that the syntax includes a CONNECTION String.
CREATE TABLE federated_table (
id INT(20) NOT NULL AUTO_INCREMENT,
name VARCHAR(32) NOT NULL DEFAULT '',
other INT(20) NOT NULL DEFAULT '0',
PRIMARY KEY (id),
INDEX name (name),
INDEX other_key (other)
)
ENGINE=FEDERATED
DEFAULT CHARSET=latin1
CONNECTION='mysql://root@remote_host:9306/federated/test_table';
I’m surprised in the state of the syntax for two reasons.
- First, there are hardcoded variables in the string, this sort of breaks the rules of seperating syntax from authentication specifics …
We had the privilege of Brian Aker Director of Architecture for MySQL speaking at the Brisbane MySQL Users Group this week (28 th Jan 2006). After the initial discussions on various topics, Brian got into his discussion on MySQL 5.1. I was surprised that only 2 people (myself being one of them) had 5.1 installed and being used in any way.
Here were some of the highlights of the talk. Should have taken some more notes.
MySQL 5.1 Features
Partitioning Will include Range, Hash, List and Key handling and Subpartitioning. …
[Read more]Let’s review the problem. I’ve got this on a number of occasions and different libraries. Here are some typical error conditions.
./mysql-workbench-bin: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.5' not found (required by ./mysql-workbench-bin) Error: Missing Dependency: libstdc++.so.6(GLIBCXX_3.4.6) is needed by package glibmm24
Special thanks to my new Guru friend Alfredo who put me on the path.
$ su - $ cd /src/rpm $ wget ftp://rpmfind.net/linux/fedora/extras/4/SRPMS/libsigc++20-2.0.11-1.src.rpm $ rpmbuild --rebuild libsigc++20-2.0.11-1.src.rpm $ cd /usr/src/redhat/RPMS/i386/ $ rpm -Uvh libsigc++20*.rpm Preparing... ########################################### [100%] 1:libsigc++20 ########################################### [ 50%] 2:libsigc++20-devel ########################################### [100%]
Woot! It was that simple, download the rpm source, …
[Read more]The following is a little SQL challenge I have so far been unable to complte myself. Lets say I have a table with transactions for different products.
CREATE TABLE transactions (
product_id int(11) NOT NULL,
transaction_id int(11) NOT NULL,
price decimal(18,2) NOT NULL
);
The transaction_id's increase with time. In reality there is a transaction_date column, but I wanted to keep the DDL as portable as possible for this example. Here is some sample data.
INSERT INTO transactions VALUES (1, 1, '2.00');
INSERT INTO transactions VALUES (1, 2, '3.00');
INSERT INTO transactions VALUES (1, 4, '3.00');
INSERT INTO transactions VALUES (1, 5, '1.00');
INSERT INTO transactions VALUES (2, 6, '3.00');
INSERT INTO transactions VALUES (2, 7, '5.00');
INSERT INTO transactions VALUES (2, 8, '3.00');
INSERT INTO transactions VALUES (2, 9, '3.00');
Now a query to get the last price for each product could look like …
[Read more]Following my earlier post of MySQL Workbench 1.0.1 for Linux and logging a MySQL Bug, I’ve had the Bug verified, and the a further update of a compiler success. Details of compile from Bug #16880
Compiled with:
- glibmm-2.8.1
- gtk+-2.8.8
- libsigc++-2.0.11
I’ve got:
libsigc++-2.0.17
glib-2.6.6
glibmm-2.6.1
atk-1.9.0
pango-1.8.2
gtk+-2.6.9
gtkmm-2.6.5
lua-5.0.2
So starting with the obvious downgrading of libsigc++
$ su -
$ cd /src
$ wget
http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.0/libsigc++-2.0.11.tar.gz
$ tar xvfz libsigc++-2.0.11.tar.gz
$ cd libsigc++-2.0.11
$ ./configure …
Well this is low. I’ve just been spammed on my Wiki. And it was cunning, I just found it by accident. An enterprising hacker embedded into my Home Page hidden links that were not visible via normal page view, but ultimately would be via a search bot or some other means.
Even better the pricks even deleted content on one page. Here is an example diff of pages. I even posted a few days ago What makes your blood boil? and that was just an article on a news site with misleading dated information. I could see the opportunity for more blood boiling articles, but it doesn’t solve the problem. The problem is, I don’t know how to solve the problem.
So what can you do other then clean up this hacker …
[Read more]I’m sure you are all aware by now of Mike Hillyer’s MySQL Sakila Sample Database that will be launched at the MySQL Conference. We now have an official MySQL Forum for this as well.
As part of leveraging this existing database, and using this for the basis of my MySQL Conference presentation on MySQL for Oracle Developers, I’ve released the first version of my MySQL Sakila Sample Application at http://sakila.arabx.com.au which I would very much like some feedback on. Please use the official …
[Read more]Just released at the MySQL Forums yesterday an updated source version of MySQL Workbench for Linux available at ftp://ftp.mysql.com/pub/mysql/download/mysql-workbench-1.0.1.tar.gz.
So can Version 1.0.1 compile when I had no success with compiling 1.0.0?
$ su -
$ cd /src
$ wget
ftp://ftp.mysql.com/pub/mysql/download/mysql-workbench-1.0.1.tar.gz
$ tar xvfz mysql-workbench-1.0.1.tar.gz
$ cd mysql-workbench-1.0.1
$ cd mysql-gui-common
$ ./configure --enable-grt --enable-canvas
$ make
MySQLGRT/MGRTValueTree.cc:255: instantiated from here
/usr/include/sigc++-2.0/sigc++/adaptors/bound_argument.h:158:
error: 'const …
As requested by Frank, here are the working parts of my earlier Downgrading a MySQL schema from 5 to 4 article.
The Problem
To recap, I received a MySQL Version 5.0 schema via a sql file, however I was unable to upgrade from MySQL 4.0 to MySQL 5.0 on my old RedHat 7.3 production server. As an interim solution, I still wanted the schema and data to allow for initial development (without the 5 specific features including Views,Triggers and Procedures/Functions). However the MySQL 5.0 SQL file would not run in MySQL 4.0.
Sample
Here is a small subset of the MySQL Sakila Sample Database schema to demonstrate the problem.
DROP SCHEMA IF EXISTS sakila; CREATE …[Read more]