C compared to C++/Java; Was: Re: InnoDB Hot Backup + MySQL embedded?

2004-02-21 Thread Heikki Tuuri
Jochem,

- Original Message - 
From: Jochem van Dieten [EMAIL PROTECTED]
Newsgroups: mailing.database.myodbc
Sent: Saturday, February 21, 2004 2:10 AM
Subject: Re: InnoDB Hot Backup + MySQL embedded?


 Sasha Pachev wrote:
  Heikki Tuuri wrote:
  C versus object-oriented lanuguages like C++/Java is a topic I have
  discussed a lot with programmers. I believe that traditional procedural
  approaches and languages, like C, are the best for 'systems
programming', by
  which I mean implementing anything with complex data structures and
lots of
  parallelism. A DBMS is a typical example of such a complex program.

  3) A weakness of C compared to Java is memory management. In C you can
  easily write programs that leak memory or run over allocated buffers.
In
  practice, it has turned out to be relatively easy to keep these memory
  management bugs at a tolerable level in our C programs, so that a move
to a
  language with automatic memory management is not needed.
 
  In Java is it easy to write a program that wastes large amounts of
  memory, which is worse than a leak. In C, you are full from the start,
  and then you leak a drop at a time until you are empty. In Java , you
  are empty from the start, and you have nothing to leak anyway even if
  you could :-)

 http://citeseer.nj.nec.com/shah01java.html

here is a .pdf version of the paper:
http://gist.cs.berkeley.edu/~mashah/java-paper/paper.pdf

The authors used a 2 x Pentium III 667 MHz, Linux-2.2.16, Sun JDK 1.3, and
Java HotSpot Server JVM 1.3.0. to implement a 'data-flow' query processor.

Their conclusion is that the memory management and the garbage collection of
Java is inefficient. The graph that they present shows an up to 2.5-fold
performance degradation with the Java garbage collector, compared to their
own tailored memory management system.

I worked with Entity Systems Oy in the 1980s. We developed a Lisp
interpreter and a compiler, and a Prolog interpreter. At that time, the
inefficiency of the garbage collection in Lisp and Prolog was a serious
problem. I am not familiar with more modern garbage collection algorithms,
but the paper of Shah et al. suggests that there are still problems today.
In the 1980s, the research group of Mike Stonebraker initially started
implementing Postgres in a mixture of Lisp and C, but they later abandoned
Lisp.

 Jochem

Regards,

Heikki

 -- 
 I don't get it
 immigrants don't work
 and steal our jobs
  - Loesje


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: C compared to C++/Java; Was: Re: InnoDB Hot Backup + MySQL embedded?

2004-02-21 Thread Jochem van Dieten
Heikki Tuuri wrote:
From: Jochem van Dieten
Sasha Pachev wrote:
In Java is it easy to write a program that wastes large amounts of
memory, which is worse than a leak. In C, you are full from the start,
and then you leak a drop at a time until you are empty. In Java , you
are empty from the start, and you have nothing to leak anyway even if
you could :-)
http://citeseer.nj.nec.com/shah01java.html

Their conclusion is that the memory management and the garbage collection of
Java is inefficient. The graph that they present shows an up to 2.5-fold
performance degradation with the Java garbage collector, compared to their
own tailored memory management system.
Indeed. I think the article nicely illustrates Sasha's point 
regarding the efficiency of Java. But I just posted this link 
since since it is about a database system (of some sort) and I'm 
trying to stay on-topic ;-)

Jochem

--
I don't get it
immigrants don't work
and steal our jobs
- Loesje
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: InnoDB Hot Backup + MySQL embedded?

2004-02-20 Thread Sasha Pachev

C versus object-oriented lanuguages like C++/Java is a topic I have
discussed a lot with programmers. I believe that traditional procedural
approaches and languages, like C, are the best for 'systems programming', by
which I mean implementing anything with complex data structures and lots of
parallelism. A DBMS is a typical example of such a complex program. My
opinion is based on:
Amen!

1) The object-oriented paradigm recommends that algorithms are structured
around 'objects', that is, around data structures. But I think it is easier
for humans to understand complex algorithms, like the splitting of a node in
a B-tree, if the algorithms are presented on their own terms, and not
fragmented around the 'objects' involved. Donald Knuth of the Stanford
University remarked that proving the correctness of an 'object-oriented'
algorithm is hard, because keeping track of autonomous 'objects' is
difficult.
Amen!

