VirtualBox

Ticket #8773 (closed defect: fixed)

Opened 3 years ago

Last modified 3 years ago

4.0.4 and 4.0.6 IO Subsystem errors => Fixed in SVN

Reported by: wireless01 Owned by:
Priority: critical Component: other
Version: VirtualBox 4.0.6 Keywords:
Cc: Guest type: Solaris
Host type: Solaris

Description

There is a bug in IO subsystem of the 4.0.4 and 4.0.6 VBox, which is quite easy to reproduce. To reproduce it it is enough to copy the file into the guest OS (using, for example NFS as a medium, but You can try different media as well) and compute its checksum (using cksum utility). Such copy of the file generates quite different checksum, than original file. I have tested it on different Host/Guest OSes combination, so I think, that the bug is generic Here are examples : Host : Windows 7 64 bits, SP1 (guests : Oracle Linux 5.6, 64 bits, Solaris 10u9 64 bits) Host : Oracle Linux 5.6, 64 bits, (guests : Oracle Linux 5.6, 64 bits, Solaris 10u9 64 bits) Host : Solaris 10u9, 64 bits, (guests : Oracle Linux 5.6, 64 bits, Solaris 10u9 64 bits) The bug is able to reproduce on at least some larger files (around 1GB) Versions affected are (at least : 4.0.4 and 4.0.6) I have reproduced it with option "Used host IO cache" both - enabled, and disabled - results are the same. I am choosing "Solaris" as a host and guest, but - as I have written - the bug seems to be generic, as I have tested it on more Host/Guest combinations than this one. However - I haven't tested it on any 32-bit platform.

Attachments

VBox.log Download (73.9 KB) - added by robert.zapadka 3 years ago.
robert.zapadka virtualbox logs

Change History

comment:1 in reply to: ↑ description Changed 3 years ago by wireless01

Replying to wireless01: Just to add information : version 3.2.12, on Solaris 10u9, x86, 64 bits as a host and guest OS seems to be not affected by this bug. At the moment - I have tested the same files as in case of 4.0.4 and 4.0.6, and the computed checksums are the same, regardless of location of the files (local, or remote) regards Wireless 01

comment:2 Changed 3 years ago by robert.zapadka

I have problem with VirtualBox 3.2.12, 4.0.4, 4.0.6. My host system: Slackware Linux 13.1 64bit My guest system: Oracle Linux 5 64 bit

Problem: checksum of zip files of Oracle database 11g instalation is diffrent beetwen host and quest system. Ofcourse I enable/disable "Used host IO cache" results are the same. I have coped zip file via ssh, shared folder, ftp (binary mode).

comment:3 Changed 3 years ago by frank

Please attach a VBox.log file. When you copied the files using ssh, where is the source and where is the target? Was the target drive in the guest a shared folder? Do both files (source and target) have the same size?

comment:4 Changed 3 years ago by robert.zapadka

I will attach logs later (right now i'm on job).

Shared Folder:

  1. On Virtualbox 3.2.12, 4.0.4, 4.0.6, on host system Slackware linux 13.1 64 bit I created shared folder : software.
  2. On guest system Oracle linux 5 64 bit I mounted shared folder:
    sudo mount -t vboxsf software /home/oracle/database/install/zips
    
  3. next step was:
    cksum linux.x64_11gR2_database_1of2.zip - (1,239,269,270 bytes) (cksum - 3152418844)
    cksum linux.x64_11gR2_database_2of2.zip - (1,111,416,131 bytes) (cksum - 1669256104)

on oracle website cksum's are:
cksum linux.x64_11gR2_database_1of2.zip (1,239,269,270 bytes) (cksum - 3152418844)
cksum linux.x64_11gR2_database_2of2.zip (1,111,416,131 bytes) (cksum - 3669256139)

  1. on host system Slackware linux 13.1 cksums are:
    cksum linux.x64_11gR2_database_1of2.zip (1,239,269,270 bytes) (cksum - 3152418844)
    cksum linux.x64_11gR2_database_2of2.zip (1,111,416,131 bytes) (cksum - 3669256139)

So on host system Slackware and oracle website cksum and byets are the same, but on guest system cksum are different (bytes copied are the same).

comment:5 Changed 3 years ago by frank

Did you always copy the file to a mounted shared folder? Because in that case the problem is not I/O-related but related to the implementation of shared folders.

comment:6 Changed 3 years ago by robert.zapadka

  1. No. I always use shared folder and scp. Next time I will use scp command to copy zip files. After copy I will attach necessary logs (VBox.log).
  1. I downloaded zip file from quest system form oracle website and cksum are different, but bytes are correct.

comment:7 Changed 3 years ago by robert.zapadka

I mean:

  1. I downloaded zip file from guest system from oracle website and cksum are different, but bytes are correct.

comment:8 Changed 3 years ago by robert.zapadka

  1. I tried copy zip file into flash drive on host system
  2. After step 1 I copied zip files into guest system. Cksum are still different and byets are the same.

comment:9 Changed 3 years ago by frank

Yes, this looks indeed like this is (only) related to shared folders.

comment:10 Changed 3 years ago by frank

Moment, when you copied the file into the guest, did you copy it to a shared folder or to the guest hard disk?

comment:11 Changed 3 years ago by robert.zapadka

No. On host disk I have zip files. I mount host directory as shared folder and on guest system I copy zip files from shared folder into guest hard disk:  http://forums.virtualbox.org/viewtopic.php?t=15868

comment:12 Changed 3 years ago by frank

Ok, then it is shared folders.

comment:13 Changed 3 years ago by robert.zapadka

Do You have a workaround for this problem, any suggestion how copy zip files where cksum will be the same?
May by mount virtualbox vdi files of guest system on host system and copy zip files?

comment:14 Changed 3 years ago by frank

Until this problem is fixed you should just copy files not to shared folders into the guest but copy it through the network to a virtual hard disk into the guest.

comment:15 follow-up: ↓ 18 Changed 3 years ago by frank

Btw, I cannot reproduce your problem. What I did:

  1. start an Oracle Linux 5 / 64 bit
  2. install VBox 4.0.6 additions
  3. mount a host folder as shared folder into the VM
  4. copy a big file (2.3G) from the host to the guest with scp through the network
  5. compare the md5sum between the file on the host and the file on the guest shared folder -- they are identical

comment:16 Changed 3 years ago by robert.zapadka

  1. OK. If scp working fine I will check this solution.
  2. Could you check this:

a) copy two files (2.3G) with scp from host to guest
b) check md5sum for this two files?

