?

Log in

oracle memory usage; MogileFS database independence - brad's life [entries|archive|friends|userinfo]
Brad Fitzpatrick

[ website | bradfitz.com ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

oracle memory usage; MogileFS database independence [Jan. 6th, 2007|05:09 pm]
Brad Fitzpatrick
[Tags|, , ]

# apt-get install oracle-xe-client oracle-xe-universal
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  bc
The following NEW packages will be installed:
  bc oracle-xe-client oracle-xe-universal
0 upgraded, 3 newly installed, 0 to remove and 61 not upgraded.
Need to get 288MB of archives.
After unpacking 522MB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://mirrors.kernel.org sarge/main bc 1.06-15 [64.8kB]
Get:2 http://oss.oracle.com unstable/non-free oracle-xe-client 10.2.0.1-1.2 [25.9MB]
Get:3 http://oss.oracle.com unstable/non-free oracle-xe-universal 10.2.0.1-1.1 [262MB]
Fetched 288MB in 5m20s (901kB/s)
Selecting previously deselected package bc.
(Reading database ... 38093 files and directories currently installed.)
Unpacking bc (from .../archives/bc_1.06-15_i386.deb) ...
Selecting previously deselected package oracle-xe-client.
Unpacking oracle-xe-client (from .../oracle-xe-client_10.2.0.1-1.2_i386.deb) ...
This system does not meet the minimum requirements for swap space.  Based on
the amount of physical memory available on the system, Oracle Client 10g
Express Edition requires 504 MB of swap space. This system has 0 MB
of swap space.  Configure more swap space on the system and retry the installation.
dpkg: error processing /var/cache/apt/archives/oracle-xe-client_10.2.0.1-1.2_i386.deb (--unpack):
 subprocess pre-installation script returned error exit status 1
Selecting previously deselected package oracle-xe-universal.
Unpacking oracle-xe-universal (from .../oracle-xe-universal_10.2.0.1-1.1_i386.deb) ...
This system does not meet the minimum requirements for swap space.  Based on
the amount of physical memory available on the system, Oracle Database 10g
Express Edition requires 1008 MB of swap space. This system has 0 MB
of swap space.  Configure more swap space on the system and retry the installation.
dpkg: error processing /var/cache/apt/archives/oracle-xe-universal_10.2.0.1-1.1_i386.deb (--unpack):
 subprocess pre-installation script returned error exit status 1
Errors were encountered while processing:
 /var/cache/apt/archives/oracle-xe-client_10.2.0.1-1.2_i386.deb
 /var/cache/apt/archives/oracle-xe-universal_10.2.0.1-1.1_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

# free
             total       used       free     shared    buffers     cached
Mem:        516100     504044      12056          0          0     289268
-/+ buffers/cache:     214776     301324
Swap:            0          0          0

504 MB of swap for a client library? Wow.

In case anybody is curious wtf I'm installing Oracle, it's because I've spent a lot of time the past few weeks making MogileFS database-independent, moving all the SQL/DB work into a MogileFS::Store::* tree of classes, where portable SQL is at the top in MogileFS::Store, and database-specific stuff is in, say, MogileFS::Store::MySQL... then there's a singleton store instantiated based on your config for whatever database type you're using.

So now I'm writing more regression tests for it all, specifically beating up on the Store interface to make sure people implementing the interface implement it correctly, but I want more than one database so I can make MogileFS::Store::Multiplex, testing multiple stores in parallel, and comparing the results, failing if they differ.

Eh... I suppose I could write MogileFS::Store::SQLite a bit easier than installing Oracle. ;-)

I asked on the mailing list as well, but let me know if you want to help on this, making MogileFS work on Postgres or Oracle, or your database of choice. It's easy to get involved... the test suite runs on a single machine.
LinkReply

Comments:
[User Picture]From: oohahh
2007-01-07 02:38 am (UTC)
Another option is EnterpriseDB, the Postgres fork that claims to be a drop-in replacement for Oracle. If it's lighter-weight, it may be preferable for testing.
(Reply) (Thread)
[User Picture]From: brad
2007-01-07 02:40 am (UTC)
Ah, thanks!
(Reply) (Parent) (Thread)
[User Picture]From: davidphillips
2007-01-08 03:51 pm (UTC)
Their claim is highly exagerated. They made a few changes to PostgreSQL to make certain applications work. It is completely unsuitable for testing against Oracle.
(Reply) (Parent) (Thread)
[User Picture]From: taral
2007-01-07 08:54 pm (UTC)
Some moron put "required memory = 1GB" in there.
(Reply) (Thread)
[User Picture]From: foobarbazbax
2007-01-08 01:49 am (UTC)
I had the same annoying problem when installing that package on my laptop. IIRC, I increased my swap size like it wanted.

Remember, this is the brand new "Express Edition" (XE), which has only been available for a few months. Before that was released getting an Oracle client (and, thus, DBD::Oracle perl module) to install under debian was so difficult I gave up having a development environment on my laptop.
(Reply) (Thread)
[User Picture]From: vadda
2007-01-08 09:22 pm (UTC)
Looks like Oracle is trying to unpack an entire client software tree which includes much more than just client library (exp/imp utils, sqlloader, jdk, NLS support etc). I suppose you haven't tried GUI-based installation (never tried it myself on Linux), you might have more installation options to choose from than with silent install.
(Reply) (Thread)
[User Picture]From: bostonsteamer
2007-01-08 11:11 pm (UTC)
I had the same "sticker shock" when I installed XE a few months ago. This helped:

Installing Oracle Database XE on Debian, Ubuntu, and Kubuntu
(Reply) (Thread)