3) A weakness of C compared to Java is memory management. In C you can
easily write programs that leak memory or run over allocated buffers. In
practice, it has turned out to be relatively easy to keep these memory
management bugs at a tolerable level in our C programs, so that a move to a
language with automatic memory management is not needed.
In Java is it easy to write a program that wastes large amounts of memory, which 
is worse than a leak. In C, you are full from the start, and then you leak a 
drop at a time until you are empty. In Java , you are empty from the start, and 
you have nothing to leak anyway even if you could :-)

--
Sasha Pachev
Create online surveys at http://www.surveyz.com/
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: InnoDB Hot Backup + MySQL embedded?

2004-02-20 Thread Jochem van Dieten
Sasha Pachev wrote:
Heikki Tuuri wrote:
C versus object-oriented lanuguages like C++/Java is a topic I have
discussed a lot with programmers. I believe that traditional procedural
approaches and languages, like C, are the best for 'systems programming', by
which I mean implementing anything with complex data structures and lots of
parallelism. A DBMS is a typical example of such a complex program.

3) A weakness of C compared to Java is memory management. In C you can
easily write programs that leak memory or run over allocated buffers. In
practice, it has turned out to be relatively easy to keep these memory
management bugs at a tolerable level in our C programs, so that a move to a
language with automatic memory management is not needed.
In Java is it easy to write a program that wastes large amounts of 
memory, which is worse than a leak. In C, you are full from the start, 
and then you leak a drop at a time until you are empty. In Java , you 
are empty from the start, and you have nothing to leak anyway even if 
you could :-)
http://citeseer.nj.nec.com/shah01java.html

Jochem

--
I don't get it
immigrants don't work
and steal our jobs
- Loesje
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: InnoDB Hot Backup + MySQL embedded?

2004-02-20 Thread Sasha Pachev
Jochem van Dieten wrote:
Sasha Pachev wrote:

Heikki Tuuri wrote:

C versus object-oriented lanuguages like C++/Java is a topic I have
discussed a lot with programmers. I believe that traditional procedural
approaches and languages, like C, are the best for 'systems 
programming', by
which I mean implementing anything with complex data structures and 
lots of
parallelism. A DBMS is a typical example of such a complex program.


3) A weakness of C compared to Java is memory management. In C you can
easily write programs that leak memory or run over allocated buffers. In
practice, it has turned out to be relatively easy to keep these memory
management bugs at a tolerable level in our C programs, so that a 
move to a
language with automatic memory management is not needed.


In Java is it easy to write a program that wastes large amounts of 
memory, which is worse than a leak. In C, you are full from the start, 
and then you leak a drop at a time until you are empty. In Java , you 
are empty from the start, and you have nothing to leak anyway even if 
you could :-)


http://citeseer.nj.nec.com/shah01java.html
That's nice, of course. But can you think of a one database server written in 
Java that comes anywhere close in performance and reliability to their C/C++ 
counterparts?

I suspect that a hard-core tough system software (in Heikki's sense) programmer, 
the kind of guy it would take to write high-performance and high reliability 
code, finds Java unappealing. Java's safety mechanisms are helpful when you do 
not quite know what you are doing. When you do, for every instance of help, you 
get ten instances of hindernance.

--
Sasha Pachev
Create online surveys at http://www.surveyz.com/
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: InnoDB Hot Backup + MySQL embedded?

2004-02-20 Thread Chris Nolan
Sasha Pachev wrote:


C versus object-oriented lanuguages like C++/Java is a topic I have
discussed a lot with programmers. I believe that traditional procedural
approaches and languages, like C, are the best for 'systems 
programming', by
which I mean implementing anything with complex data structures and 
lots of
parallelism. A DBMS is a typical example of such a complex program. My
opinion is based on:


Amen!
When you look at a DBMS, complex barely does justice to the code at 
hand from what I've read. You basically have to build your own OS 
(especially in the case of MySQL/InnoDB, considering it runs on UNIXes, 
Linuxes, BSDs, NetWare and Windows).


1) The object-oriented paradigm recommends that algorithms are 
structured
around 'objects', that is, around data structures. But I think it is 
easier
for humans to understand complex algorithms, like the splitting of a 
node in
a B-tree, if the algorithms are presented on their own terms, and not
fragmented around the 'objects' involved. Donald Knuth of the Stanford
University remarked that proving the correctness of an 'object-oriented'
algorithm is hard, because keeping track of autonomous 'objects' is
difficult.