comment:17 Changed 3 years ago by wireless01

Hello, When I am using scp, then both cksums are OK as well. The problem appear, when I copy the file using NFS, for example. Additionally - even when I have the files copied by SCP, and both cksums (original and copy) are the same, I get errors in Oracle Universal Installer (Invalid entry size, etc... ), which points to read errors. This is why I assume, that the problem is with READS from the guest filesystems regards Wireless01

Changed 3 years ago by robert.zapadka

robert.zapadka virtualbox logs

comment:18 in reply to: ↑ 15 ; follow-up: ↓ 19 Changed 3 years ago by robert.zapadka

Replying to frank:

Btw, I cannot reproduce your problem. What I did:

  1. start an Oracle Linux 5 / 64 bit
  2. install VBox 4.0.6 additions
  3. mount a host folder as shared folder into the VM
  4. copy a big file (2.3G) from the host to the guest with scp through the network
  5. compare the md5sum between the file on the host and the file on the guest shared folder -- they are identical

I copied zip files form the host system to the guest system. cksum on the host system and the guest system are different, not the same. I attached my virtualbox's log. Wireless01 said that in virtualbox exists very strange defect with I/O. I'm pretty sure that defect(bug) is in virtualbox. When new version of Virtualbox with fixup this defect will be released?

comment:19 in reply to: ↑ 18 Changed 3 years ago by robert.zapadka

Replying to robert.zapadka:

Replying to frank:

Btw, I cannot reproduce your problem. What I did:

  1. start an Oracle Linux 5 / 64 bit
  2. install VBox 4.0.6 additions
  3. mount a host folder as shared folder into the VM
  4. copy a big file (2.3G) from the host to the guest with scp through the network
  5. compare the md5sum between the file on the host and the file on the guest shared folder -- they are identical

I copied zip files form the host system to the guest system. cksum on the host system and the guest system are different, not the same. I attached my virtualbox's log. Wireless01 said that in virtualbox exists very strange defect with I/O. I'm pretty sure that defect(bug) is in virtualbox. When new version of Virtualbox with fixup this defect will be released?

Ofcourse I did with scp.

comment:20 Changed 3 years ago by frank

Your comments confuse me.

  1. Can you clearly say to which file system in the guest you copy the file with scp? Is that file system a shared folder or a virtual hard disk?
  2. Do you use scp inside the guest to copy the file from the host (i.e. scp foo@<host IP>:bar .) or do you use scp on the host to copy the file into the guest (i.e. scp bar buzz@<gust IP>:)? Can you post the command line you used for copying?
  3. Can you post the output of df -hT in the guest and on the host?

There are no file corruption problems known with the current VBox release so it must be something else.

comment:21 Changed 3 years ago by robert.zapadka

1.I don't know how explain. Next time I prepare screen and I will attach. You will see what I did.

  1. In log everything is OK ?

comment:22 Changed 3 years ago by frank