Amen!
A lot of people at my university would say But an object is just like a 
struct! How hard can it be?? I bet you're really going to love writing 
the method BTreeNode::splitInSomeManner() that produces something that 
can be used for spliting on the downward traversal and 
BTreeNode:splitInSomeOtherManner that can be used on the upward traversal.


3) A weakness of C compared to Java is memory management. In C you can
easily write programs that leak memory or run over allocated buffers. In
practice, it has turned out to be relatively easy to keep these memory
management bugs at a tolerable level in our C programs, so that a 
move to a
language with automatic memory management is not needed.


In Java is it easy to write a program that wastes large amounts of 
memory, which is worse than a leak. In C, you are full from the start, 
and then you leak a drop at a time until you are empty. In Java , you 
are empty from the start, and you have nothing to leak anyway even if 
you could :-)
Additionally, I find it amusing when an exception chain in Java ends 
inside the Java VM.

Additionally, Java's too nice. When I stuff something up, I want to see 
something disheartening like Segmentation Fault not 
NullPointerException. How dare Java take away the spice of life which 
is the fun of debugging C code!



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: InnoDB Hot Backup + MySQL embedded?

2004-02-20 Thread Chris Nolan
Sasha Pachev wrote:

Jochem van Dieten wrote:

Sasha Pachev wrote:

Heikki Tuuri wrote:

C versus object-oriented lanuguages like C++/Java is a topic I have
discussed a lot with programmers. I believe that traditional 
procedural
approaches and languages, like C, are the best for 'systems 
programming', by
which I mean implementing anything with complex data structures and 
lots of
parallelism. A DBMS is a typical example of such a complex program.



3) A weakness of C compared to Java is memory management. In C you can
easily write programs that leak memory or run over allocated 
buffers. In
practice, it has turned out to be relatively easy to keep these memory
management bugs at a tolerable level in our C programs, so that a 
move to a
language with automatic memory management is not needed.


In Java is it easy to write a program that wastes large amounts of 
memory, which is worse than a leak. In C, you are full from the 
start, and then you leak a drop at a time until you are empty. In 
Java , you are empty from the start, and you have nothing to leak 
anyway even if you could :-)


http://citeseer.nj.nec.com/shah01java.html


That's nice, of course. But can you think of a one database server 
written in Java that comes anywhere close in performance and 
reliability to their C/C++ counterparts?

I suspect that a hard-core tough system software (in Heikki's sense) 
programmer, the kind of guy it would take to write high-performance 
and high reliability code, finds Java unappealing. Java's safety 
mechanisms are helpful when you do not quite know what you are doing. 
When you do, for every instance of help, you get ten instances of 
hindernance.

The problem is that C took off for, amongst other reasons, being just 
the right distance from the metal. It's close enough so you can write 
things that execute quickly yet has useful enough abstractions so that 
you can represent whatever data structures you need with a reasonable 
amount of effort.

Personally, I think Java's memory management advantages are terribly 
overrated. Some of the dodgy things you can do in C with malloc() allow 
you to very efficiently allocate ahead of time without initialising all 
that pre-allocated space ready for usage as whatever struct it is you're 
intrested in.

Additionally, Java's main strength is arguably the sheer number of 
libraries it comes with. Another great strength is the 
community-accessible documentation, but this can also be a problem as 
every single one of my friends at uni insists that to use any class that 
is provided with ther JDK, you must extend it. The old recommendation of 
favouring composition over inheritence seems to be lost on them.

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: InnoDB Hot Backup + MySQL embedded?

2004-02-19 Thread Heikki Tuuri
Chris,

- Alkuperäinen viesti - 
Lähettäjä: Chris Nolan [EMAIL PROTECTED]
Vastaanottaja: Heikki Tuuri [EMAIL PROTECTED]
Kopio: [EMAIL PROTECTED]
Lähetetty: Monday, February 16, 2004 1:56 PM
Aihe: Re: InnoDB Hot Backup + MySQL embedded?


 Heikki,

 Thank you greatly for answering my questions. Your obvious dedication to
 the open source world and high-quality of software cannot be
 understated.

thank you :).

 Upon reading some of the InnoDB source code, I've noticed that C seems
 to be your language of choice. That said, it seems more and more of the
 literature that is promoted around my university emphasises testing
 methods related to OO languages like Java and C++ or looking at
 different programming paradigms such as logical programming (my
 university formally trains all students in Prolog and optionally
 Mercury) and functional programming (Our very first CS subject involves
 Haskell programming! It used to involve Miranda). Is there anything in
 the way of strategies that you would recommend to developers (I'm
 working on a MySQL/InnoDB based server app at the moment. Anyone else
 who reads this message please hit me with your 2c) regarding  C
 programming and testing (they drill C into us with great rigor at the
 university I attend, but after second year it boils down to assignment
 submissions and that's about it)?

C versus object-oriented lanuguages like C++/Java is a topic I have
discussed a lot with programmers. I believe that traditional procedural
approaches and languages, like C, are the best for 'systems programming', by
which I mean implementing anything with complex data structures and lots of
parallelism. A DBMS is a typical example of such a complex program. My
opinion is based on:

1) The object-oriented paradigm recommends that algorithms are structured
around 'objects', that is, around data structures. But I think it is easier
for humans to understand complex algorithms, like the splitting of a node in
a B-tree, if the algorithms are presented on their own terms, and not
fragmented around the 'objects' involved. Donald Knuth of the Stanford
University remarked that proving the correctness of an 'object-oriented'
algorithm is hard, because keeping track of autonomous 'objects' is
difficult.

2) C++ encourages programmers to use 'implicit' operations. In C++ functions
can have the same name, even though they take a different number of
parameters, and the data type of the parameters can differ. There can be
implicit constructor and destructor operations for objects. I believe that
the use implicit operations is prone to bugs, and makes a program harder to
read.

3) A weakness of C compared to Java is memory management. In C you can
easily write programs that leak memory or run over allocated buffers. In
practice, it has turned out to be relatively easy to keep these memory
management bugs at a tolerable level in our C programs, so that a move to a
language with automatic memory management is not needed.

In all programming languages I think the following are important programming
conventions:

1) Remove redundancy from your code. Analogous to 'normalizing' your
relational database.
2) Use a lot of comments.
3) Use a lot of assertions, which capture bugs early on.

 The reason that I ask is that you have managed to create the world's
 fastest transactional database handler that runs on such a large number
 of different architectures and operating systems. Also, the fact that
 you've taken everything that Oracle tout as making them brilliant and
 doing it many times better than they have displays your commitment and
 incredible set of skills.

I must say that I have never before heard such praise in software world :).
Often it is just the opposite. The Usenet is full of threads saturated with
bashing and name-calling.

 I hope that one day that the software I am currently building will also
 contribute to both the commercial software world and the open source
 community. The fact that you've achieved this with such success and that
 you post to the MySQL mailing list so often is why I ask you these
 questions.

 Regards,

 Chris

Best regards

Heikki


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: InnoDB Hot Backup + MySQL embedded?

2004-02-16 Thread Chris Nolan
Heikki,

Thank you greatly for answering my questions. Your obvious dedication to
the open source world and high-quality of software cannot be
understated.