Yes, the VBox.log file looks good.

Btw (this is totally unrelated to your problem), you should add divider=10 to the guest kernel parameters (do it in GRUB). This will make the guest behave a bit nicer to the VM (this will reduce the CPU load a bit by reducing the guest timer from 1000Hz to 100Hz). Again, this NOT related to your problem.

comment:23 Changed 3 years ago by wireless01

Hello, To clarify the issue (at least in my case) :

  1. When I was using SCP to copy the files FROM NFS server (external to the host and guest OSes - used connection was THE REAL ethernet) to the GUEST OS, then both checksums were OK
  2. When I was using ordinary cp command to copy from the same NFS server to the same GUEST os (cp was executed inside of GUEST OS), then checksums were different
  3. In BOTH cases the files I have copied were installation files of Oracle RDBMS 11.2.0.1
  4. In BOTH cases, although in case (2) the checksums were different, I have unzipped the files succesfully
  5. In BOTH cases, during installation, Oracle Unversal Installer was raising exceptions which informs about read errors (Invalid Entry Size)
  6. The same files, when used to install the Oracle RDBMS 11.2.0.1 on "native" OS (without VirtualBox), or on guest OS (when used VMWare) were not causing any problems
  7. Unfortunately - I cannot send my VBox logs from 4.0.4 and 4.0.6 at the moment, as in the meantime I have downgraded the VBox to 3.12, which is not causing such problems.
  8. When I was testing the VBox in the following combination : ANY HOST OS ---> Linux 64 bits GUEST OS I was adding the divider option to the grub.conf file of the GUEST OS, which seems to be unrelated to this issue at all

regards
Wireless01

comment:24 Changed 3 years ago by frank

Your guest uses a host network interface, so you guest can only directly communicate with the host, correct?

comment:25 Changed 3 years ago by wireless01

Exactly - I have GUEST NIC configured as a "bridged" regards Wireless01

comment:26 follow-up: ↓ 28 Changed 3 years ago by frank

We found and fixed a bug which could be related to your problem. Could you install  this test build to check if it fixes your problem?

comment:27 Changed 3 years ago by frank

And  here is a Solaris build for the original reporter.

comment:28 in reply to: ↑ 26 Changed 3 years ago by robert.zapadka

Replying to frank:

We found and fixed a bug which could be related to your problem. Could you install  this test build to check if it fixes your problem?

After applay path I checked cksum:

Host system: Slackware Linux 13.1 64 bit Guest system: Oracle Linux 5 64 bit

Cksum in host and guest system are the same. This fix correct this vbox defect. great success.Congratulations To You.

Next time I will install oracle database and I will check I/O problem.

Thanks Again.

comment:29 Changed 3 years ago by wireless01

I can confirm : cksums are OK. At the moment I have tested the following combinations host/guest : Solaris10u9/Oracle Linux 5.6 (both - 64 bit) I will try to install Oracle RAC - Universal Installer previously was almost always returning IO errors during clusterware installation

regards Wireless01

comment:30 Changed 3 years ago by wireless01

Hello, At the moment I have succesfully installed Oracle 11.1.0.6 RAC on following configuration : Solaris x86 64 as a host Oracle Linux 5u6 x86 64 as a guest. Virtual Box version : 4.0.7 - deliviered in this ticket. Thanks Wireless01

comment:31 Changed 3 years ago by robert.zapadka

At the moment I have succesfully installed Oracle DB and Siebel CRM on delivered fix.
Host: Slackware linux 13.1 64 bit Guest: Oracle Linux 5 64bit For me this fix is working. Thanks again.

comment:32 Changed 3 years ago by frank

  • Summary changed from 4.0.4 and 4.0.6 IO Subsystem errors to 4.0.4 and 4.0.6 IO Subsystem errors => Fixed in SVN

Thanks for the feedback!

comment:33 Changed 3 years ago by jokerous

I had experience the same problem on following configuration: Windows 7 SP1 64bit as a host and Solaris x86 64 as a guest. Could I have the test build for Windows 7 SP1 64bit?

comment:34 Changed 3 years ago by frank

 Here is a Windows test build.

comment:35 Changed 3 years ago by wireless01

Hello, It seems that the problem is definitely solved. I have just finished installation of RAC 11.2 on the following configuration : Windows 2008R2 as a host Solaris 10u9 as a guest without any issues. As W2008 has significantly slower IO subsystem than Solaris, and additionally - 11.2 RAC consumes significantly more IO throughput than previous versions, then this test shows that everything is OK more than my previous one. Once again : Thank You for quick action :) regards Wireless

comment:36 Changed 3 years ago by frank

  • Status changed from new to closed
  • Resolution set to fixed

Thank you all for the feedback! The fix is contained in VBox 4.0.8.

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use