Upon reading some of the InnoDB source code, I've noticed that C seems
to be your language of choice. That said, it seems more and more of the
literature that is promoted around my university emphasises testing
methods related to OO languages like Java and C++ or looking at
different programming paradigms such as logical programming (my
university formally trains all students in Prolog and optionally
Mercury) and functional programming (Our very first CS subject involves
Haskell programming! It used to involve Miranda). Is there anything in
the way of strategies that you would recommend to developers (I'm
working on a MySQL/InnoDB based server app at the moment. Anyone else
who reads this message please hit me with your 2c) regarding  C
programming and testing (they drill C into us with great rigor at the
university I attend, but after second year it boils down to assignment
submissions and that's about it)? 

The reason that I ask is that you have managed to create the world's
fastest transactional database handler that runs on such a large number
of different architectures and operating systems. Also, the fact that
you've taken everything that Oracle tout as making them brilliant and
doing it many times better than they have displays your commitment and
incredible set of skills.

I hope that one day that the software I am currently building will also
contribute to both the commercial software world and the open source
community. The fact that you've achieved this with such success and that
you post to the MySQL mailing list so often is why I ask you these
questions.

Regards,

Chris
 
On Sat, 2004-02-14 at 08:13, Heikki Tuuri wrote:
 Chris,
 
 - Original Message - 
 From: Chris Nolan [EMAIL PROTECTED]
 To: Heikki Tuuri [EMAIL PROTECTED]
 Cc: [EMAIL PROTECTED]
 Sent: Thursday, February 12, 2004 2:26 PM
 Subject: Re: InnoDB Hot Backup + MySQL embedded?
 
 
  Dear Heikki,
 
  Thanks for the quick response! It never ceases to amaze me that such
  compartively small teams at Innobase Oy and MySQL AB produce such
  incredibly high-quality software.
 
 thank you for the praise :).
 
  Being a final-year Software Engineering student, I'm curious as to what
  you consider the most difficult problem to solve in building InnoDB and
  ibbackup has been.
 
 Of technical matters, multiversioning (consistent read) has been the most
 difficult to get working reliably. I wrote it probably around 1996, and
 still last year a bug was found in it. Adaptive hash indexes and the insert
 buffer have also been difficult to debug. The reason is obvious: in these 3
 things parallel execution of threads as well as background cleanup
 operations complicate things. One-threaded, deterministic processing is much
 easier to debug than multithreaded nondeterministic execution.
 
  Given the fact that you set your goals extremely high
  for InnoDB (and have acheived them quite handily),  I want to ensure
  that if anything remotely similar comes up in my final-year project that
  I either put my hand up for it and take on the challenge or run
  screaming in the other direction and have a somewhat easier year.
 
 In academic circles it is best not to put too much emphasis on programming
 work :). Referees tend to favor papers written in plain English, and want
 algorithms in pseudocode. They are not willing to dive into the full
 complexity of a real-world implementation. There has been quite a lot of
 debate and criticism around this gap between typical university research and
 practical applications, but things will probably not change in the next 2500
 years.
 
  Regards,
 
  Chris
 
 Best regards,
 
 Heikki
 
 
  Heikki Tuuri wrote:
 
  Chris,
  
  - Original Message - 
  From: Chris Nolan [EMAIL PROTECTED]
  Newsgroups: mailing.database.myodbc
  Sent: Thursday, February 12, 2004 2:45 AM
  Subject: InnoDB Hot Backup + MySQL embedded?
  
  
  
  
  Hi all,
  
  I'm looking at developing an (open source) server-style application with
  the embedded MySQL library to be employed as the primary data store.
  
  Has anyone attempted to use InnoDB Hot Backup for such a beast? I ask as
  I do not know whether communication between ibbackup and the database
  engine is required (thus requiring a few changes to the embedded lib
  before compilation). A quick scan through the docs involved doesn't seem
  to point me in the right direction for a definitive answer on this.
  
  
  
  ibbackup can be used with the MySQL Embedded Server Library, no problem
 in
  that. ibbackup does not communicate with the mysqld server at all. It
 just
  reads the InnoDB data and log files.
  
  On the other hand, the innobackup Perl script does start a mysql
 connection
  to the server.
  
  
  
  Regards,
  
  Chris
  
  
  
  Best regards,
  
  Heikki Tuuri
  Innobase Oy
  http

Re: InnoDB Hot Backup + MySQL embedded?

2004-02-13 Thread Heikki Tuuri
Chris,

- Original Message - 
From: Chris Nolan [EMAIL PROTECTED]
To: Heikki Tuuri [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Sent: Thursday, February 12, 2004 2:26 PM
Subject: Re: InnoDB Hot Backup + MySQL embedded?


 Dear Heikki,

 Thanks for the quick response! It never ceases to amaze me that such
 compartively small teams at Innobase Oy and MySQL AB produce such
 incredibly high-quality software.

thank you for the praise :).

 Being a final-year Software Engineering student, I'm curious as to what
 you consider the most difficult problem to solve in building InnoDB and
 ibbackup has been.

Of technical matters, multiversioning (consistent read) has been the most
difficult to get working reliably. I wrote it probably around 1996, and
still last year a bug was found in it. Adaptive hash indexes and the insert
buffer have also been difficult to debug. The reason is obvious: in these 3
things parallel execution of threads as well as background cleanup
operations complicate things. One-threaded, deterministic processing is much
easier to debug than multithreaded nondeterministic execution.

 Given the fact that you set your goals extremely high
 for InnoDB (and have acheived them quite handily),  I want to ensure
 that if anything remotely similar comes up in my final-year project that
 I either put my hand up for it and take on the challenge or run
 screaming in the other direction and have a somewhat easier year.

In academic circles it is best not to put too much emphasis on programming
work :). Referees tend to favor papers written in plain English, and want
algorithms in pseudocode. They are not willing to dive into the full
complexity of a real-world implementation. There has been quite a lot of
debate and criticism around this gap between typical university research and
practical applications, but things will probably not change in the next 2500
years.

 Regards,

 Chris

Best regards,

Heikki


 Heikki Tuuri wrote:

 Chris,
 
 - Original Message - 
 From: Chris Nolan [EMAIL PROTECTED]
 Newsgroups: mailing.database.myodbc
 Sent: Thursday, February 12, 2004 2:45 AM
 Subject: InnoDB Hot Backup + MySQL embedded?
 
 
 
 
 Hi all,
 
 I'm looking at developing an (open source) server-style application with
 the embedded MySQL library to be employed as the primary data store.
 
 Has anyone attempted to use InnoDB Hot Backup for such a beast? I ask as
 I do not know whether communication between ibbackup and the database
 engine is required (thus requiring a few changes to the embedded lib
 before compilation). A quick scan through the docs involved doesn't seem
 to point me in the right direction for a definitive answer on this.
 
 
 
 ibbackup can be used with the MySQL Embedded Server Library, no problem
in
 that. ibbackup does not communicate with the mysqld server at all. It
just
 reads the InnoDB data and log files.
 
 On the other hand, the innobackup Perl script does start a mysql
connection
 to the server.
 
 
 
 Regards,
 
 Chris
 
 
 
 Best regards,
 
 Heikki Tuuri
 Innobase Oy
 http://www.innodb.com
 Foreign keys, transactions, and row level locking for MySQL
 InnoDB Hot Backup - a hot backup tool for InnoDB which also backs up
MyISAM
 tables
 
 Order MySQL technical support from https://order.mysql.com/
 
 
 
 




-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: InnoDB Hot Backup + MySQL embedded?

2004-02-12 Thread Heikki Tuuri
Chris,

- Original Message - 
From: Chris Nolan [EMAIL PROTECTED]
Newsgroups: mailing.database.myodbc
Sent: Thursday, February 12, 2004 2:45 AM
Subject: InnoDB Hot Backup + MySQL embedded?


 Hi all,

 I'm looking at developing an (open source) server-style application with
 the embedded MySQL library to be employed as the primary data store.

 Has anyone attempted to use InnoDB Hot Backup for such a beast? I ask as
 I do not know whether communication between ibbackup and the database
 engine is required (thus requiring a few changes to the embedded lib
 before compilation). A quick scan through the docs involved doesn't seem
 to point me in the right direction for a definitive answer on this.

ibbackup can be used with the MySQL Embedded Server Library, no problem in
that. ibbackup does not communicate with the mysqld server at all. It just
reads the InnoDB data and log files.

On the other hand, the innobackup Perl script does start a mysql connection
to the server.

 Regards,

 Chris

Best regards,

Heikki Tuuri
Innobase Oy
http://www.innodb.com
Foreign keys, transactions, and row level locking for MySQL
InnoDB Hot Backup - a hot backup tool for InnoDB which also backs up MyISAM
tables

Order MySQL technical support from https://order.mysql.com/


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: InnoDB Hot Backup + MySQL embedded?

2004-02-12 Thread Chris Nolan
Dear Heikki,

Thanks for the quick response! It never ceases to amaze me that such 
compartively small teams at Innobase Oy and MySQL AB produce such 
incredibly high-quality software.

Being a final-year Software Engineering student, I'm curious as to what 
you consider the most difficult problem to solve in building InnoDB and 
ibbackup has been. Given the fact that you set your goals extremely high 
for InnoDB (and have acheived them quite handily),  I want to ensure 
that if anything remotely similar comes up in my final-year project that 
I either put my hand up for it and take on the challenge or run 
screaming in the other direction and have a somewhat easier year.

Regards,

Chris

Heikki Tuuri wrote:

Chris,

- Original Message - 
From: Chris Nolan [EMAIL PROTECTED]
Newsgroups: mailing.database.myodbc
Sent: Thursday, February 12, 2004 2:45 AM
Subject: InnoDB Hot Backup + MySQL embedded?

 

Hi all,

I'm looking at developing an (open source) server-style application with
the embedded MySQL library to be employed as the primary data store.
Has anyone attempted to use InnoDB Hot Backup for such a beast? I ask as
I do not know whether communication between ibbackup and the database
engine is required (thus requiring a few changes to the embedded lib
before compilation). A quick scan through the docs involved doesn't seem
to point me in the right direction for a definitive answer on this.
   

ibbackup can be used with the MySQL Embedded Server Library, no problem in
that. ibbackup does not communicate with the mysqld server at all. It just
reads the InnoDB data and log files.
On the other hand, the innobackup Perl script does start a mysql connection
to the server.
 

Regards,

Chris
   

Best regards,

Heikki Tuuri
Innobase Oy
http://www.innodb.com
Foreign keys, transactions, and row level locking for MySQL
InnoDB Hot Backup - a hot backup tool for InnoDB which also backs up MyISAM
tables
Order MySQL technical support from https://order.mysql.com/

 



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]